- Add missing call to HalInitPnpDriver during I/O manager initialization. The HAL PnP driver was never getting initialized.
- Add HAL callback for HalInitPnpDriver. It's going to be needed in future for eVb's PCI driver to fully work (interrupt translation, among other things).

svn path=/trunk/; revision=48740
This commit is contained in:
Aleksey Bragin 2010-09-10 21:46:13 +00:00
parent 1a029a622d
commit 2d246e918e
5 changed files with 29 additions and 6 deletions

View file

@ -111,7 +111,7 @@ HalInitSystem(IN ULONG BootPhase,
/* Fill out the dispatch tables */ /* Fill out the dispatch tables */
HalQuerySystemInformation = HaliQuerySystemInformation; HalQuerySystemInformation = HaliQuerySystemInformation;
HalSetSystemInformation = HaliSetSystemInformation; HalSetSystemInformation = HaliSetSystemInformation;
HalInitPnpDriver = NULL; // FIXME: TODO HalInitPnpDriver = HaliInitPnpDriver;
#ifndef _MINIHAL_ #ifndef _MINIHAL_
HalGetDmaAdapter = HalpGetDmaAdapter; HalGetDmaAdapter = HalpGetDmaAdapter;
#else #else

View file

@ -678,10 +678,10 @@ ShowSize(ULONG x)
VOID VOID
NTAPI NTAPI
HalpDebugPciBus(IN ULONG i, HalpDebugPciDumpBus(IN ULONG i,
IN ULONG j, IN ULONG j,
IN ULONG k, IN ULONG k,
IN PPCI_COMMON_CONFIG PciData) IN PPCI_COMMON_CONFIG PciData)
{ {
extern CHAR ClassTable[3922]; extern CHAR ClassTable[3922];
extern CHAR VendorTable[642355]; extern CHAR VendorTable[642355];
@ -933,7 +933,7 @@ HalpInitializePciBus(VOID)
if (PciData->VendorID == PCI_INVALID_VENDORID) continue; if (PciData->VendorID == PCI_INVALID_VENDORID) continue;
/* Print out the entry */ /* Print out the entry */
HalpDebugPciBus(i, j, k, PciData); HalpDebugPciDumpBus(i, j, k, PciData);
/* Check if this is a Cardbus bridge */ /* Check if this is a Cardbus bridge */
if (PCI_CONFIGURATION_TYPE(PciData) == PCI_CARDBUS_BRIDGE_TYPE) if (PCI_CONFIGURATION_TYPE(PciData) == PCI_CARDBUS_BRIDGE_TYPE)

View file

@ -56,6 +56,14 @@ HalpIs16BitPortDecodeSupported(VOID)
return (HalpBusType == MACHINE_TYPE_EISA) ? CM_RESOURCE_PORT_16_BIT_DECODE : 0; return (HalpBusType == MACHINE_TYPE_EISA) ? CM_RESOURCE_PORT_16_BIT_DECODE : 0;
} }
NTSTATUS
NTAPI
HaliInitPnpDriver(VOID)
{
/* On PC-AT, this will interface with the PCI driver */
return STATUS_SUCCESS;
}
/* /*
* @implemented * @implemented
*/ */

View file

@ -795,6 +795,18 @@ HalpInitBusHandlers(
VOID VOID
); );
NTSTATUS
NTAPI
HaliInitPnpDriver(
VOID
);
VOID
NTAPI
HalpDebugPciDumpBus(
VOID
);
#ifdef _M_AMD64 #ifdef _M_AMD64
#define KfLowerIrql KeLowerIrql #define KfLowerIrql KeLowerIrql
#ifndef CONFIG_SMP #ifndef CONFIG_SMP

View file

@ -490,6 +490,9 @@ IoInitSystem(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
/* Initialize PnP manager */ /* Initialize PnP manager */
IopInitializePlugPlayServices(); IopInitializePlugPlayServices();
/* Initialize HAL Root Bus Driver */
HalInitPnpDriver();
/* Load boot start drivers */ /* Load boot start drivers */
IopInitializeBootDrivers(); IopInitializeBootDrivers();