summaryrefslogtreecommitdiff
path: root/include/dm/of_access.h
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2017-07-11 20:28:46 -0400
committerTom Rini <trini@konsulko.com>2017-07-11 20:28:46 -0400
commit8d3a25685e4aac7070365a2b3c53c2c81b27930f (patch)
tree7956bf5e00e3490169a7fc41c42a4416da8db51f /include/dm/of_access.h
parentd43ef73bf26614af9b01fd57baa1a1fcf24bfade (diff)
parent8c9eaadaaad888e0cd77512553d0d02d476b4dde (diff)
Merge git://git.denx.de/u-boot-dm
Diffstat (limited to 'include/dm/of_access.h')
-rw-r--r--include/dm/of_access.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/include/dm/of_access.h b/include/dm/of_access.h
index 142f0f43c9..c5ea391aec 100644
--- a/include/dm/of_access.h
+++ b/include/dm/of_access.h
@@ -61,6 +61,26 @@ int of_n_addr_cells(const struct device_node *np);
int of_n_size_cells(const struct device_node *np);
/**
+ * of_simple_addr_cells() - Get the address cells property in a node
+ *
+ * This function matches fdt_address_cells().
+ *
+ * @np: Node pointer to check
+ * @return value of #address-cells property in this node, or 2 if none
+ */
+int of_simple_addr_cells(const struct device_node *np);
+
+/**
+ * of_simple_size_cells() - Get the size cells property in a node
+ *
+ * This function matches fdt_size_cells().
+ *
+ * @np: Node pointer to check
+ * @return value of #size-cells property in this node, or 2 if none
+ */
+int of_simple_size_cells(const struct device_node *np);
+
+/**
* of_find_property() - find a property in a node
*
* @np: Pointer to device node holding property
@@ -261,6 +281,24 @@ static inline int of_property_read_string_index(const struct device_node *np,
}
/**
+ * of_property_count_strings() - Find and return the number of strings from a
+ * multiple strings property.
+ * @np: device node from which the property value is to be read.
+ * @propname: name of the property to be searched.
+ *
+ * Search for a property in a device tree node and retrieve the number of null
+ * terminated string contain in it. Returns the number of strings on
+ * success, -EINVAL if the property does not exist, -ENODATA if property
+ * does not have a value, and -EILSEQ if the string is not null-terminated
+ * within the length of the property data.
+ */
+static inline int of_property_count_strings(const struct device_node *np,
+ const char *propname)
+{
+ return of_property_read_string_helper(np, propname, NULL, 0, 0);
+}
+
+/**
* of_parse_phandle - Resolve a phandle property to a device_node pointer
* @np: Pointer to device node holding phandle property
* @phandle_name: Name of property holding a phandle value