of: merge struct boot_param_header from Microblaze and PowerPC
Merge common code for working with Flattened Device Tree data structure Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: David S. Miller <davem@davemloft.net> Acked-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Michal Simek <monstr@monstr.eu> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: Stephen Rothwell <sfr@canb.auug.org.au>
This commit is contained in:
		
					parent
					
						
							
								d8678b5870
							
						
					
				
			
			
				commit
				
					
						d45d94f672
					
				
			
		
					 3 changed files with 32 additions and 61 deletions
				
			
		|  | @ -33,36 +33,6 @@ | |||
| #define of_prop_cmp(s1, s2)		strcmp((s1), (s2)) | ||||
| #define of_node_cmp(s1, s2)		strcasecmp((s1), (s2)) | ||||
| 
 | ||||
| /*
 | ||||
|  * This is what gets passed to the kernel by prom_init or kexec | ||||
|  * | ||||
|  * The dt struct contains the device tree structure, full pathes and | ||||
|  * property contents. The dt strings contain a separate block with just | ||||
|  * the strings for the property names, and is fully page aligned and | ||||
|  * self contained in a page, so that it can be kept around by the kernel, | ||||
|  * each property name appears only once in this page (cheap compression) | ||||
|  * | ||||
|  * the mem_rsvmap contains a map of reserved ranges of physical memory, | ||||
|  * passing it here instead of in the device-tree itself greatly simplifies | ||||
|  * the job of everybody. It's just a list of u64 pairs (base/size) that | ||||
|  * ends when size is 0 | ||||
|  */ | ||||
| struct boot_param_header { | ||||
| 	u32	magic; /* magic word OF_DT_HEADER */ | ||||
| 	u32	totalsize; /* total size of DT block */ | ||||
| 	u32	off_dt_struct; /* offset to structure */ | ||||
| 	u32	off_dt_strings; /* offset to strings */ | ||||
| 	u32	off_mem_rsvmap; /* offset to memory reserve map */ | ||||
| 	u32	version; /* format version */ | ||||
| 	u32	last_comp_version; /* last compatible version */ | ||||
| 	/* version 2 fields below */ | ||||
| 	u32	boot_cpuid_phys; /* Physical CPU id we're booting on */ | ||||
| 	/* version 3 fields below */ | ||||
| 	u32	dt_strings_size; /* size of the DT strings block */ | ||||
| 	/* version 17 fields below */ | ||||
| 	u32	dt_struct_size; /* size of the DT structure block */ | ||||
| }; | ||||
| 
 | ||||
| extern struct device_node *of_chosen; | ||||
| 
 | ||||
| static inline int of_node_check_flag(struct device_node *n, unsigned long flag) | ||||
|  |  | |||
|  | @ -30,37 +30,6 @@ | |||
| #define of_prop_cmp(s1, s2)		strcmp((s1), (s2)) | ||||
| #define of_node_cmp(s1, s2)		strcasecmp((s1), (s2)) | ||||
| 
 | ||||
| /*
 | ||||
|  * This is what gets passed to the kernel by prom_init or kexec | ||||
|  * | ||||
|  * The dt struct contains the device tree structure, full pathes and | ||||
|  * property contents. The dt strings contain a separate block with just | ||||
|  * the strings for the property names, and is fully page aligned and | ||||
|  * self contained in a page, so that it can be kept around by the kernel, | ||||
|  * each property name appears only once in this page (cheap compression) | ||||
|  * | ||||
|  * the mem_rsvmap contains a map of reserved ranges of physical memory, | ||||
|  * passing it here instead of in the device-tree itself greatly simplifies | ||||
|  * the job of everybody. It's just a list of u64 pairs (base/size) that | ||||
|  * ends when size is 0 | ||||
|  */ | ||||
| struct boot_param_header | ||||
| { | ||||
| 	u32	magic;			/* magic word OF_DT_HEADER */ | ||||
| 	u32	totalsize;		/* total size of DT block */ | ||||
| 	u32	off_dt_struct;		/* offset to structure */ | ||||
| 	u32	off_dt_strings;		/* offset to strings */ | ||||
| 	u32	off_mem_rsvmap;		/* offset to memory reserve map */ | ||||
| 	u32	version;		/* format version */ | ||||
| 	u32	last_comp_version;	/* last compatible version */ | ||||
| 	/* version 2 fields below */ | ||||
| 	u32	boot_cpuid_phys;	/* Physical CPU id we're booting on */ | ||||
| 	/* version 3 fields below */ | ||||
| 	u32	dt_strings_size;	/* size of the DT strings block */ | ||||
| 	/* version 17 fields below */ | ||||
| 	u32	dt_struct_size;		/* size of the DT structure block */ | ||||
| }; | ||||
| 
 | ||||
| extern struct device_node *of_chosen; | ||||
| 
 | ||||
| static inline int of_node_check_flag(struct device_node *n, unsigned long flag) | ||||
|  |  | |||
|  | @ -23,4 +23,36 @@ | |||
| 
 | ||||
| #define OF_DT_VERSION		0x10 | ||||
| 
 | ||||
| #ifndef __ASSEMBLY__ | ||||
| /*
 | ||||
|  * This is what gets passed to the kernel by prom_init or kexec | ||||
|  * | ||||
|  * The dt struct contains the device tree structure, full pathes and | ||||
|  * property contents. The dt strings contain a separate block with just | ||||
|  * the strings for the property names, and is fully page aligned and | ||||
|  * self contained in a page, so that it can be kept around by the kernel, | ||||
|  * each property name appears only once in this page (cheap compression) | ||||
|  * | ||||
|  * the mem_rsvmap contains a map of reserved ranges of physical memory, | ||||
|  * passing it here instead of in the device-tree itself greatly simplifies | ||||
|  * the job of everybody. It's just a list of u64 pairs (base/size) that | ||||
|  * ends when size is 0 | ||||
|  */ | ||||
| struct boot_param_header { | ||||
| 	u32	magic;			/* magic word OF_DT_HEADER */ | ||||
| 	u32	totalsize;		/* total size of DT block */ | ||||
| 	u32	off_dt_struct;		/* offset to structure */ | ||||
| 	u32	off_dt_strings;		/* offset to strings */ | ||||
| 	u32	off_mem_rsvmap;		/* offset to memory reserve map */ | ||||
| 	u32	version;		/* format version */ | ||||
| 	u32	last_comp_version;	/* last compatible version */ | ||||
| 	/* version 2 fields below */ | ||||
| 	u32	boot_cpuid_phys;	/* Physical CPU id we're booting on */ | ||||
| 	/* version 3 fields below */ | ||||
| 	u32	dt_strings_size;	/* size of the DT strings block */ | ||||
| 	/* version 17 fields below */ | ||||
| 	u32	dt_struct_size;		/* size of the DT structure block */ | ||||
| }; | ||||
| 
 | ||||
| #endif /* __ASSEMBLY__ */ | ||||
| #endif /* _LINUX_OF_FDT_H */ | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Grant Likely
				Grant Likely