mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
dm: core: Add a way to obtain a string list
At present we support reading a string list a string at a time. Apart from being inefficient, this makes it impossible to separate reading of the devicetree into the of_to_plat() method where it belongs, since any code which needs access to the string must read it from the devicetree. Add a function which returns the string property as an array of pointers to the strings, which is easily used by clients. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -609,6 +609,26 @@ int ofnode_read_string_index(ofnode node, const char *propname, int index,
|
||||
*/
|
||||
int ofnode_read_string_count(ofnode node, const char *property);
|
||||
|
||||
/**
|
||||
* ofnode_read_string_list() - read a list of strings
|
||||
*
|
||||
* This produces a list of string pointers with each one pointing to a string
|
||||
* in the string list. If the property does not exist, it returns {NULL}.
|
||||
*
|
||||
* The data is allocated and the caller is reponsible for freeing the return
|
||||
* value (the list of string pointers). The strings themselves may not be
|
||||
* changed as they point directly into the devicetree property.
|
||||
*
|
||||
* @node: node to check
|
||||
* @listp: returns an allocated, NULL-terminated list of strings if the return
|
||||
* value is > 0, else is set to NULL
|
||||
* @return number of strings in list, 0 if none, -ENOMEM if out of memory,
|
||||
* -EINVAL if no such property, -EENODATA if property is empty
|
||||
* @return: NULL-terminated list of strings (NULL if no property or empty)
|
||||
*/
|
||||
int ofnode_read_string_list(ofnode node, const char *property,
|
||||
const char ***listp);
|
||||
|
||||
/**
|
||||
* ofnode_parse_phandle_with_args() - Find a node pointed by phandle in a list
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user