* [OpenRISC] [PATCH 00/21] DT cpu node iterator
@ 2018-09-05 19:37 Rob Herring
2018-09-05 19:37 ` [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator Rob Herring
2018-09-07 12:54 ` [OpenRISC] [PATCH 00/21] DT cpu node iterator Michal Simek
0 siblings, 2 replies; 5+ messages in thread
From: Rob Herring @ 2018-09-05 19:37 UTC (permalink / raw)
To: openrisc
This series adds an iterator for cpu nodes and converts users over to use
it or of_get_cpu_node in some cases. This allows us to remove the
dependency on device_type property for cpu nodes though removing that
from DTS files will have to wait for some time. In some cases, this makes
the DT search more strict by only looking in /cpus child nodes rather
than any node with the device_type == cpu. The iterator also honors the
status property which is often forgotten.
I've only tested on ARM under QEMU and compiled powerpc.
Rob
Rob Herring (21):
of: Add cpu node iterator for_each_of_cpu_node()
of: Support matching cpu nodes with no 'reg' property
ARM: use for_each_of_cpu_node iterator
ARM: topology: remove unneeded check for /cpus node
ARM: shmobile: use for_each_of_cpu_node iterator
arm64: use for_each_of_cpu_node iterator
c6x: use for_each_of_cpu_node iterator
microblaze: get cpu node with of_get_cpu_node
nios2: get cpu node with of_get_cpu_node
openrisc: use for_each_of_cpu_node iterator
powerpc: use for_each_of_cpu_node iterator
powerpc: 4xx: get cpu node with of_get_cpu_node
powerpc: 8xx: get cpu node with of_get_cpu_node
riscv: use for_each_of_cpu_node iterator
SH: use for_each_of_cpu_node iterator
x86: DT: use for_each_of_cpu_node iterator
clk: mvebu: use for_each_of_cpu_node iterator
edac: cpc925: use for_each_of_cpu_node iterator
iommu: fsl_pamu: use for_each_of_cpu_node iterator
of: use for_each_of_cpu_node iterator
fbdev: fsl-diu: get cpu node with of_get_cpu_node
arch/arm/kernel/devtree.c | 5 +--
arch/arm/kernel/topology.c | 6 ---
arch/arm/mach-shmobile/pm-rcar-gen2.c | 8 +---
arch/arm/mach-shmobile/pm-rmobile.c | 2 +-
arch/arm/mach-shmobile/timer.c | 10 +----
arch/arm64/kernel/smp.c | 2 +-
arch/c6x/kernel/setup.c | 11 ++---
arch/microblaze/kernel/cpu/cpuinfo.c | 4 +-
arch/nios2/kernel/cpuinfo.c | 4 +-
arch/openrisc/kernel/setup.c | 3 +-
arch/powerpc/platforms/4xx/soc.c | 2 +-
arch/powerpc/platforms/8xx/m8xx_setup.c | 5 ++-
arch/powerpc/platforms/powermac/feature.c | 51 ++++++++---------------
arch/powerpc/platforms/powermac/setup.c | 15 +++----
arch/riscv/kernel/smpboot.c | 2 +-
arch/sh/boards/of-generic.c | 2 +-
arch/x86/kernel/devicetree.c | 2 +-
drivers/clk/mvebu/clk-cpu.c | 4 +-
drivers/edac/cpc925_edac.c | 20 +--------
drivers/iommu/fsl_pamu.c | 2 +-
drivers/of/base.c | 43 ++++++++++++++++++-
drivers/of/of_numa.c | 15 +------
drivers/video/fbdev/fsl-diu-fb.c | 2 +-
include/linux/of.h | 11 +++++
24 files changed, 111 insertions(+), 120 deletions(-)
--
2.17.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator
2018-09-05 19:37 [OpenRISC] [PATCH 00/21] DT cpu node iterator Rob Herring
@ 2018-09-05 19:37 ` Rob Herring
2018-09-06 9:12 ` Stafford Horne
2018-09-07 12:54 ` [OpenRISC] [PATCH 00/21] DT cpu node iterator Michal Simek
1 sibling, 1 reply; 5+ messages in thread
From: Rob Herring @ 2018-09-05 19:37 UTC (permalink / raw)
To: openrisc
Use the for_each_of_cpu_node iterator to iterate over cpu nodes. This
has the side effect of defaulting to iterating using "cpu" node names in
preference to the deprecated (for FDT) device_type == "cpu".
This also fixes a leaked reference for cpus node.
Cc: Jonas Bonn <jonas@southpole.se>
Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Cc: Stafford Horne <shorne@gmail.com>
Cc: openrisc at lists.librecores.org
Signed-off-by: Rob Herring <robh@kernel.org>
---
Please ack and I will take via the DT tree. This is dependent on the
first 2 patches.
arch/openrisc/kernel/setup.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/openrisc/kernel/setup.c b/arch/openrisc/kernel/setup.c
index 9d28ab14d139..e17fcd83120f 100644
--- a/arch/openrisc/kernel/setup.c
+++ b/arch/openrisc/kernel/setup.c
@@ -158,9 +158,8 @@ static struct device_node *setup_find_cpu_node(int cpu)
{
u32 hwid;
struct device_node *cpun;
- struct device_node *cpus = of_find_node_by_path("/cpus");
- for_each_available_child_of_node(cpus, cpun) {
+ for_each_of_cpu_node(cpun) {
if (of_property_read_u32(cpun, "reg", &hwid))
continue;
if (hwid == cpu)
--
2.17.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator
2018-09-05 19:37 ` [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator Rob Herring
@ 2018-09-06 9:12 ` Stafford Horne
0 siblings, 0 replies; 5+ messages in thread
From: Stafford Horne @ 2018-09-06 9:12 UTC (permalink / raw)
To: openrisc
On Wed, Sep 05, 2018 at 02:37:27PM -0500, Rob Herring wrote:
> Use the for_each_of_cpu_node iterator to iterate over cpu nodes. This
> has the side effect of defaulting to iterating using "cpu" node names in
> preference to the deprecated (for FDT) device_type == "cpu".
>
> This also fixes a leaked reference for cpus node.
>
> Cc: Jonas Bonn <jonas@southpole.se>
> Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
> Cc: Stafford Horne <shorne@gmail.com>
> Cc: openrisc at lists.librecores.org
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
> Please ack and I will take via the DT tree. This is dependent on the
> first 2 patches.
>
> arch/openrisc/kernel/setup.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/openrisc/kernel/setup.c b/arch/openrisc/kernel/setup.c
> index 9d28ab14d139..e17fcd83120f 100644
> --- a/arch/openrisc/kernel/setup.c
> +++ b/arch/openrisc/kernel/setup.c
> @@ -158,9 +158,8 @@ static struct device_node *setup_find_cpu_node(int cpu)
> {
> u32 hwid;
> struct device_node *cpun;
> - struct device_node *cpus = of_find_node_by_path("/cpus");
>
> - for_each_available_child_of_node(cpus, cpun) {
> + for_each_of_cpu_node(cpun) {
> if (of_property_read_u32(cpun, "reg", &hwid))
> continue;
> if (hwid == cpu)
This looks fine to me. Thanks Rob
Acked-by: Stafford Horne <shorne@gmail.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [OpenRISC] [PATCH 00/21] DT cpu node iterator
2018-09-05 19:37 [OpenRISC] [PATCH 00/21] DT cpu node iterator Rob Herring
2018-09-05 19:37 ` [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator Rob Herring
@ 2018-09-07 12:54 ` Michal Simek
2018-09-07 13:58 ` Rob Herring
1 sibling, 1 reply; 5+ messages in thread
From: Michal Simek @ 2018-09-07 12:54 UTC (permalink / raw)
To: openrisc
Hi Rob,
2018-09-05 21:37 GMT+02:00 Rob Herring <robh@kernel.org>:
> This series adds an iterator for cpu nodes and converts users over to use
> it or of_get_cpu_node in some cases. This allows us to remove the
> dependency on device_type property for cpu nodes though removing that
> from DTS files will have to wait for some time. In some cases, this makes
> the DT search more strict by only looking in /cpus child nodes rather
> than any node with the device_type == cpu. The iterator also honors the
> status property which is often forgotten.
>
> I've only tested on ARM under QEMU and compiled powerpc.
>
Do you have this somewhere in your tree not to apply 21 patches by hand?
Thanks,
Michal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.librecores.org/pipermail/openrisc/attachments/20180907/4c63e825/attachment.html>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [OpenRISC] [PATCH 00/21] DT cpu node iterator
2018-09-07 12:54 ` [OpenRISC] [PATCH 00/21] DT cpu node iterator Michal Simek
@ 2018-09-07 13:58 ` Rob Herring
0 siblings, 0 replies; 5+ messages in thread
From: Rob Herring @ 2018-09-07 13:58 UTC (permalink / raw)
To: openrisc
On Fri, Sep 7, 2018 at 7:54 AM Michal Simek <monstr@monstr.eu> wrote:
>
> Hi Rob,
>
> 2018-09-05 21:37 GMT+02:00 Rob Herring <robh@kernel.org>:
>>
>> This series adds an iterator for cpu nodes and converts users over to use
>> it or of_get_cpu_node in some cases. This allows us to remove the
>> dependency on device_type property for cpu nodes though removing that
>> from DTS files will have to wait for some time. In some cases, this makes
>> the DT search more strict by only looking in /cpus child nodes rather
>> than any node with the device_type == cpu. The iterator also honors the
>> status property which is often forgotten.
>>
>> I've only tested on ARM under QEMU and compiled powerpc.
>
>
>
> Do you have this somewhere in your tree not to apply 21 patches by hand?
Yes, dt/cpu-type branch on my kernel.org tree.
Rob
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2018-09-07 13:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-05 19:37 [OpenRISC] [PATCH 00/21] DT cpu node iterator Rob Herring
2018-09-05 19:37 ` [OpenRISC] [PATCH 10/21] openrisc: use for_each_of_cpu_node iterator Rob Herring
2018-09-06 9:12 ` Stafford Horne
2018-09-07 12:54 ` [OpenRISC] [PATCH 00/21] DT cpu node iterator Michal Simek
2018-09-07 13:58 ` Rob Herring
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox