Annotation of elwix/tools/uboot_mkimage/include/fdt.h, revision 1.1.1.1

1.1       misho       1: #ifndef _FDT_H
                      2: #define _FDT_H
                      3: 
                      4: #ifndef __ASSEMBLY__
                      5: 
                      6: struct fdt_header {
                      7:        uint32_t magic;                  /* magic word FDT_MAGIC */
                      8:        uint32_t totalsize;              /* total size of DT block */
                      9:        uint32_t off_dt_struct;          /* offset to structure */
                     10:        uint32_t off_dt_strings;         /* offset to strings */
                     11:        uint32_t off_mem_rsvmap;         /* offset to memory reserve map */
                     12:        uint32_t version;                /* format version */
                     13:        uint32_t last_comp_version;      /* last compatible version */
                     14: 
                     15:        /* version 2 fields below */
                     16:        uint32_t boot_cpuid_phys;        /* Which physical CPU id we're
                     17:                                            booting on */
                     18:        /* version 3 fields below */
                     19:        uint32_t size_dt_strings;        /* size of the strings block */
                     20: 
                     21:        /* version 17 fields below */
                     22:        uint32_t size_dt_struct;         /* size of the structure block */
                     23: };
                     24: 
                     25: struct fdt_reserve_entry {
                     26:        uint64_t address;
                     27:        uint64_t size;
                     28: };
                     29: 
                     30: struct fdt_node_header {
                     31:        uint32_t tag;
                     32:        char name[0];
                     33: };
                     34: 
                     35: struct fdt_property {
                     36:        uint32_t tag;
                     37:        uint32_t len;
                     38:        uint32_t nameoff;
                     39:        char data[0];
                     40: };
                     41: 
                     42: #endif /* !__ASSEMBLY */
                     43: 
                     44: #define FDT_MAGIC      0xd00dfeed      /* 4: version, 4: total size */
                     45: #define FDT_TAGSIZE    sizeof(uint32_t)
                     46: 
                     47: #define FDT_BEGIN_NODE 0x1             /* Start node: full name */
                     48: #define FDT_END_NODE   0x2             /* End node */
                     49: #define FDT_PROP       0x3             /* Property: name off,
                     50:                                           size, content */
                     51: #define FDT_NOP                0x4             /* nop */
                     52: #define FDT_END                0x9
                     53: 
                     54: #define FDT_V1_SIZE    (7*sizeof(uint32_t))
                     55: #define FDT_V2_SIZE    (FDT_V1_SIZE + sizeof(uint32_t))
                     56: #define FDT_V3_SIZE    (FDT_V2_SIZE + sizeof(uint32_t))
                     57: #define FDT_V16_SIZE   FDT_V3_SIZE
                     58: #define FDT_V17_SIZE   (FDT_V16_SIZE + sizeof(uint32_t))
                     59: 
                     60: /* adding a ramdisk needs 0x44 bytes in version 2008.10 */
                     61: #define FDT_RAMDISK_OVERHEAD   0x80
                     62: #endif /* _FDT_H */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>