summaryrefslogtreecommitdiffstats
path: root/include/asm-sparc64/prom.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-06-26 10:08:32 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-26 10:08:32 -0700
commit8871e73fdbde07d0a41393f7ee30787b65387b36 (patch)
treec54027e3ceb18f00db886871494d5e7b56e74b45 /include/asm-sparc64/prom.h
parent61a46dc9d1c10d07a2ed6b7d346b868803b52506 (diff)
parent749805dc10e955b0170573061f9522a6a21cbae0 (diff)
downloadop-kernel-dev-8871e73fdbde07d0a41393f7ee30787b65387b36.zip
op-kernel-dev-8871e73fdbde07d0a41393f7ee30787b65387b36.tar.gz
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC]: Add iomap interfaces. [OPENPROM]: Rewrite driver to use in-kernel device tree. [OPENPROMFS]: Rewrite using in-kernel device tree and seq_file. [SPARC]: Add unique device_node IDs and a ".node" property. [SPARC]: Add of_set_property() interface. [SPARC64]: Export auxio_register to modules. [SPARC64]: Add missing interfaces to dma-mapping.h [SPARC64]: Export _PAGE_IE to modules. [SPARC64]: Allow floppy driver to build modular. [SPARC]: Export x_bus_type to modules. [RIOWATCHDOG]: Fix the build. [CPWATCHDOG]: Fix the build. [PARPORT] sunbpp: Fix typo. [MTD] sun_uflash: Port to new EBUS device layer.
Diffstat (limited to 'include/asm-sparc64/prom.h')
-rw-r--r--include/asm-sparc64/prom.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/asm-sparc64/prom.h b/include/asm-sparc64/prom.h
index 6d1556c..265614d 100644
--- a/include/asm-sparc64/prom.h
+++ b/include/asm-sparc64/prom.h
@@ -35,6 +35,8 @@ struct property {
int length;
void *value;
struct property *next;
+ unsigned long _flags;
+ unsigned int unique_id;
};
struct device_node {
@@ -58,8 +60,15 @@ struct device_node {
struct kref kref;
unsigned long _flags;
void *data;
+ unsigned int unique_id;
};
+/* flag descriptions */
+#define OF_DYNAMIC 1 /* node and properties were allocated via kmalloc */
+
+#define OF_IS_DYNAMIC(x) test_bit(OF_DYNAMIC, &x->_flags)
+#define OF_MARK_DYNAMIC(x) set_bit(OF_DYNAMIC, &x->_flags)
+
static inline void set_node_proc_entry(struct device_node *dn, struct proc_dir_entry *de)
{
dn->pde = de;
@@ -88,6 +97,7 @@ extern struct property *of_find_property(struct device_node *np,
extern int of_device_is_compatible(struct device_node *device, const char *);
extern void *of_get_property(struct device_node *node, const char *name,
int *lenp);
+extern int of_set_property(struct device_node *node, const char *name, void *val, int len);
extern int of_getintprop_default(struct device_node *np,
const char *name,
int def);
OpenPOWER on IntegriCloud