3 * LICENSE: BSD - See COPYING.ARM in the top level directory
4 * FILE: hal/halx86/generic/acpi/halpcat.c
5 * PURPOSE: HAL Legacy Support Code
6 * PROGRAMMERS: ReactOS Portable Systems Group
9 /* INCLUDES *******************************************************************/
15 /* GLOBALS ********************************************************************/
17 /* This determines the HAL type */
18 BOOLEAN HalDisableFirmwareMapper
= FALSE
;
19 PWCHAR HalHardwareIdString
= L
"e_isa_up";
20 PWCHAR HalName
= L
"PC Compatible Eisa/Isa HAL";
22 /* PRIVATE FUNCTIONS **********************************************************/
26 HalpSetupAcpiPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock
)
28 /* There is no ACPI on these HALs */
29 return STATUS_NO_SUCH_DEVICE
;
34 HalpInitializePciBus(VOID
)
36 /* FIXME: Should do legacy PCI bus detection */
38 /* FIXME: Should detect chipset hacks */
40 /* FIXME: Should detect broken PCI hardware and apply hacks */
42 /* FIXME: Should build resource ranges */
47 HalpBuildAddressMap(VOID
)
49 /* FIXME: Inherit ROM blocks from the registry */
50 //HalpInheritROMBlocks();
52 /* FIXME: Add the ROM blocks to our ranges */
58 HalpGetDebugPortTable(VOID
)
66 HalpIs16BitPortDecodeSupported(VOID
)
68 /* Only EISA systems support this */
69 return (HalpBusType
== MACHINE_TYPE_EISA
) ? CM_RESOURCE_PORT_16_BIT_DECODE
: 0;
77 HalReportResourceUsage(VOID
)
79 INTERFACE_TYPE InterfaceType
;
80 UNICODE_STRING HalString
;
82 /* FIXME: Initialize MCA bus */
84 /* Initialize PCI bus. */
85 HalpInitializePciBus();
87 /* Initialize the stubs */
88 HalpInitializePciStubs();
90 /* What kind of bus is this? */
94 case MACHINE_TYPE_ISA
:
99 case MACHINE_TYPE_EISA
:
100 InterfaceType
= Eisa
;
104 case MACHINE_TYPE_MCA
:
105 InterfaceType
= MicroChannel
;
110 InterfaceType
= Internal
;
114 /* Build HAL usage */
115 RtlInitUnicodeString(&HalString
, HalName
);
116 HalpReportResourceUsage(&HalString
, InterfaceType
);
118 /* Setup PCI debugging and Hibernation */
119 HalpRegisterPciDebuggingDeviceInfo();