Beispiel #1
0
        // Now that we use metadata, this only registers drivers that do not run
        // in separate processes.  All external processes are registered through
        // the IoSystem.Initialize() code.
        public static void RegisterInternalDrivers()
        {
            // PCI Bus
            IoSystem.RegisterKernelDriver(
                typeof(PciBusResources),
                new IoDeviceCreate(PciBusResources.DeviceCreate));

            // nForce4 LPC Bridge
            IoSystem.RegisterKernelDriver(
                typeof(NvPciLpcResources),
                new IoDeviceCreate(NvPciLpcResources.DeviceCreate));

            // Legacy PC IDE bus
            IoSystem.RegisterKernelDriver(
                typeof(LegacyIdeBus),
                new IoDeviceCreate(LegacyIdeBus.DeviceCreate));

            // nForce4 IDE bus
            IoSystem.RegisterKernelDriver(
                typeof(NvIdeBus),
                new IoDeviceCreate(NvIdeBus.DeviceCreate));

            // Tyan motherboard IDE bus
            IoSystem.RegisterKernelDriver(
                typeof(TyanIdeBus),
                new IoDeviceCreate(TyanIdeBus.DeviceCreate));
        }
Beispiel #2
0
        public override void Initialize(Processor processor)
        {
            Cpu thisCpu = (Cpu)Platform.CurrentCpu;

            if (processor.Id == 0)
            {
                InitializeBsp(processor);

                IoSystem.RegisterKernelDriver(
                    typeof(HpetResources),
                    new IoDeviceCreate(Hpet.CreateDevice)
                    );
            }
            else
            {
                InitializeAp(processor);
            }
        }