* [PATCH v2] arm64: dts: sprd: sc9860: Simplify clock nodes
@ 2025-11-24 21:00 Rob Herring (Arm)
2025-11-25 13:50 ` patchwork-bot+linux-soc
0 siblings, 1 reply; 3+ messages in thread
From: Rob Herring (Arm) @ 2025-11-24 21:00 UTC (permalink / raw)
To: soc, Krzysztof Kozlowski, Conor Dooley, Orson Zhai, Baolin Wang,
Chunyan Zhang
Cc: devicetree, linux-kernel
The various "syscon" nodes in SC9860 are only referenced by clock
provider nodes in a 1:1 relationship, and nothing else references the
"syscon" nodes. There's no apparent reason for this split. The 2 nodes
can simply be merged into 1 node. The clock driver has supported using
either "reg" or "sprd,syscon" to access registers from the start, so
there shouldn't be any compatibility issues.
With this, DT schema warnings for missing a specific compatible with
"syscon" and non-MMIO devices on "simple-bus" are fixed.
Reviewed-by: Chunyan Zhang <zhang.lyra@gmail.com>
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Arnd, Please apply directly.
v2:
- Correct some indentation
---
arch/arm64/boot/dts/sprd/sc9860.dtsi | 62 ----------------------------
arch/arm64/boot/dts/sprd/whale2.dtsi | 54 ++++++++++++++++--------
2 files changed, 36 insertions(+), 80 deletions(-)
diff --git a/arch/arm64/boot/dts/sprd/sc9860.dtsi b/arch/arm64/boot/dts/sprd/sc9860.dtsi
index d2456d633c39..864ef0a17425 100644
--- a/arch/arm64/boot/dts/sprd/sc9860.dtsi
+++ b/arch/arm64/boot/dts/sprd/sc9860.dtsi
@@ -184,20 +184,6 @@ gic: interrupt-controller@12001000 {
| IRQ_TYPE_LEVEL_HIGH)>;
};
- pmu_gate: pmu-gate {
- compatible = "sprd,sc9860-pmu-gate";
- sprd,syscon = <&pmu_regs>; /* 0x402b0000 */
- clocks = <&ext_26m>;
- #clock-cells = <1>;
- };
-
- pll: pll {
- compatible = "sprd,sc9860-pll";
- sprd,syscon = <&ana_regs>; /* 0x40400000 */
- clocks = <&pmu_gate 0>;
- #clock-cells = <1>;
- };
-
ap_clk: clock-controller@20000000 {
compatible = "sprd,sc9860-ap-clk";
reg = <0 0x20000000 0 0x400>;
@@ -214,19 +200,6 @@ aon_prediv: aon-prediv@402d0000 {
#clock-cells = <1>;
};
- apahb_gate: apahb-gate {
- compatible = "sprd,sc9860-apahb-gate";
- sprd,syscon = <&ap_ahb_regs>; /* 0x20210000 */
- clocks = <&aon_prediv 0>;
- #clock-cells = <1>;
- };
-
- aon_gate: aon-gate {
- compatible = "sprd,sc9860-aon-gate";
- sprd,syscon = <&aon_regs>; /* 0x402e0000 */
- clocks = <&aon_prediv 0>;
- #clock-cells = <1>;
- };
aonsecure_clk: clock-controller@40880000 {
compatible = "sprd,sc9860-aonsecure-clk";
@@ -235,13 +208,6 @@ aonsecure_clk: clock-controller@40880000 {
#clock-cells = <1>;
};
- agcp_gate: agcp-gate {
- compatible = "sprd,sc9860-agcp-gate";
- sprd,syscon = <&agcp_regs>; /* 0x415e0000 */
- clocks = <&aon_prediv 0>;
- #clock-cells = <1>;
- };
-
gpu_clk: clock-controller@60200000 {
compatible = "sprd,sc9860-gpu-clk";
reg = <0 0x60200000 0 0x400>;
@@ -256,13 +222,6 @@ vsp_clk: clock-controller@61000000 {
#clock-cells = <1>;
};
- vsp_gate: vsp-gate {
- compatible = "sprd,sc9860-vsp-gate";
- sprd,syscon = <&vsp_regs>; /* 0x61100000 */
- clocks = <&vsp_clk 0>;
- #clock-cells = <1>;
- };
-
cam_clk: clock-controller@62000000 {
compatible = "sprd,sc9860-cam-clk";
reg = <0 0x62000000 0 0x4000>;
@@ -270,13 +229,6 @@ cam_clk: clock-controller@62000000 {
#clock-cells = <1>;
};
- cam_gate: cam-gate {
- compatible = "sprd,sc9860-cam-gate";
- sprd,syscon = <&cam_regs>; /* 0x62100000 */
- clocks = <&cam_clk 0>;
- #clock-cells = <1>;
- };
-
disp_clk: clock-controller@63000000 {
compatible = "sprd,sc9860-disp-clk";
reg = <0 0x63000000 0 0x400>;
@@ -284,20 +236,6 @@ disp_clk: clock-controller@63000000 {
#clock-cells = <1>;
};
- disp_gate: disp-gate {
- compatible = "sprd,sc9860-disp-gate";
- sprd,syscon = <&disp_regs>; /* 0x63100000 */
- clocks = <&disp_clk 0>;
- #clock-cells = <1>;
- };
-
- apapb_gate: apapb-gate {
- compatible = "sprd,sc9860-apapb-gate";
- sprd,syscon = <&ap_apb_regs>; /* 0x70b00000 */
- clocks = <&ap_clk 0>;
- #clock-cells = <1>;
- };
-
funnel@10001000 { /* SoC Funnel */
compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
reg = <0 0x10001000 0 0x1000>;
diff --git a/arch/arm64/boot/dts/sprd/whale2.dtsi b/arch/arm64/boot/dts/sprd/whale2.dtsi
index a551e14ce826..2ecaa56001b8 100644
--- a/arch/arm64/boot/dts/sprd/whale2.dtsi
+++ b/arch/arm64/boot/dts/sprd/whale2.dtsi
@@ -18,49 +18,67 @@ soc: soc {
#size-cells = <2>;
ranges;
- ap_ahb_regs: syscon@20210000 {
- compatible = "syscon";
+ apahb_gate: clock-controller@20210000 {
reg = <0 0x20210000 0 0x10000>;
+ compatible = "sprd,sc9860-apahb-gate";
+ clocks = <&aon_prediv 0>;
+ #clock-cells = <1>;
};
- pmu_regs: syscon@402b0000 {
- compatible = "syscon";
+ pmu_gate: clock-controller@402b0000 {
reg = <0 0x402b0000 0 0x10000>;
+ compatible = "sprd,sc9860-pmu-gate";
+ clocks = <&ext_26m>;
+ #clock-cells = <1>;
};
- aon_regs: syscon@402e0000 {
- compatible = "syscon";
+ aon_gate: clock-controller@402e0000 {
reg = <0 0x402e0000 0 0x10000>;
+ compatible = "sprd,sc9860-aon-gate";
+ clocks = <&aon_prediv 0>;
+ #clock-cells = <1>;
};
- ana_regs: syscon@40400000 {
- compatible = "syscon";
+ pll: clock-controller@40400000 {
reg = <0 0x40400000 0 0x10000>;
+ compatible = "sprd,sc9860-pll";
+ clocks = <&pmu_gate 0>;
+ #clock-cells = <1>;
};
- agcp_regs: syscon@415e0000 {
- compatible = "syscon";
+ agcp_gate: clock-controller@415e0000 {
reg = <0 0x415e0000 0 0x1000000>;
+ compatible = "sprd,sc9860-agcp-gate";
+ clocks = <&aon_prediv 0>;
+ #clock-cells = <1>;
};
- vsp_regs: syscon@61100000 {
- compatible = "syscon";
+ vsp_gate: clock-controller@61100000 {
reg = <0 0x61100000 0 0x10000>;
+ compatible = "sprd,sc9860-vsp-gate";
+ clocks = <&vsp_clk 0>;
+ #clock-cells = <1>;
};
- cam_regs: syscon@62100000 {
- compatible = "syscon";
+ cam_gate: clock-controller@62100000 {
reg = <0 0x62100000 0 0x10000>;
+ compatible = "sprd,sc9860-cam-gate";
+ clocks = <&cam_clk 0>;
+ #clock-cells = <1>;
};
- disp_regs: syscon@63100000 {
- compatible = "syscon";
+ disp_gate: clock-controller@63100000 {
reg = <0 0x63100000 0 0x10000>;
+ compatible = "sprd,sc9860-disp-gate";
+ clocks = <&disp_clk 0>;
+ #clock-cells = <1>;
};
- ap_apb_regs: syscon@70b00000 {
- compatible = "syscon";
+ apapb_gate: clock-controller@70b00000 {
reg = <0 0x70b00000 0 0x40000>;
+ compatible = "sprd,sc9860-apapb-gate";
+ clocks = <&ap_clk 0>;
+ #clock-cells = <1>;
};
ap-apb@70000000 {
--
2.51.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH v2] arm64: dts: sprd: sc9860: Simplify clock nodes
@ 2025-11-26 18:12 kernel test robot
0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2025-11-26 18:12 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp
::::::
:::::: Manual check reason: "dtcheck: binding changes may go via different trees"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <20251124210031.767382-2-robh@kernel.org>
References: <20251124210031.767382-2-robh@kernel.org>
TO: "Rob Herring (Arm)" <robh@kernel.org>
Hi Rob,
kernel test robot noticed the following build warnings:
[auto build test WARNING on robh/for-next]
[also build test WARNING on krzk/for-next linus/master v6.18-rc7]
[cannot apply to next-20251126]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Rob-Herring-Arm/arm64-dts-sprd-sc9860-Simplify-clock-nodes/20251125-050326
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
patch link: https://lore.kernel.org/r/20251124210031.767382-2-robh%40kernel.org
patch subject: [PATCH v2] arm64: dts: sprd: sc9860: Simplify clock nodes
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: arm64-randconfig-2053-20251125 (https://download.01.org/0day-ci/archive/20251126/202511261907.7TQQIIa4-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 14.3.0
dtschema version: 2025.9.dev21+gaa859412c
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251126/202511261907.7TQQIIa4-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202511261907.7TQQIIa4-lkp@intel.com/
dtcheck warnings: (new ones prefixed by >>)
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@20210000 (sprd,sc9860-apahb-gate): False schema does not allow [[0, 539033600, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@20210000 (sprd,sc9860-apahb-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@402b0000 (sprd,sc9860-pmu-gate): False schema does not allow [[0, 1076559872, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@402b0000 (sprd,sc9860-pmu-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@402e0000 (sprd,sc9860-aon-gate): False schema does not allow [[0, 1076756480, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@402e0000 (sprd,sc9860-aon-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@40400000 (sprd,sc9860-pll): False schema does not allow [[0, 1077936128, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@40400000 (sprd,sc9860-pll): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@415e0000 (sprd,sc9860-agcp-gate): False schema does not allow [[0, 1096679424, 0, 16777216]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@415e0000 (sprd,sc9860-agcp-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@61100000 (sprd,sc9860-vsp-gate): False schema does not allow [[0, 1628438528, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@61100000 (sprd,sc9860-vsp-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@62100000 (sprd,sc9860-cam-gate): False schema does not allow [[0, 1645215744, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@62100000 (sprd,sc9860-cam-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@63100000 (sprd,sc9860-disp-gate): False schema does not allow [[0, 1661992960, 0, 65536]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@63100000 (sprd,sc9860-disp-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@70b00000 (sprd,sc9860-apapb-gate): False schema does not allow [[0, 1890582528, 0, 262144]]
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
>> arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: clock-controller@70b00000 (sprd,sc9860-apapb-gate): 'sprd,syscon' is a required property
from schema $id: http://devicetree.org/schemas/clock/sprd,sc9860-clk.yaml
arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: ap-apb@70000000 (simple-bus): $nodename:0: 'ap-apb@70000000' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yaml
arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: ap-ahb (simple-bus): $nodename:0: 'ap-ahb' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yaml
arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: aon (simple-bus): $nodename:0: 'aon' does not match '^([a-z][a-z0-9\\-]+-bus|bus|localbus|soc|axi|ahb|apb)(@.+)?$'
from schema $id: http://devicetree.org/schemas/simple-bus.yaml
arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: pmic@0 (sprd,sc2731): fuel-gauge@a00: 'sprd,calib-resistance-micro-ohms' is a required property
from schema $id: http://devicetree.org/schemas/mfd/sprd,sc2731.yaml
arch/arm64/boot/dts/sprd/sp9860g-1h10.dtb: fuel-gauge@a00 (sprd,sc2731-fgu): 'sprd,calib-resistance-micro-ohms' is a required property
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-11-26 18:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-24 21:00 [PATCH v2] arm64: dts: sprd: sc9860: Simplify clock nodes Rob Herring (Arm)
2025-11-25 13:50 ` patchwork-bot+linux-soc
-- strict thread matches above, loose matches on Subject: below --
2025-11-26 18:12 kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.