diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2009-10-15 10:57:49 -0600 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2009-10-15 10:57:49 -0600 |
commit | 6f1924928377bd035a9f64466f91a487c69271d2 (patch) | |
tree | 1a162237e621a0d6ebcc2fca305d2c96d284e5a3 /include/linux/of.h | |
parent | 731581e6a653f6a68a4d7ba9df6b886a85c7d080 (diff) |
of: merge struct device_node
Merge of common code duplicated between Sparc, PowerPC and Microblaze
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>
Diffstat (limited to 'include/linux/of.h')
-rw-r--r-- | include/linux/of.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/linux/of.h b/include/linux/of.h index 4668b298479a..65a158dc7257 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -17,6 +17,7 @@ */ #include <linux/types.h> #include <linux/bitops.h> +#include <linux/kref.h> #include <linux/mod_devicetable.h> typedef u32 phandle; @@ -31,6 +32,37 @@ struct property { unsigned int unique_id; }; +#if defined(CONFIG_SPARC) +struct of_irq_controller; +#endif + +struct device_node { + const char *name; + const char *type; + phandle node; +#if !defined(CONFIG_SPARC) + phandle linux_phandle; +#endif + char *full_name; + + struct property *properties; + struct property *deadprops; /* removed properties */ + struct device_node *parent; + struct device_node *child; + struct device_node *sibling; + struct device_node *next; /* next device of same type */ + struct device_node *allnext; /* next in list of all nodes */ + struct proc_dir_entry *pde; /* this node's proc directory */ + struct kref kref; + unsigned long _flags; + void *data; +#if defined(CONFIG_SPARC) + char *path_component_name; + unsigned int unique_id; + struct of_irq_controller *irq_trans; +#endif +}; + #include <asm/prom.h> /* flag descriptions */ |