#ifndef _FDT_H
#define _FDT_H

#ifndef __ASSEMBLY__

#include <stdint.h>

struct fdt_header {
	uint32_t magic;                  /* magic word FDT_MAGIC */
	uint32_t totalsize;              /* total size of DT block */
	uint32_t off_dt_struct;          /* offset to structure */
	uint32_t off_dt_strings;         /* offset to strings */
	uint32_t off_mem_rsvmap;         /* offset to memory reserve map */
	uint32_t version;                /* format version */
	uint32_t last_comp_version;      /* last compatible version */

        /* version 2 fields below */
	uint32_t boot_cpuid_phys;        /* Which physical CPU id we're
					    booting on */
	/* version 3 fields below */
        uint32_t size_dt_strings;        /* size of the strings block */
};

struct fdt_reserve_entry {
	uint64_t address;
	uint64_t size;
};

struct fdt_node_header {
	uint32_t tag;
	char name[0];
};

struct fdt_property {
	uint32_t tag;
	uint32_t nameoff;
	uint32_t len;
	char data[0];
};

#endif /* !__ASSEMBLY */

#define FDT_MAGIC	0xd00dfeed      /* 4: version, 4: total size */
#define FDT_TAGSIZE	sizeof(uint32_t)

#define FDT_BEGIN_NODE	0x1             /* Start node: full name */
#define FDT_END_NODE	0x2             /* End node */
#define FDT_PROP	0x3             /* Property: name off,
					   size, content */
#define FDT_NOP		0x4		/* nop */
#define FDT_END		0x9

#define FDT_V1_SIZE	(7*sizeof(uint32_t))
#define FDT_V2_SIZE	(FDT_V1_SIZE + sizeof(uint32_t))
#define FDT_V3_SIZE	(FDT_V2_SIZE + sizeof(uint32_t))


#endif /* _FDT_H */
