]> git.baikalelectronics.ru Git - kernel.git/commit
of: Let of_for_each_phandle fallback to non-negative cell_count
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Sat, 24 Aug 2019 13:28:46 +0000 (15:28 +0200)
committerRob Herring <robh@kernel.org>
Fri, 13 Sep 2019 21:55:12 +0000 (16:55 -0500)
commit6f62331280f6a6de322ed7c357aa4e9abf68b94a
treeda39eab543bb68e33f59f138d9f89715dc88f66d
parenta60ee6f88cb09b34f1457a274c61b32f75bac77b
of: Let of_for_each_phandle fallback to non-negative cell_count

Referencing device tree nodes from a property allows to pass arguments.
This is for example used for referencing gpios. This looks as follows:

gpio_ctrl: gpio-controller {
#gpio-cells = <2>
...
}

someothernode {
gpios = <&gpio_ctrl 5 0 &gpio_ctrl 3 0>;
...
}

To know the number of arguments this must be either fixed, or the
referenced node is checked for a $cells_name (here: "#gpio-cells")
property and with this information the start of the second reference can
be determined.

Currently regulators are referenced with no additional arguments. To
allow some optional arguments without having to change all referenced
nodes this change introduces a way to specify a default cell_count. So
when a phandle is parsed we check for the $cells_name property and use
it as before if present. If it is not present we fall back to
cells_count if non-negative and only fail if cells_count is smaller than
zero.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Rob Herring <robh@kernel.org>
drivers/of/base.c