ReactOS  0.4.13-dev-455-g28ed234
archwsup.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

VOID AddReactOSArcDiskInfo (IN PSTR ArcName, IN ULONG Signature, IN ULONG Checksum, IN BOOLEAN ValidPartitionTable)
 
VOID NTAPI FldrSetIdentifier (IN PCONFIGURATION_COMPONENT_DATA ComponentData, IN PCHAR IdentifierString)
 
VOID NTAPI FldrSetConfigurationData (IN PCONFIGURATION_COMPONENT_DATA ComponentData, IN PCM_PARTIAL_RESOURCE_LIST ResourceList, IN ULONG Size)
 
VOID NTAPI FldrCreateSystemKey (OUT PCONFIGURATION_COMPONENT_DATA *SystemKey)
 
VOID NTAPI FldrCreateComponentKey (IN PCONFIGURATION_COMPONENT_DATA SystemKey, IN CONFIGURATION_CLASS Class, IN CONFIGURATION_TYPE Type, IN IDENTIFIER_FLAG Flags, IN ULONG Key, IN ULONG Affinity, IN PCHAR IdentifierString, IN PCM_PARTIAL_RESOURCE_LIST ResourceList, IN ULONG Size, OUT PCONFIGURATION_COMPONENT_DATA *ComponentKey)
 

Function Documentation

◆ AddReactOSArcDiskInfo()

VOID AddReactOSArcDiskInfo ( IN PSTR  ArcName,
IN ULONG  Signature,
IN ULONG  Checksum,
IN BOOLEAN  ValidPartitionTable 
)

Definition at line 29 of file archwsup.c.

34 {
36 
37  /* Fill out the ARC disk block */
38 
42 
46 
48 }
ULONG reactos_disk_count
Definition: archwsup.c:20
PCHAR ArcName
Definition: arc.h:210
ULONG Signature
Definition: arc.h:209
CHAR ArcName[MAX_PATH]
Definition: winldr.h:58
ARC_DISK_SIGNATURE DiskSignature
Definition: winldr.h:57
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
ARC_DISK_SIGNATURE_EX reactos_arc_disk_info[32]
Definition: archwsup.c:21
BOOLEAN ValidPartitionTable
Definition: arc.h:212
char * strcpy(char *DstString, const char *SrcString)
Definition: utclib.c:388
ULONG CheckSum
Definition: arc.h:211
static const WCHAR Signature[]
Definition: parser.c:141

Referenced by ArmHwDetect(), GetHarddiskInformation(), and PcInitializeBootDevices().

◆ FldrCreateComponentKey()

VOID NTAPI FldrCreateComponentKey ( IN PCONFIGURATION_COMPONENT_DATA  SystemKey,
IN CONFIGURATION_CLASS  Class,
IN CONFIGURATION_TYPE  Type,
IN IDENTIFIER_FLAG  Flags,
IN ULONG  Key,
IN ULONG  Affinity,
IN PCHAR  IdentifierString,
IN PCM_PARTIAL_RESOURCE_LIST  ResourceList,
IN ULONG  Size,
OUT PCONFIGURATION_COMPONENT_DATA ComponentKey 
)

Definition at line 147 of file archwsup.c.

157 {
158  PCONFIGURATION_COMPONENT_DATA ComponentData;
159  PCONFIGURATION_COMPONENT Component;
160 
161  /* Allocate the node for this component */
162  ComponentData = FrLdrHeapAlloc(sizeof(CONFIGURATION_COMPONENT_DATA),
164  if (!ComponentData) return;
165 
166  /* Now save our parent */
167  ComponentData->Parent = SystemNode;
168 
169  /* Link us to the parent */
170  if (SystemNode)
171  FldrLinkToParent(SystemNode, ComponentData);
172 
173  /* Set us up */
174  Component = &ComponentData->ComponentEntry;
175  Component->Class = Class;
176  Component->Type = Type;
177  Component->Flags = Flags;
178  Component->Key = Key;
179  Component->AffinityMask = Affinity;
180 
181  /* Set identifier */
182  if (IdentifierString)
183  FldrSetIdentifier(ComponentData, IdentifierString);
184 
185  /* Set configuration data */
186  if (ResourceList)
187  FldrSetConfigurationData(ComponentData, ResourceList, Size);
188 
189  /* Return the child */
190  *ComponentKey = ComponentData;
191 }
VOID NTAPI FldrSetIdentifier(IN PCONFIGURATION_COMPONENT_DATA ComponentData, IN PCHAR IdentifierString)
Definition: archwsup.c:56
IDENTIFIER_FLAG Flags
Definition: arc.h:106
static const WCHAR Class[]
Definition: cfgmgr.c:31
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG Key
Definition: fatprocs.h:2697
Type
Definition: Type.h:6
#define TAG_HW_COMPONENT_DATA
Definition: archwsup.c:25
struct _CONFIGURATION_COMPONENT_DATA * Parent
Definition: arc.h:118
const MUI_LANGUAGE_RESOURCE ResourceList[]
Definition: muilanguages.h:414
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
CONFIGURATION_TYPE Type
Definition: arc.h:105
FORCEINLINE PVOID FrLdrHeapAlloc(SIZE_T MemorySize, ULONG Tag)
Definition: mm.h:163
CONFIGURATION_CLASS Class
Definition: arc.h:104
_In_ ULONG _In_ ULONG _In_ ULONG _Out_ PKIRQL _Out_ PKAFFINITY Affinity
Definition: halfuncs.h:170
CONFIGURATION_COMPONENT ComponentEntry
Definition: arc.h:121
static VOID NTAPI FldrLinkToParent(IN PCONFIGURATION_COMPONENT_DATA Parent, IN PCONFIGURATION_COMPONENT_DATA Child)
Definition: archwsup.c:117
IN PVOID IN PVOID IN USHORT IN USHORT Size
Definition: pci.h:359
VOID NTAPI FldrSetConfigurationData(IN PCONFIGURATION_COMPONENT_DATA ComponentData, IN PCM_PARTIAL_RESOURCE_LIST ResourceList, IN ULONG Size)
Definition: archwsup.c:78

Referenced by DetectAcpiBios(), DetectApmBios(), DetectBiosDisks(), DetectBiosFloppyController(), DetectBiosFloppyPeripheral(), DetectDisplayController(), DetectIsaBios(), DetectKeyboardController(), DetectKeyboardPeripheral(), DetectParallelPorts(), DetectPciBios(), DetectPciIrqRoutingTable(), DetectPnpBios(), DetectPS2Mouse(), DetectSerialPointerPeripheral(), DetectSerialPorts(), and OfwCopyDeviceTree().

◆ FldrCreateSystemKey()

VOID NTAPI FldrCreateSystemKey ( OUT PCONFIGURATION_COMPONENT_DATA SystemKey)

Definition at line 89 of file archwsup.c.

90 {
91  PCONFIGURATION_COMPONENT Component;
92 
93  /* Allocate the root */
96  if (!FldrArcHwTreeRoot) return;
97 
98  /* Set it up */
99  Component = &FldrArcHwTreeRoot->ComponentEntry;
100  Component->Class = SystemClass;
101  Component->Type = MaximumType;
102  Component->ConfigurationDataLength = 0;
103  Component->Identifier = 0;
104  Component->IdentifierLength = 0;
105  Component->Flags = 0;
106  Component->Version = 0;
107  Component->Revision = 0;
108  Component->Key = 0;
109  Component->AffinityMask = 0xFFFFFFFF;
110 
111  /* Return the node */
112  *SystemNode = FldrArcHwTreeRoot;
113 }
ULONG IdentifierLength
Definition: arc.h:112
IDENTIFIER_FLAG Flags
Definition: arc.h:106
ULONG ConfigurationDataLength
Definition: arc.h:111
#define TAG_HW_COMPONENT_DATA
Definition: archwsup.c:25
PCONFIGURATION_COMPONENT_DATA FldrArcHwTreeRoot
Definition: archwsup.c:17
CONFIGURATION_TYPE Type
Definition: arc.h:105
FORCEINLINE PVOID FrLdrHeapAlloc(SIZE_T MemorySize, ULONG Tag)
Definition: mm.h:163
CONFIGURATION_CLASS Class
Definition: arc.h:104
CONFIGURATION_COMPONENT ComponentEntry
Definition: arc.h:121

Referenced by ArmHwDetect(), PcHwDetect(), PpcHwDetect(), PpcPrepHwDetect(), and XboxHwDetect().

◆ FldrSetConfigurationData()

VOID NTAPI FldrSetConfigurationData ( IN PCONFIGURATION_COMPONENT_DATA  ComponentData,
IN PCM_PARTIAL_RESOURCE_LIST  ResourceList,
IN ULONG  Size 
)

Definition at line 78 of file archwsup.c.

81 {
82  /* Set component information */
83  ComponentData->ConfigurationData = ResourceList;
84  ComponentData->ComponentEntry.ConfigurationDataLength = Size;
85 }
const MUI_LANGUAGE_RESOURCE ResourceList[]
Definition: muilanguages.h:414
IN PVOID IN PVOID IN USHORT IN USHORT Size
Definition: pci.h:359

Referenced by DetectBiosDisks(), and FldrCreateComponentKey().

◆ FldrSetIdentifier()

VOID NTAPI FldrSetIdentifier ( IN PCONFIGURATION_COMPONENT_DATA  ComponentData,
IN PCHAR  IdentifierString 
)

Definition at line 56 of file archwsup.c.

58 {
59  PCONFIGURATION_COMPONENT Component = &ComponentData->ComponentEntry;
60  SIZE_T IdentifierLength;
61  PCHAR Identifier;
62 
63  /* Allocate memory for the identifier */
64  IdentifierLength = strlen(IdentifierString) + 1;
65  Identifier = FrLdrHeapAlloc(IdentifierLength, TAG_HW_NAME);
66  if (!Identifier) return;
67 
68  /* Copy the identifier */
69  RtlCopyMemory(Identifier, IdentifierString, IdentifierLength);
70 
71  /* Set component information */
72  Component->IdentifierLength = (ULONG)IdentifierLength;
73  Component->Identifier = Identifier;
74 }
ULONG IdentifierLength
Definition: arc.h:112
signed char * PCHAR
Definition: retypes.h:7
NTSYSAPI VOID NTAPI RtlCopyMemory(VOID UNALIGNED *Destination, CONST VOID UNALIGNED *Source, ULONG Length)
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
FORCEINLINE PVOID FrLdrHeapAlloc(SIZE_T MemorySize, ULONG Tag)
Definition: mm.h:163
#define TAG_HW_NAME
Definition: archwsup.c:26
ULONG_PTR SIZE_T
Definition: typedefs.h:78
unsigned int ULONG
Definition: retypes.h:1

Referenced by FldrCreateComponentKey().