Hi Grant, Today's linux-next merge of the devicetree tree got a conflict in include/linux/of.h between commits b31384fa5de3 ("Driver core: Unified device properties interface for platform firmware") from the pm tree and a4b4e0461ec5 ("of: Add standard property for poweroff capability") from the mfd and regulator trees and commit 7518b5890d8a ("of/overlay: Introduce DT overlay support") from the devicetree tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc include/linux/of.h index facd94e45462,aa01cf5852f8..000000000000 --- a/include/linux/of.h +++ b/include/linux/of.h @@@ -23,7 -23,7 +23,8 @@@ #include <linux/spinlock.h> #include <linux/topology.h> #include <linux/notifier.h> +#include <linux/property.h> + #include <linux/list.h> #include <asm/byteorder.h> #include <asm/errno.h> @@@ -108,27 -111,18 +114,27 @@@ static inline struct device_node *of_no static inline void of_node_put(struct device_node *node) { } #endif /* !CONFIG_OF_DYNAMIC */ -#ifdef CONFIG_OF - /* Pointer for first entry in chain of all nodes. */ - extern struct device_node *of_allnodes; + extern struct device_node *of_root; extern struct device_node *of_chosen; extern struct device_node *of_aliases; extern struct device_node *of_stdout; extern raw_spinlock_t devtree_lock; +#ifdef CONFIG_OF +static inline bool is_of_node(struct fwnode_handle *fwnode) +{ + return fwnode && fwnode->type == FWNODE_OF; +} + +static inline struct device_node *of_node(struct fwnode_handle *fwnode) +{ + return fwnode ? container_of(fwnode, struct device_node, fwnode) : NULL; +} + static inline bool of_have_populated_dt(void) { - return of_allnodes != NULL; + return of_root != NULL; } static inline bool of_node_is_root(const struct device_node *node) @@@ -956,14 -959,33 +992,44 @@@ static inline int of_reconfig_get_state extern int of_resolve_phandles(struct device_node *tree); /** + * of_system_has_poweroff_source - Tells if poweroff-source is found for device_node + * @np: Pointer to the given device_node + * + * return true if present false otherwise + */ +static inline bool of_system_has_poweroff_source(const struct device_node *np) +{ + return of_property_read_bool(np, "poweroff-source"); +} + ++/** + * Overlay support + */ + + #ifdef CONFIG_OF_OVERLAY + + /* ID based overlays; the API for external users */ + int of_overlay_create(struct device_node *tree); + int of_overlay_destroy(int id); + int of_overlay_destroy_all(void); + + #else + + static inline int of_overlay_create(struct device_node *tree) + { + return -ENOTSUPP; + } + + static inline int of_overlay_destroy(int id) + { + return -ENOTSUPP; + } + + static inline int of_overlay_destroy_all(void) + { + return -ENOTSUPP; + } + + #endif + #endif /* _LINUX_OF_H */
Attachment:
pgpyWfq5yIwoO.pgp
Description: OpenPGP digital signature