diff options
author | Grant Likely <grant.likely@linaro.org> | 2014-06-26 15:40:48 +0100 |
---|---|---|
committer | Grant Likely <grant.likely@linaro.org> | 2014-07-07 13:59:45 +0100 |
commit | 6afc0dc381573559251de9a8259404f49e6aed14 (patch) | |
tree | ae2e323b3556a08aa1756f604770d94c963e4303 /drivers/of/of_private.h | |
parent | c05aba2bd5f9dd3f363611ff844513de1341ac60 (diff) | |
download | talos-op-linux-6afc0dc381573559251de9a8259404f49e6aed14.tar.gz talos-op-linux-6afc0dc381573559251de9a8259404f49e6aed14.zip |
of: Move CONFIG_OF_DYNAMIC code into a separate file
Split the dynamic device tree code into a separate file to make it
really clear what features CONFIF_OF_DYNAMIC add to the kernel. Without
CONFIG_OF_DYNAMIC only properties can be changed, and notifiers do not
get sent. Enabling it turns on reference counting, notifiers and the
ability to add and remove nodes.
v2: Moved of_node_release() into dynamic.c
Signed-off-by: Grant Likely <grant.likely@linaro.org>
Signed-off-by: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
Cc: Rob Herring <robh+dt@kernel.org>
Diffstat (limited to 'drivers/of/of_private.h')
-rw-r--r-- | drivers/of/of_private.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/drivers/of/of_private.h b/drivers/of/of_private.h index fcc70e74dfe0..c270f2037779 100644 --- a/drivers/of/of_private.h +++ b/drivers/of/of_private.h @@ -33,4 +33,22 @@ struct alias_prop { extern struct mutex of_mutex; extern struct list_head aliases_lookup; + +static inline struct device_node *kobj_to_device_node(struct kobject *kobj) +{ + return container_of(kobj, struct device_node, kobj); +} + +#if defined(CONFIG_OF_DYNAMIC) +extern int of_property_notify(int action, struct device_node *np, + struct property *prop); +extern void of_node_release(struct kobject *kobj); +#else /* CONFIG_OF_DYNAMIC */ +static inline int of_property_notify(int action, struct device_node *np, + struct property *prop) +{ + return 0; +} +#endif /* CONFIG_OF_DYNAMIC */ + #endif /* _LINUX_OF_PRIVATE_H */ |