aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/of.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/of.h')
-rw-r--r--include/linux/of.h29
1 files changed, 21 insertions, 8 deletions
diff --git a/include/linux/of.h b/include/linux/of.h
index 6cfea9aa401f..5ebcc5c8e423 100644
--- a/include/linux/of.h
+++ b/include/linux/of.h
@@ -22,6 +22,7 @@
22#include <linux/mod_devicetable.h> 22#include <linux/mod_devicetable.h>
23#include <linux/spinlock.h> 23#include <linux/spinlock.h>
24#include <linux/topology.h> 24#include <linux/topology.h>
25#include <linux/notifier.h>
25 26
26#include <asm/byteorder.h> 27#include <asm/byteorder.h>
27#include <asm/errno.h> 28#include <asm/errno.h>
@@ -282,16 +283,28 @@ extern int of_alias_get_id(struct device_node *np, const char *stem);
282 283
283extern int of_machine_is_compatible(const char *compat); 284extern int of_machine_is_compatible(const char *compat);
284 285
285extern int prom_add_property(struct device_node* np, struct property* prop); 286extern int of_add_property(struct device_node *np, struct property *prop);
286extern int prom_remove_property(struct device_node *np, struct property *prop); 287extern int of_remove_property(struct device_node *np, struct property *prop);
287extern int prom_update_property(struct device_node *np, 288extern int of_update_property(struct device_node *np, struct property *newprop);
288 struct property *newprop);
289 289
290#if defined(CONFIG_OF_DYNAMIC)
291/* For updating the device tree at runtime */ 290/* For updating the device tree at runtime */
292extern void of_attach_node(struct device_node *); 291#define OF_RECONFIG_ATTACH_NODE 0x0001
293extern void of_detach_node(struct device_node *); 292#define OF_RECONFIG_DETACH_NODE 0x0002
294#endif 293#define OF_RECONFIG_ADD_PROPERTY 0x0003
294#define OF_RECONFIG_REMOVE_PROPERTY 0x0004
295#define OF_RECONFIG_UPDATE_PROPERTY 0x0005
296
297struct of_prop_reconfig {
298 struct device_node *dn;
299 struct property *prop;
300};
301
302extern int of_reconfig_notifier_register(struct notifier_block *);
303extern int of_reconfig_notifier_unregister(struct notifier_block *);
304extern int of_reconfig_notify(unsigned long, void *);
305
306extern int of_attach_node(struct device_node *);
307extern int of_detach_node(struct device_node *);
295 308
296#define of_match_ptr(_ptr) (_ptr) 309#define of_match_ptr(_ptr) (_ptr)
297 310