ReactOS  0.4.14-dev-57-g333b8f1
hardware.h
Go to the documentation of this file.
1 /*
2  * FreeLoader
3  *
4  * Copyright (C) 2003 Eric Kohl
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along
17  * with this program; if not, write to the Free Software Foundation, Inc.,
18  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19  */
20 
21 #pragma once
22 
23 #define CONFIG_CMD(bus, dev_fn, where) \
24  (0x80000000 | (((ULONG)(bus)) << 16) | (((dev_fn) & 0x1F) << 11) | (((dev_fn) & 0xE0) << 3) | ((where) & ~3))
25 
26 #define TAG_HW_RESOURCE_LIST 'lRwH'
27 #define TAG_HW_DISK_CONTEXT 'cDwH'
28 
29 /* PROTOTYPES ***************************************************************/
30 
31 /* hardware.c */
32 VOID StallExecutionProcessor(ULONG Microseconds);
34 
35 typedef
37 (*GET_HARDDISK_CONFIG_DATA)(UCHAR DriveNumber, ULONG* pSize);
38 
40 
41 typedef
42 BOOLEAN
44 
46 
47 typedef
48 ULONG
50 
51 VOID
54 
55 /* hwacpi.c */
57 
58 /* hwapm.c */
60 
61 /* hwpci.c */
63 
64 /* i386pnp.S */
67  ULONG *NodeCount);
69  UCHAR *NodeBuffer);
70 
71 /* i386pxe.S */
73 
74 /* EOF */
VOID HalpCalibrateStallExecution(VOID)
Definition: hardware.c:100
FIND_PCI_BIOS FindPciBios
Definition: hwpci.c:26
VOID DetectPciBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber)
Definition: hwpci.c:176
VOID DetectBiosDisks(PCONFIGURATION_COMPONENT_DATA SystemKey, PCONFIGURATION_COMPONENT_DATA BusKey)
Definition: hardware.c:339
#define __cdecl
Definition: accygwin.h:79
struct _CM_PARTIAL_RESOURCE_LIST * PCM_PARTIAL_RESOURCE_LIST
ULONG(* GET_SERIAL_PORT)(ULONG Index, PULONG Irq)
Definition: hardware.h:49
_In_ PVOID Parameter
Definition: ldrtypes.h:241
BOOLEAN(* FIND_PCI_BIOS)(PPCI_REGISTRY_INFO BusData)
Definition: hardware.h:43
GET_HARDDISK_CONFIG_DATA GetHarddiskConfigurationData
Definition: hardware.c:40
uint32_t ULONG_PTR
Definition: typedefs.h:63
ULONG __cdecl PnpBiosGetDeviceNode(UCHAR *NodeId, UCHAR *NodeBuffer)
VOID DetectAcpiBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber)
Definition: hwacpi.c:54
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
ULONG __cdecl PnpBiosGetDeviceNodeCount(ULONG *NodeSize, ULONG *NodeCount)
PCM_PARTIAL_RESOURCE_LIST(* GET_HARDDISK_CONFIG_DATA)(UCHAR DriveNumber, ULONG *pSize)
Definition: hardware.h:37
_In_opt_ PUNICODE_STRING _In_ PDRIVER_OBJECT _In_ PDEVICE_OBJECT _In_ INTERFACE_TYPE _In_ ULONG BusNumber
Definition: halfuncs.h:156
_Inout_ PVOID Segment
Definition: exfuncs.h:893
static const UCHAR Index[8]
Definition: usbohci.c:18
unsigned char UCHAR
Definition: xmlstorage.h:181
VOID StallExecutionProcessor(ULONG Microseconds)
Definition: hardware.c:55
unsigned short USHORT
Definition: pedump.c:61
ULONG_PTR __cdecl PnpBiosSupported(VOID)
unsigned int * PULONG
Definition: retypes.h:1
#define BOOLEAN
Definition: pedump.c:73
unsigned int ULONG
Definition: retypes.h:1
VOID DetectApmBios(PCONFIGURATION_COMPONENT_DATA SystemKey, ULONG *BusNumber)
Definition: hwapm.c:57
USHORT __cdecl PxeCallApi(USHORT Segment, USHORT Offset, USHORT Service, VOID *Parameter)