TianoCore EDK2 master
Loading...
Searching...
No Matches
ArmFdtHwInfoParser.c
Go to the documentation of this file.
1
8#include "FdtHwInfoParser.h"
14
30};
31
53EFIAPI
55 IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle,
56 IN INT32 FdtBranch
57 )
58{
59 EFI_STATUS Status;
60 UINT32 Index;
61
62 if (fdt_check_header (FdtParserHandle->Fdt) < 0) {
63 ASSERT (0);
64 return EFI_INVALID_PARAMETER;
65 }
66
67 for (Index = 0; Index < ARRAY_SIZE (HwInfoParserTable); Index++) {
68 Status = HwInfoParserTable[Index](
69 FdtParserHandle,
70 FdtBranch
71 );
72 if (EFI_ERROR (Status) &&
73 (Status != EFI_NOT_FOUND))
74 {
75 // If EFI_NOT_FOUND, the parser didn't find information in the DT.
76 // Don't trigger an error.
77 ASSERT (0);
78 return Status;
79 }
80 } // for
81
82 return EFI_SUCCESS;
83}
EFI_STATUS EFIAPI ArmBootArchInfoParser(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
STATIC CONST FDT_HW_INFO_PARSER_FUNC HwInfoParserTable[]
EFI_STATUS EFIAPI ArchFdtHwInfoMainDispatcher(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
EFI_STATUS EFIAPI ArmGenericTimerInfoParser(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
EFI_STATUS EFIAPI ArmGicDispatcher(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
EFI_STATUS(EFIAPI * FDT_HW_INFO_PARSER_FUNC)(IN CONST FDT_HW_INFO_PARSER_HANDLE ParserHandle, IN INT32 FdtBranch)
#define CONST
Definition: Base.h:259
#define STATIC
Definition: Base.h:264
#define ARRAY_SIZE(Array)
Definition: Base.h:1393
#define IN
Definition: Base.h:279
EFI_STATUS EFIAPI PciConfigInfoParser(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
EFI_STATUS EFIAPI SerialPortDispatcher(IN CONST FDT_HW_INFO_PARSER_HANDLE FdtParserHandle, IN INT32 FdtBranch)
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
#define EFI_SUCCESS
Definition: UefiBaseType.h:112