diff options
author | David S. Miller <davem@davemloft.net> | 2006-06-26 08:18:36 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-06-26 08:18:36 +0200 |
commit | fb7cd9d9acfb52dc1b9fbd5079445e4732667bbc (patch) | |
tree | a4f554595e2cebcca8b594cfe20b9a79ac6e535f /include | |
parent | [SPARC64]: Export auxio_register to modules. (diff) | |
download | linux-fb7cd9d9acfb52dc1b9fbd5079445e4732667bbc.tar.xz linux-fb7cd9d9acfb52dc1b9fbd5079445e4732667bbc.zip |
[SPARC]: Add of_set_property() interface.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-sparc/prom.h | 8 | ||||
-rw-r--r-- | include/asm-sparc64/prom.h | 8 |
2 files changed, 16 insertions, 0 deletions
diff --git a/include/asm-sparc/prom.h b/include/asm-sparc/prom.h index c5e3d26eabd3..e9b8047470fe 100644 --- a/include/asm-sparc/prom.h +++ b/include/asm-sparc/prom.h @@ -35,6 +35,7 @@ struct property { int length; void *value; struct property *next; + unsigned long _flags; }; struct device_node { @@ -60,6 +61,12 @@ struct device_node { void *data; }; +/* 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 +95,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); diff --git a/include/asm-sparc64/prom.h b/include/asm-sparc64/prom.h index 6d1556c0c263..c8022a337380 100644 --- a/include/asm-sparc64/prom.h +++ b/include/asm-sparc64/prom.h @@ -35,6 +35,7 @@ struct property { int length; void *value; struct property *next; + unsigned long _flags; }; struct device_node { @@ -60,6 +61,12 @@ struct device_node { void *data; }; +/* 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 +95,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); |