Changeset 1078

Show
Ignore:
Timestamp:
10/03/08 12:43:55 (3 months ago)
Author:
mwhitworth
Message:

Build the misc or Special devices as part of the kernel.

Location:
Whitix/branches/keobject/devices
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • Whitix/branches/keobject/devices/Makefile

    r1032 r1078  
    1010modules_install: 
    1111        $(MAKE) -C input modules_install 
    12         $(MAKE) -C misc modules_install 
    1312        $(MAKE) -C net modules_install 
    1413        $(MAKE) -C pci modules_install 
  • Whitix/branches/keobject/devices/misc/Makefile

    r729 r1078  
    11DEPTH=../../ 
    2 MODULES = misc.sys 
     2OBJS = misc.o 
    33 
    4 build: $(MODULES) 
    5  
    6 modules_install: 
    7         cp misc.sys ../../CdRoot/System/Modules/Core 
     4build: $(OBJS) 
    85 
    96include $(DEPTH)make.inc 
  • Whitix/branches/keobject/devices/misc/misc.c

    r956 r1078  
    2323#include <i386/i386.h> 
    2424#include <i386/virtual.h> 
     25#include <keobject.h> 
     26#include <devices/class.h> 
    2527 
    2628#define MISC_MAJOR 2 
     
    4547static int MemMemoryMap(struct VNode* vNode, DWORD address, DWORD offset) 
    4648{ 
    47 //      printf("Mapping %#X to %#X\n", address, offset); 
    4849        VirtMemMapPage(address, offset, PAGE_USER | PAGE_RW | PAGE_PRESENT); 
    4950        return 0; 
     
    6364}; 
    6465 
     66struct DevClass specialClass; 
     67static struct KeDevice nullDev, zeroDev, memDev; 
     68 
    6569int MiscInit() 
    6670{ 
    67 #if 0 
    68         DevAddDevice("Special/Null",MISC_MAJOR,0,DEVICE_CHAR,&nullOps); 
    69         DevAddDevice("Special/Zero",MISC_MAJOR,1,DEVICE_CHAR,&zeroOps); 
    70         DevAddDevice("Special/Memory",MISC_MAJOR,2,DEVICE_CHAR,&memOps); 
    71 #endif 
     71        DevClassCreate(&specialClass, NULL, "Special"); 
     72         
     73        KeDeviceCreate(&nullDev, &specialClass.set, DEV_ID_MAKE(MISC_MAJOR, 0), &nullOps, 
     74                DEVICE_CHAR, "Null"); 
     75        KeDeviceCreate(&zeroDev, &specialClass.set, DEV_ID_MAKE(MISC_MAJOR, 1), &zeroOps, 
     76                DEVICE_CHAR, "Zero"); 
     77        KeDeviceCreate(&memDev, &specialClass.set, DEV_ID_MAKE(MISC_MAJOR, 2), &memOps, 
     78                DEVICE_CHAR, "Memory"); 
    7279 
    7380        return 0; 
    7481} 
    75  
    76 ModuleInit(MiscInit);