OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
HandleParsingMin.h
Go to the documentation of this file.
1
11#ifndef HANDLE_PARSING_H
12#define HANDLE_PARSING_H
13
14typedef struct {
15 LIST_ENTRY Link;
16 EFI_HANDLE TheHandle;
17 UINTN TheIndex;
19
20typedef struct {
22 UINTN NextIndex;
24
25#define HR_UNKNOWN 0
26#define HR_IMAGE_HANDLE BIT1
27#define HR_DRIVER_BINDING_HANDLE BIT2 // has driver binding
28#define HR_DEVICE_DRIVER BIT3 // device driver (hybrid?)
29#define HR_BUS_DRIVER BIT4 // a bus driver (hybrid?)
30#define HR_DRIVER_CONFIGURATION_HANDLE BIT5
31#define HR_DRIVER_DIAGNOSTICS_HANDLE BIT6
32#define HR_COMPONENT_NAME_HANDLE BIT7
33#define HR_DEVICE_HANDLE BIT8
34#define HR_PARENT_HANDLE BIT9
35#define HR_CONTROLLER_HANDLE BIT10
36#define HR_CHILD_HANDLE BIT11
37#define HR_VALID_MASK (BIT1|BIT2|BIT3|BIT4|BIT5|BIT6|BIT7|BIT8|BIT9|BIT10|BIT11)
38
50UINTN
51EFIAPI
53 IN CONST EFI_HANDLE TheHandle
54 );
55
84EFI_STATUS
85EFIAPI
87 IN CONST EFI_HANDLE DriverBindingHandle OPTIONAL,
88 IN CONST EFI_HANDLE ControllerHandle OPTIONAL,
89 IN CONST UINTN Mask,
90 IN UINTN *MatchingHandleCount,
91 OUT EFI_HANDLE **MatchingHandleBuffer OPTIONAL
92 );
93
105#define PARSE_HANDLE_DATABASE_UEFI_DRIVERS(ControllerHandle, Count, Buffer) \
106 InternalParseHandleDatabaseByRelationship(NULL, ControllerHandle, HR_DRIVER_BINDING_HANDLE|HR_DEVICE_DRIVER, Count, Buffer)
107
108#endif // HANDLE_PARSING_H
EFI_STATUS EFIAPI InternalParseHandleDatabaseByRelationship(IN CONST EFI_HANDLE DriverBindingHandle OPTIONAL, IN CONST EFI_HANDLE ControllerHandle OPTIONAL, IN CONST UINTN Mask, IN UINTN *MatchingHandleCount, OUT EFI_HANDLE **MatchingHandleBuffer OPTIONAL)
UINTN EFIAPI InternalConvertHandleToHandleIndex(IN CONST EFI_HANDLE TheHandle)
LIST_ENTRY Link
EFI_HANDLE TheHandle