linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Grant Likely <grant.likely@secretlab.ca>
To: linuxppc-dev@lists.ozlabs.org, benh@kernel.crashing.org,
	Stephen Rothwell <sfr@canb.auug.org.au>,
	davem@davemloft.net, sparclinux@vger.kernel.org,
	monstr@monstr.eu, microblaze-uclinux@itee.uq.edu.au,
	devicetree-discuss@lists.ozlabs.org
Subject: [RFC PATCH 03/12] of: merge struct device_node
Date: Tue, 06 Oct 2009 22:30:34 -0600	[thread overview]
Message-ID: <20091007043027.16890.46731.stgit@angua> (raw)
In-Reply-To: <20091007041007.16890.62194.stgit@angua>

Merge of common code duplicated between Sparc, PowerPC and Microblaze

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
---

 arch/microblaze/include/asm/prom.h |   20 --------------------
 arch/powerpc/include/asm/prom.h    |   20 --------------------
 arch/sparc/include/asm/prom.h      |   24 ------------------------
 include/linux/of.h                 |   32 ++++++++++++++++++++++++++++++++
 4 files changed, 32 insertions(+), 64 deletions(-)

diff --git a/arch/microblaze/include/asm/prom.h b/arch/microblaze/include/asm/prom.h
index 11cb484..64e8b3a 100644
--- a/arch/microblaze/include/asm/prom.h
+++ b/arch/microblaze/include/asm/prom.h
@@ -73,26 +73,6 @@ struct boot_param_header {
 	u32	dt_struct_size; /* size of the DT structure block */
 };
 
-struct device_node {
-	const char *name;
-	const char *type;
-	phandle	node;
-	phandle linux_phandle;
-	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;
-};
-
 extern struct device_node *of_chosen;
 
 static inline int of_node_check_flag(struct device_node *n, unsigned long flag)
diff --git a/arch/powerpc/include/asm/prom.h b/arch/powerpc/include/asm/prom.h
index c236326..c918db5 100644
--- a/arch/powerpc/include/asm/prom.h
+++ b/arch/powerpc/include/asm/prom.h
@@ -71,26 +71,6 @@ struct boot_param_header
 	u32	dt_struct_size;		/* size of the DT structure block */
 };
 
-struct device_node {
-	const char *name;
-	const char *type;
-	phandle	node;
-	phandle linux_phandle;
-	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;
-};
-
 extern struct device_node *of_chosen;
 
 static inline int of_node_check_flag(struct device_node *n, unsigned long flag)
diff --git a/arch/sparc/include/asm/prom.h b/arch/sparc/include/asm/prom.h
index b34f988..e5f4a1d 100644
--- a/arch/sparc/include/asm/prom.h
+++ b/arch/sparc/include/asm/prom.h
@@ -29,30 +29,6 @@
 #define of_prop_cmp(s1, s2)		strcasecmp((s1), (s2))
 #define of_node_cmp(s1, s2)		strcmp((s1), (s2))
 
-struct of_irq_controller;
-struct device_node {
-	const char	*name;
-	const char	*type;
-	phandle	node;
-	char	*path_component_name;
-	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;
-	unsigned int unique_id;
-
-	struct of_irq_controller *irq_trans;
-};
-
 struct of_irq_controller {
 	unsigned int	(*irq_build)(struct device_node *, unsigned int, void *);
 	void		*data;
diff --git a/include/linux/of.h b/include/linux/of.h
index 4668b29..65a158d 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 */

  parent reply	other threads:[~2009-10-07  4:30 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-07  4:29 [RFC PATCH 00/12] Merge common OpenFirmware device tree code Grant Likely
2009-10-07  4:30 ` [RFC PATCH 01/12] of: Rework linux/of.h and asm/prom.h include ordering Grant Likely
2009-10-07  4:30 ` [RFC PATCH 02/12] of: merge phandle, ihandle and struct property Grant Likely
2009-10-07  4:30 ` Grant Likely [this message]
2009-10-07  4:30 ` [RFC PATCH 04/12] of: Move OF_IS_DYNAMIC and OF_MARK_DYNAMIC macros to of.h Grant Likely
2009-10-07  4:30 ` [RFC PATCH 05/12] of: add common header for flattened device tree representation Grant Likely
2009-10-07  4:57   ` Stephen Rothwell
2009-10-07 12:14     ` [microblaze-uclinux] " Michal Simek
2009-10-07 13:38       ` Grant Likely
2009-10-07 14:07         ` Michal Simek
2009-10-07  5:14   ` Benjamin Herrenschmidt
2009-10-07 13:41     ` Grant Likely
2009-10-09  6:35   ` David Gibson
2009-10-09  7:07     ` Grant Likely
2009-10-14  4:47       ` David Gibson
2009-10-07  4:31 ` [RFC PATCH 06/12] of: merge struct boot_param_header from Microblaze and PowerPC Grant Likely
2009-10-07  4:31 ` [RFC PATCH 07/12] of: merge of_node_*_flag() and set_node_proc_entry() Grant Likely
2009-10-07  4:31 ` [RFC PATCH 08/12] of: merge of_read_number() an of_read_ulong() Grant Likely
2009-10-07  4:31 ` [RFC PATCH 09/12] of: merge of_node_get(), of_node_put() and of_find_all_nodes() Grant Likely
2009-10-07  4:32 ` [RFC PATCH 10/12] of: merge of_*_flat_dt*() functions Grant Likely
2009-10-09  6:36   ` David Gibson
2009-10-09  7:03     ` Grant Likely
2009-10-07  4:32 ` [RFC PATCH 11/12] of: merge other miscellaneous prototypes Grant Likely
2009-10-07  4:32 ` [RFC PATCH 12/12] of: merge of_find_all_nodes() implementations Grant Likely
2009-10-07  4:49 ` [RFC PATCH 00/12] Merge common OpenFirmware device tree code Grant Likely
2009-10-07  5:18   ` Julian Calaby
2009-10-07 13:52     ` Sam Creasey
2009-10-07 19:30       ` Mitch Bradley
2009-10-07 20:54         ` Chris Newport
2009-10-07 21:09           ` David Miller
2009-10-08  1:29             ` Chris Newport
2009-10-08  4:39               ` David Miller
2009-10-08 13:24                 ` Kjetil Oftedal
2009-10-07 22:57       ` Brad Boyer
2009-10-07  7:09   ` Rob Landley
2009-10-07 14:02     ` Grant Likely
2009-10-07 14:21       ` [microblaze-uclinux] " Michal Simek
2009-10-07  7:27   ` David Miller
2009-10-07 16:39     ` Stephen Neuendorffer
2009-10-07  9:02   ` Wolfram Sang
2009-10-15  1:00 ` Stephen Rothwell
2009-10-15  1:01   ` [PATCH 1/2] of: create asm/of.h Stephen Rothwell
2009-10-15  1:02     ` [PATCH 2/2] of: move struct property to asm/of.h Stephen Rothwell
2009-10-15 17:06   ` [RFC PATCH 00/12] Merge common OpenFirmware device tree code Grant Likely
2009-10-15 23:38     ` Stephen Rothwell
2009-10-16  3:18       ` Grant Likely

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091007043027.16890.46731.stgit@angua \
    --to=grant.likely@secretlab.ca \
    --cc=benh@kernel.crashing.org \
    --cc=davem@davemloft.net \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=microblaze-uclinux@itee.uq.edu.au \
    --cc=monstr@monstr.eu \
    --cc=sfr@canb.auug.org.au \
    --cc=sparclinux@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).