[HAL]: Add INIT_FUNCTION where needed. Will save 860KB later.

svn path=/trunk/; revision=49463
This commit is contained in:
Sir Richard 2010-11-04 01:28:09 +00:00
parent 9bcd5e12e8
commit 9cdff0edae
13 changed files with 53 additions and 3 deletions

View file

@ -152,6 +152,7 @@ HalpSetCmosData(IN ULONG BusNumber,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpInitializeCmos(VOID) HalpInitializeCmos(VOID)
{ {
/* Set default century offset byte */ /* Set default century offset byte */

View file

@ -126,6 +126,7 @@ static DMA_OPERATIONS HalpDmaOperations = {
#ifndef _MINIHAL_ #ifndef _MINIHAL_
VOID VOID
INIT_FUNCTION
HalpInitDma(VOID) HalpInitDma(VOID)
{ {
/* /*

View file

@ -20,6 +20,7 @@ BOOLEAN HalpPciLockSettings;
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpGetParameters(IN PLOADER_PARAMETER_BLOCK LoaderBlock) HalpGetParameters(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
{ {
PCHAR CommandLine; PCHAR CommandLine;
@ -45,6 +46,7 @@ HalpGetParameters(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
*/ */
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalInitSystem(IN ULONG BootPhase, HalInitSystem(IN ULONG BootPhase,
IN PLOADER_PARAMETER_BLOCK LoaderBlock) IN PLOADER_PARAMETER_BLOCK LoaderBlock)
{ {

Binary file not shown.

View file

@ -600,6 +600,7 @@ HalpGetISAFixedPCIIrq(IN PBUS_HANDLER BusHandler,
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpSetupPciDeviceForDebugging(IN PVOID LoaderBlock, HalpSetupPciDeviceForDebugging(IN PVOID LoaderBlock,
IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
{ {
@ -609,6 +610,7 @@ HalpSetupPciDeviceForDebugging(IN PVOID LoaderBlock,
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice) HalpReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
{ {
DPRINT1("Unimplemented!\n"); DPRINT1("Unimplemented!\n");
@ -617,6 +619,7 @@ HalpReleasePciDeviceForDebugging(IN OUT PDEBUG_DEVICE_DESCRIPTOR PciDevice)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpRegisterPciDebuggingDeviceInfo(VOID) HalpRegisterPciDebuggingDeviceInfo(VOID)
{ {
BOOLEAN Found = FALSE; BOOLEAN Found = FALSE;
@ -853,6 +856,7 @@ HaliPciInterfaceReadConfig(IN PBUS_HANDLER RootBusHandler,
PPCI_REGISTRY_INFO_INTERNAL PPCI_REGISTRY_INFO_INTERNAL
NTAPI NTAPI
INIT_FUNCTION
HalpQueryPciRegistryInfo(VOID) HalpQueryPciRegistryInfo(VOID)
{ {
#ifndef _MINIHAL_ #ifndef _MINIHAL_
@ -1085,6 +1089,7 @@ HalpQueryPciRegistryInfo(VOID)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpInitializePciStubs(VOID) HalpInitializePciStubs(VOID)
{ {
PPCI_REGISTRY_INFO_INTERNAL PciRegistryInfo; PPCI_REGISTRY_INFO_INTERNAL PciRegistryInfo;

View file

@ -15,7 +15,7 @@
/* GLOBALS *******************************************************************/ /* GLOBALS *******************************************************************/
#ifndef _MINIHAL_ #ifndef _MINIHAL_
CHAR ClassTable[3922] = INIT_FUNCTION CHAR ClassTable[3922] =
{ {
0x43, 0x20, 0x30, 0x30, 0x20, 0x20, 0x55, 0x6E, 0x63, 0x6C, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x43, 0x20, 0x30, 0x30, 0x20, 0x20, 0x55, 0x6E, 0x63, 0x6C, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69,
0x65, 0x64, 0x20, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x0D, 0x0A, 0x09, 0x30, 0x30, 0x20, 0x20, 0x65, 0x64, 0x20, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x0D, 0x0A, 0x09, 0x30, 0x30, 0x20, 0x20,
@ -265,7 +265,7 @@ CHAR ClassTable[3922] =
0x72, 0x00, 0x72, 0x00,
}; };
CHAR VendorTable[642355] = INIT_FUNCTION CHAR VendorTable[642355] =
{ {
0x30, 0x30, 0x30, 0x30, 0x20, 0x20, 0x47, 0x61, 0x6D, 0x6D, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68, 0x30, 0x30, 0x30, 0x30, 0x20, 0x20, 0x47, 0x61, 0x6D, 0x6D, 0x61, 0x67, 0x72, 0x61, 0x70, 0x68,
0x78, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x20, 0x28, 0x6F, 0x72, 0x20, 0x6D, 0x69, 0x73, 0x73, 0x78, 0x2C, 0x20, 0x49, 0x6E, 0x63, 0x2E, 0x20, 0x28, 0x6F, 0x72, 0x20, 0x6D, 0x69, 0x73, 0x73,

View file

@ -65,6 +65,7 @@ HalpAllocateBusHandler(IN INTERFACE_TYPE InterfaceType,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpRegisterInternalBusHandlers(VOID) HalpRegisterInternalBusHandlers(VOID)
{ {
PBUS_HANDLER Bus; PBUS_HANDLER Bus;
@ -139,6 +140,7 @@ HalpRegisterInternalBusHandlers(VOID)
#ifndef _MINIHAL_ #ifndef _MINIHAL_
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpMarkChipsetDecode(BOOLEAN OverrideEnable) HalpMarkChipsetDecode(BOOLEAN OverrideEnable)
{ {
NTSTATUS Status; NTSTATUS Status;
@ -186,6 +188,7 @@ HalpMarkChipsetDecode(BOOLEAN OverrideEnable)
PBUS_HANDLER PBUS_HANDLER
NTAPI NTAPI
INIT_FUNCTION
HalpAllocateAndInitPciBusHandler(IN ULONG PciType, HalpAllocateAndInitPciBusHandler(IN ULONG PciType,
IN ULONG BusNo, IN ULONG BusNo,
IN BOOLEAN TestAllocation) IN BOOLEAN TestAllocation)
@ -270,6 +273,7 @@ HalpAllocateAndInitPciBusHandler(IN ULONG PciType,
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpIsValidPCIDevice(IN PBUS_HANDLER BusHandler, HalpIsValidPCIDevice(IN PBUS_HANDLER BusHandler,
IN PCI_SLOT_NUMBER Slot) IN PCI_SLOT_NUMBER Slot)
{ {
@ -331,6 +335,7 @@ static BOOLEAN WarningsGiven[5];
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpGetChipHacks(IN USHORT VendorId, HalpGetChipHacks(IN USHORT VendorId,
IN USHORT DeviceId, IN USHORT DeviceId,
IN UCHAR RevisionId, IN UCHAR RevisionId,
@ -394,6 +399,7 @@ HalpGetChipHacks(IN USHORT VendorId,
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpIsRecognizedCard(IN PPCI_REGISTRY_INFO_INTERNAL PciRegistryInfo, HalpIsRecognizedCard(IN PPCI_REGISTRY_INFO_INTERNAL PciRegistryInfo,
IN PPCI_COMMON_CONFIG PciData, IN PPCI_COMMON_CONFIG PciData,
IN ULONG Flags) IN ULONG Flags)
@ -474,6 +480,7 @@ HalpIsRecognizedCard(IN PPCI_REGISTRY_INFO_INTERNAL PciRegistryInfo,
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpIsIdeDevice(IN PPCI_COMMON_CONFIG PciData) HalpIsIdeDevice(IN PPCI_COMMON_CONFIG PciData)
{ {
/* Simple test first */ /* Simple test first */
@ -526,6 +533,7 @@ HalpIsIdeDevice(IN PPCI_COMMON_CONFIG PciData)
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpIsBridgeDevice(IN PPCI_COMMON_CONFIG PciData) HalpIsBridgeDevice(IN PPCI_COMMON_CONFIG PciData)
{ {
/* Either this is a PCI-to-PCI Bridge, or a CardBUS Bridge */ /* Either this is a PCI-to-PCI Bridge, or a CardBUS Bridge */
@ -539,6 +547,7 @@ HalpIsBridgeDevice(IN PPCI_COMMON_CONFIG PciData)
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpGetPciBridgeConfig(IN ULONG PciType, HalpGetPciBridgeConfig(IN ULONG PciType,
IN PUCHAR BusCount) IN PUCHAR BusCount)
{ {
@ -591,6 +600,7 @@ HalpGetPciBridgeConfig(IN ULONG PciType,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpFixupPciSupportedRanges(IN ULONG BusCount) HalpFixupPciSupportedRanges(IN ULONG BusCount)
{ {
ULONG i; ULONG i;
@ -653,6 +663,7 @@ HalpFixupPciSupportedRanges(IN ULONG BusCount)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
ShowSize(ULONG x) ShowSize(ULONG x)
{ {
if (!x) return; if (!x) return;
@ -678,6 +689,7 @@ ShowSize(ULONG x)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpDebugPciDumpBus(IN ULONG i, HalpDebugPciDumpBus(IN ULONG i,
IN ULONG j, IN ULONG j,
IN ULONG k, IN ULONG k,
@ -829,6 +841,7 @@ HalpDebugPciDumpBus(IN ULONG i,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpInitializePciBus(VOID) HalpInitializePciBus(VOID)
{ {
#ifndef _MINIHAL_ #ifndef _MINIHAL_
@ -1093,6 +1106,7 @@ HalpInitializePciBus(VOID)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpInitBusHandlers(VOID) HalpInitBusHandlers(VOID)
{ {
/* Register the HAL Bus Handler support */ /* Register the HAL Bus Handler support */
@ -1101,6 +1115,7 @@ HalpInitBusHandlers(VOID)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpRegisterKdSupportFunctions(VOID) HalpRegisterKdSupportFunctions(VOID)
{ {
/* Register PCI Device Functions */ /* Register PCI Device Functions */

View file

@ -23,6 +23,7 @@ PWCHAR HalName = L"PC Compatible Eisa/Isa HAL";
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpSetupAcpiPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock) HalpSetupAcpiPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
{ {
/* There is no ACPI on these HALs */ /* There is no ACPI on these HALs */
@ -31,6 +32,7 @@ HalpSetupAcpiPhase0(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpBuildAddressMap(VOID) HalpBuildAddressMap(VOID)
{ {
/* FIXME: Inherit ROM blocks from the registry */ /* FIXME: Inherit ROM blocks from the registry */
@ -42,6 +44,7 @@ HalpBuildAddressMap(VOID)
BOOLEAN BOOLEAN
NTAPI NTAPI
INIT_FUNCTION
HalpGetDebugPortTable(VOID) HalpGetDebugPortTable(VOID)
{ {
/* No ACPI */ /* No ACPI */
@ -50,6 +53,7 @@ HalpGetDebugPortTable(VOID)
ULONG ULONG
NTAPI NTAPI
INIT_FUNCTION
HalpIs16BitPortDecodeSupported(VOID) HalpIs16BitPortDecodeSupported(VOID)
{ {
/* Only EISA systems support this */ /* Only EISA systems support this */
@ -58,9 +62,11 @@ HalpIs16BitPortDecodeSupported(VOID)
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HaliInitPnpDriver(VOID) HaliInitPnpDriver(VOID)
{ {
/* On PC-AT, this will interface with the PCI driver */ /* On PC-AT, this will interface with the PCI driver */
//HalpDebugPciBus();
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
@ -69,6 +75,7 @@ HaliInitPnpDriver(VOID)
*/ */
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalReportResourceUsage(VOID) HalReportResourceUsage(VOID)
{ {
INTERFACE_TYPE InterfaceType; INTERFACE_TYPE InterfaceType;

View file

@ -25,7 +25,6 @@ PVOID HalpHeapStart = MM_HAL_HEAP_START;
/* PRIVATE FUNCTIONS *********************************************************/ /* PRIVATE FUNCTIONS *********************************************************/
ULONG ULONG
NTAPI NTAPI
HalpAllocPhysicalMemory(IN PLOADER_PARAMETER_BLOCK LoaderBlock, HalpAllocPhysicalMemory(IN PLOADER_PARAMETER_BLOCK LoaderBlock,

View file

@ -24,6 +24,7 @@ CHAR HalpSerialNumber[31];
#ifndef _MINIHAL_ #ifndef _MINIHAL_
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpReportSerialNumber(VOID) HalpReportSerialNumber(VOID)
{ {
NTSTATUS Status; NTSTATUS Status;
@ -54,6 +55,7 @@ HalpReportSerialNumber(VOID)
NTSTATUS NTSTATUS
NTAPI NTAPI
INIT_FUNCTION
HalpMarkAcpiHal(VOID) HalpMarkAcpiHal(VOID)
{ {
NTSTATUS Status; NTSTATUS Status;

View file

@ -44,6 +44,7 @@ LARGE_INTEGER HalpRolloverTable[15] =
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpInitializeClock(VOID) HalpInitializeClock(VOID)
{ {
PKPRCB Prcb = KeGetCurrentPrcb(); PKPRCB Prcb = KeGetCurrentPrcb();

View file

@ -63,6 +63,7 @@ ADDRESS_USAGE HalpDefaultIoSpace =
#ifndef _MINIHAL_ #ifndef _MINIHAL_
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpGetResourceSortValue(IN PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor, HalpGetResourceSortValue(IN PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor,
OUT PULONG Scale, OUT PULONG Scale,
OUT PLARGE_INTEGER Value) OUT PLARGE_INTEGER Value)
@ -102,6 +103,7 @@ HalpGetResourceSortValue(IN PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpBuildPartialFromIdt(IN ULONG Entry, HalpBuildPartialFromIdt(IN ULONG Entry,
IN PCM_PARTIAL_RESOURCE_DESCRIPTOR RawDescriptor, IN PCM_PARTIAL_RESOURCE_DESCRIPTOR RawDescriptor,
IN PCM_PARTIAL_RESOURCE_DESCRIPTOR TranslatedDescriptor) IN PCM_PARTIAL_RESOURCE_DESCRIPTOR TranslatedDescriptor)
@ -139,6 +141,7 @@ HalpBuildPartialFromIdt(IN ULONG Entry,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpBuildPartialFromAddress(IN INTERFACE_TYPE Interface, HalpBuildPartialFromAddress(IN INTERFACE_TYPE Interface,
IN PADDRESS_USAGE CurrentAddress, IN PADDRESS_USAGE CurrentAddress,
IN ULONG Element, IN ULONG Element,
@ -206,6 +209,7 @@ HalpBuildPartialFromAddress(IN INTERFACE_TYPE Interface,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpReportResourceUsage(IN PUNICODE_STRING HalName, HalpReportResourceUsage(IN PUNICODE_STRING HalName,
IN INTERFACE_TYPE InterfaceType) IN INTERFACE_TYPE InterfaceType)
{ {
@ -484,6 +488,7 @@ HalpReportResourceUsage(IN PUNICODE_STRING HalName,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpRegisterVector(IN UCHAR Flags, HalpRegisterVector(IN UCHAR Flags,
IN ULONG BusVector, IN ULONG BusVector,
IN ULONG SystemVector, IN ULONG SystemVector,
@ -500,6 +505,7 @@ HalpRegisterVector(IN UCHAR Flags,
#ifndef _MINIHAL_ #ifndef _MINIHAL_
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpEnableInterruptHandler(IN UCHAR Flags, HalpEnableInterruptHandler(IN UCHAR Flags,
IN ULONG BusVector, IN ULONG BusVector,
IN ULONG SystemVector, IN ULONG SystemVector,
@ -522,6 +528,7 @@ HalpEnableInterruptHandler(IN UCHAR Flags,
VOID VOID
NTAPI NTAPI
INIT_FUNCTION
HalpGetNMICrashFlag(VOID) HalpGetNMICrashFlag(VOID)
{ {
UNICODE_STRING ValueName; UNICODE_STRING ValueName;

View file

@ -4,6 +4,16 @@
#pragma once #pragma once
#define PLACE_IN_SECTION(s) __attribute__((section (s)))
#ifdef __GNUC__
#define INIT_FUNCTION PLACE_IN_SECTION("init")
#define PAGE_LOCKED_FUNCTION PLACE_IN_SECTION("pagelk")
#define PAGE_UNLOCKED_FUNCTION PLACE_IN_SECTION("pagepo")
#else
#define INIT_FUNCTION
#define PAGE_LOCKED_FUNCTION
#define PAGE_UNLOCKED_FUNCTION
#endif
#ifdef _MSC_VER #ifdef _MSC_VER
#define REGISTERCALL FASTCALL #define REGISTERCALL FASTCALL