linux/drivers/of
Ulf Hansson b9f8c26afc of: base: Add of_get_cpu_state_node() to get idle states for a CPU node
The CPU's idle state nodes are currently parsed at the common cpuidle DT
library, but also when initializing data for specific CPU idle operations,
as in the PSCI cpuidle driver case and qcom-spm cpuidle case.

To avoid open-coding, let's introduce of_get_cpu_state_node(), which takes
the device node for the CPU and the index to the requested idle state node,
as in-parameters. In case a corresponding idle state node is found, it
returns the node with the refcount incremented for it, else it returns
NULL.

Moreover, for PSCI there are two options to describe the CPU's idle states
[1], either via a flattened description or a hierarchical layout. Hence,
let's take both options into account.

[1] Documentation/devicetree/bindings/arm/psci.yaml

Suggested-by: Sudeep Holla <sudeep.holla@arm.com>
Co-developed-by: Lina Iyer <lina.iyer@linaro.org>
Signed-off-by: Lina Iyer <lina.iyer@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Reviewed-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
2020-01-02 16:50:04 +01:00
..
unittest-data of/unittest: Add dma-ranges address translation tests 2019-10-08 13:55:26 -05:00
address.c of: Make of_dma_get_range() work on bus nodes 2019-10-09 12:30:09 -05:00
base.c of: base: Add of_get_cpu_state_node() to get idle states for a CPU node 2020-01-02 16:50:04 +01:00
device.c dma-mapping: treat dev->bus_dma_mask as a DMA limit 2019-11-21 18:14:35 +01:00
dynamic.c of: Remove struct device_node.type pointer 2019-01-10 16:24:44 -06:00
fdt_address.c
fdt.c Devicetree updates for v5.5: 2019-12-02 11:41:35 -08:00
irq.c of: irq: fix a trivial typo in a doc comment 2019-08-14 20:12:16 -06:00
Kconfig dma-mapping: improve selection of dma_declare_coherent availability 2019-02-20 07:26:35 -07:00
kobj.c of: overlay: add missing of_node_get() in __of_attach_node_sysfs 2018-11-08 22:10:53 -08:00
Makefile
of_mdio.c of: mdio: export of_mdiobus_child_is_phy 2019-12-19 17:32:21 -08:00
of_net.c net: of_get_phy_mode: Change API to solve int/unit warnings 2019-11-04 11:21:25 -08:00
of_numa.c of, numa: Validate some distance map rules 2018-11-08 12:44:34 -06:00
of_private.h of: Factor out #{addr,size}-cells parsing 2019-10-08 13:50:22 -05:00
of_reserved_mem.c of: reserved_mem: add missing of_node_put() for proper ref-counting 2019-10-23 15:15:05 -05:00
overlay.c of: overlay: add_changeset_property() memory leak 2019-11-26 12:32:21 -07:00
pdt.c of: Remove struct device_node.type pointer 2019-01-10 16:24:44 -06:00
platform.c of/platform: Unconditionally pause/resume sync state during kernel init 2019-12-12 18:39:52 -06:00
property.c Devicetree updates for v5.5: 2019-12-02 11:41:35 -08:00
resolver.c of: resolver: Add of_node_put() before return and break 2019-08-12 16:52:24 -06:00
unittest.c of: unittest: fix memory leak in attach_node_and_children 2019-11-26 12:32:43 -07:00