[PATCH v2 16/45] dm: core: Drop the const from ofnode
Simon Glass
sjg at chromium.org
Wed Sep 7 04:27:04 CEST 2022
Now that we support writing to ofnodes, the const is not accurate. Drop
it to avoid undesirable casting.
Also drop the ofnode_to_npw() which is now the same as ofnode_to_np().
Signed-off-by: Simon Glass <sjg at chromium.org>
---
(no changes since v1)
drivers/core/ofnode.c | 4 ++--
include/dm/ofnode.h | 22 ++--------------------
include/dm/ofnode_decl.h | 2 +-
3 files changed, 5 insertions(+), 23 deletions(-)
diff --git a/drivers/core/ofnode.c b/drivers/core/ofnode.c
index 855f5f40647..ac6d259601c 100644
--- a/drivers/core/ofnode.c
+++ b/drivers/core/ofnode.c
@@ -206,7 +206,7 @@ ofnode ofnode_find_subnode(ofnode node, const char *subnode_name)
debug("%s: %s: ", __func__, subnode_name);
if (ofnode_is_np(node)) {
- const struct device_node *np = ofnode_to_np(node);
+ struct device_node *np = ofnode_to_np(node);
for (np = np->child; np; np = np->sibling) {
if (!strcmp(subnode_name, np->name))
@@ -1109,7 +1109,7 @@ int ofnode_write_prop(ofnode node, const char *propname, const void *value,
int len)
{
if (of_live_active())
- return of_write_prop(ofnode_to_npw(node), propname, len, value);
+ return of_write_prop(ofnode_to_np(node), propname, len, value);
else
return fdt_setprop((void *)gd->fdt_blob, ofnode_to_offset(node),
propname, value, len);
diff --git a/include/dm/ofnode.h b/include/dm/ofnode.h
index e09127d1ce2..ee762442784 100644
--- a/include/dm/ofnode.h
+++ b/include/dm/ofnode.h
@@ -35,7 +35,7 @@ struct ofnode_phandle_args {
* @node: Reference containing struct device_node * (possibly invalid)
* Return: pointer to device node (can be NULL)
*/
-static inline const struct device_node *ofnode_to_np(ofnode node)
+static inline struct device_node *ofnode_to_np(ofnode node)
{
#ifdef OF_CHECKS
if (!of_live_active())
@@ -44,24 +44,6 @@ static inline const struct device_node *ofnode_to_np(ofnode node)
return node.np;
}
-/**
- * ofnode_to_npw() - convert an ofnode to a writeable live DT node pointer
- *
- * This cannot be called if the reference contains an offset.
- *
- * @node: Reference containing struct device_node * (possibly invalid)
- * Return: pointer to device node (can be NULL)
- */
-static inline struct device_node *ofnode_to_npw(ofnode node)
-{
-#ifdef OF_CHECKS
- if (!of_live_active())
- return NULL;
-#endif
- /* Drop constant */
- return (struct device_node *)node.np;
-}
-
/**
* ofnode_to_offset() - convert an ofnode to a flat DT offset
*
@@ -117,7 +99,7 @@ static inline ofnode offset_to_ofnode(int of_offset)
* @np: Live node pointer (can be NULL)
* Return: reference to the associated node pointer
*/
-static inline ofnode np_to_ofnode(const struct device_node *np)
+static inline ofnode np_to_ofnode(struct device_node *np)
{
ofnode node;
diff --git a/include/dm/ofnode_decl.h b/include/dm/ofnode_decl.h
index 266253d5e33..8d0d7885aa6 100644
--- a/include/dm/ofnode_decl.h
+++ b/include/dm/ofnode_decl.h
@@ -39,7 +39,7 @@
* is not a really a pointer to a node: it is an offset value. See above.
*/
typedef union ofnode_union {
- const struct device_node *np;
+ struct device_node *np;
long of_offset;
} ofnode;
--
2.37.2.789.g6183377224-goog
More information about the U-Boot
mailing list