#pragma once #include typedef struct FDTHeader { UInt32 magic; // 0xd00dfeed UInt32 totalSize; UInt32 offDtStruct; UInt32 offDtStrings; UInt32 offMemRsvMap; UInt32 version; UInt32 lastCompVersion; UInt32 bootCpuidPhys; UInt32 sizeDtStrings; UInt32 sizeDtStruct; } FDTHeader; typedef struct FDTProperty { UInt32 length; UInt32 nameOffset; } FDTProperty; typedef enum FDTToken { FDTTokenBeginNode = 0x1, FDTTokenEndNode = 0x2, FDTTokenProperty = 0x3, FDTTokenNOP = 0x4, FDTTokenEnd = 0x9, } FDTToken; enum { kFDTHeaderMagic = 0xd00dfeed, }; void DTBParse(Pointer dtb);