mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-16 14:08:45 +00:00
dm: add cells_count parameter in live DT APIs of_parse_phandle_with_args
In the live tree API ofnode_parse_phandle_with_args, the cell_count argument must be used when cells_name is NULL. But this argument is not provided to the live DT function of_parse_phandle_with_args even it is provided to fdtdec_parse_phandle_with_args. This patch adds support of the cells_count parameter in dev_ and of_node API to allow migration and support of live DT: - of_parse_phandle_with_args Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
3e15c315f9
commit
01d89e3d12
3 changed files with 9 additions and 5 deletions
|
@ -745,13 +745,14 @@ struct device_node *of_parse_phandle(const struct device_node *np,
|
||||||
|
|
||||||
int of_parse_phandle_with_args(const struct device_node *np,
|
int of_parse_phandle_with_args(const struct device_node *np,
|
||||||
const char *list_name, const char *cells_name,
|
const char *list_name, const char *cells_name,
|
||||||
int index, struct of_phandle_args *out_args)
|
int cell_count, int index,
|
||||||
|
struct of_phandle_args *out_args)
|
||||||
{
|
{
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
return __of_parse_phandle_with_args(np, list_name, cells_name, 0,
|
return __of_parse_phandle_with_args(np, list_name, cells_name,
|
||||||
index, out_args);
|
cell_count, index, out_args);
|
||||||
}
|
}
|
||||||
|
|
||||||
int of_count_phandle_with_args(const struct device_node *np,
|
int of_count_phandle_with_args(const struct device_node *np,
|
||||||
|
|
|
@ -409,7 +409,8 @@ int ofnode_parse_phandle_with_args(ofnode node, const char *list_name,
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ret = of_parse_phandle_with_args(ofnode_to_np(node),
|
ret = of_parse_phandle_with_args(ofnode_to_np(node),
|
||||||
list_name, cells_name, index,
|
list_name, cells_name,
|
||||||
|
cell_count, index,
|
||||||
&args);
|
&args);
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -407,6 +407,7 @@ struct device_node *of_parse_phandle(const struct device_node *np,
|
||||||
* @np: pointer to a device tree node containing a list
|
* @np: pointer to a device tree node containing a list
|
||||||
* @list_name: property name that contains a list
|
* @list_name: property name that contains a list
|
||||||
* @cells_name: property name that specifies phandles' arguments count
|
* @cells_name: property name that specifies phandles' arguments count
|
||||||
|
* @cells_count: Cell count to use if @cells_name is NULL
|
||||||
* @index: index of a phandle to parse out
|
* @index: index of a phandle to parse out
|
||||||
* @out_args: optional pointer to output arguments structure (will be filled)
|
* @out_args: optional pointer to output arguments structure (will be filled)
|
||||||
* @return 0 on success (with @out_args filled out if not NULL), -ENOENT if
|
* @return 0 on success (with @out_args filled out if not NULL), -ENOENT if
|
||||||
|
@ -440,7 +441,8 @@ struct device_node *of_parse_phandle(const struct device_node *np,
|
||||||
*/
|
*/
|
||||||
int of_parse_phandle_with_args(const struct device_node *np,
|
int of_parse_phandle_with_args(const struct device_node *np,
|
||||||
const char *list_name, const char *cells_name,
|
const char *list_name, const char *cells_name,
|
||||||
int index, struct of_phandle_args *out_args);
|
int cells_count, int index,
|
||||||
|
struct of_phandle_args *out_args);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* of_count_phandle_with_args() - Count the number of phandle in a list
|
* of_count_phandle_with_args() - Count the number of phandle in a list
|
||||||
|
|
Loading…
Add table
Reference in a new issue