Linux-OMAP Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH 00/11] Update omap5 dts files to probe with genpd
@ 2021-03-08 15:11 Tony Lindgren
  2021-03-08 15:11 ` [PATCH 01/11] ARM: dts: Configure interconnect target module for omap5 dmm Tony Lindgren
                   ` (10 more replies)
  0 siblings, 11 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

Hi all,

Here are the devicetree changes to update omap5 to probe with genpd and
simple-pm-bus.

These patches are against v5.12-rc2, and depend on the following preparatory
patches posted earlier:

"clk: ti: omap5: Add missing gpmc and ocmc clkctrl"
"ARM: dts: Fix moving mmc devices with aliases for omap4 & 5"
"ARM: OMAP2+: Init both prm and prcm nodes early for clocks"
"bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first"
"bus: ti-sysc: Fix initializing module_pa for modules without sysc register"
"bus: ti-sysc: Fix warning on unbind if reset is not deasserted"

I will post another series to drop the legacy data.

Regards,

Tony


Tony Lindgren (11):
  ARM: dts: Configure interconnect target module for omap5 dmm
  ARM: dts: Configure interconnect target module for omap5 emif
  ARM: dts: Configure interconnect target module for omap5 mpu
  ARM: dts: Configure interconnect target module for omap5 gpmc
  ARM: dts: Configure interconnect target module for omap5 sata
  ARM: dts: Move omap5 mmio-sram out of l3 interconnect
  ARM: dts: Move omap5 l3-noc to a separate node
  ARM: dts: Configure simple-pm-bus for omap5 l4_wkup
  ARM: dts: Configure simple-pm-bus for omap5 l4_per
  ARM: dts: Configure simple-pm-bus for omap5 l4_cfg
  ARM: dts: Configure simple-pm-bus for omap5 l3

 arch/arm/boot/dts/omap5-l4.dtsi |  67 ++++++++---
 arch/arm/boot/dts/omap5.dtsi    | 204 ++++++++++++++++++++------------
 2 files changed, 178 insertions(+), 93 deletions(-)

-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 01/11] ARM: dts: Configure interconnect target module for omap5 dmm
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 02/11] ARM: dts: Configure interconnect target module for omap5 emif Tony Lindgren
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe devices with device tree only configuration using
ti-sysc interconnect target module driver. Let's configure the
module, but keep the legacy "ti,hwmods" property to avoid new boot
time warnings. The legacy property will be removed in later patches
together with the legacy platform data.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 21 +++++++++++++++++----
 1 file changed, 17 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -246,11 +246,24 @@ ipu: ipu@55020000 {
 			status = "disabled";
 		};
 
-		dmm@4e000000 {
-			compatible = "ti,omap5-dmm";
-			reg = <0x4e000000 0x800>;
-			interrupts = <0 113 0x4>;
+		target-module@4e000000 {
+			compatible = "ti,sysc-omap2", "ti,sysc";
 			ti,hwmods = "dmm";
+			reg = <0x4e000000 0x4>,
+			      <0x4e000010 0x4>;
+			reg-names = "rev", "sysc";
+			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>;
+			ranges = <0x0 0x4e000000 0x2000000>;
+			#size-cells = <1>;
+			#address-cells = <1>;
+
+			dmm@0 {
+				compatible = "ti,omap5-dmm";
+				reg = <0 0x800>;
+				interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
+			};
 		};
 
 		emif1: emif@4c000000 {
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 02/11] ARM: dts: Configure interconnect target module for omap5 emif
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
  2021-03-08 15:11 ` [PATCH 01/11] ARM: dts: Configure interconnect target module for omap5 dmm Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 03/11] ARM: dts: Configure interconnect target module for omap5 mpu Tony Lindgren
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe devices with device tree only configuration using
ti-sysc interconnect target module driver. Let's configure the
module, but keep the legacy "ti,hwmods" property to avoid new boot
time warnings. The legacy property will be removed in later patches
together with the legacy platform data.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 62 ++++++++++++++++++++++++------------
 1 file changed, 42 insertions(+), 20 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -266,28 +266,50 @@ dmm@0 {
 			};
 		};
 
-		emif1: emif@4c000000 {
-			compatible	= "ti,emif-4d5";
-			ti,hwmods	= "emif1";
-			ti,no-idle-on-init;
-			phy-type	= <2>; /* DDR PHY type: Intelli PHY */
-			reg = <0x4c000000 0x400>;
-			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
-			hw-caps-read-idle-ctrl;
-			hw-caps-ll-interface;
-			hw-caps-temp-alert;
+		target-module@4c000000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			ti,hwmods = "emif1";
+			reg = <0x4c000000 0x4>;
+			reg-names = "rev";
+			clocks = <&emif_clkctrl OMAP5_EMIF1_CLKCTRL 0>;
+			clock-names = "fck";
+			ti,no-idle;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x4c000000 0x1000000>;
+
+			emif1: emif@0 {
+				compatible = "ti,emif-4d5";
+				reg = <0 0x400>;
+				interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+				phy-type = <2>; /* DDR PHY type: Intelli PHY */
+				hw-caps-read-idle-ctrl;
+				hw-caps-ll-interface;
+				hw-caps-temp-alert;
+			};
 		};
 
-		emif2: emif@4d000000 {
-			compatible	= "ti,emif-4d5";
-			ti,hwmods	= "emif2";
-			ti,no-idle-on-init;
-			phy-type	= <2>; /* DDR PHY type: Intelli PHY */
-			reg = <0x4d000000 0x400>;
-			interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
-			hw-caps-read-idle-ctrl;
-			hw-caps-ll-interface;
-			hw-caps-temp-alert;
+		target-module@4d000000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			ti,hwmods = "emif2";
+			reg = <0x4d000000 0x4>;
+			reg-names = "rev";
+			clocks = <&emif_clkctrl OMAP5_EMIF2_CLKCTRL 0>;
+			clock-names = "fck";
+			ti,no-idle;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x4d000000 0x1000000>;
+
+			emif2: emif@0 {
+				compatible = "ti,emif-4d5";
+				reg = <0 0x400>;
+				interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+				phy-type = <2>; /* DDR PHY type: Intelli PHY */
+				hw-caps-read-idle-ctrl;
+				hw-caps-ll-interface;
+				hw-caps-temp-alert;
+			};
 		};
 
 		aes1_target: target-module@4b501000 {
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 03/11] ARM: dts: Configure interconnect target module for omap5 mpu
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
  2021-03-08 15:11 ` [PATCH 01/11] ARM: dts: Configure interconnect target module for omap5 dmm Tony Lindgren
  2021-03-08 15:11 ` [PATCH 02/11] ARM: dts: Configure interconnect target module for omap5 emif Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc Tony Lindgren
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe devices with device tree only configuration using
ti-sysc interconnect target module driver.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -125,19 +125,6 @@ wakeupgen: interrupt-controller@48281000 {
 		interrupt-parent = <&gic>;
 	};
 
-	/*
-	 * The soc node represents the soc top level view. It is used for IPs
-	 * that are not memory mapped in the MPU view or for the MPU itself.
-	 */
-	soc {
-		compatible = "ti,omap-infra";
-		mpu {
-			compatible = "ti,omap4-mpu";
-			ti,hwmods = "mpu";
-			sram = <&ocmcram>;
-		};
-	};
-
 	/*
 	 * XXX: Use a flat representation of the OMAP3 interconnect.
 	 * The real OMAP interconnect network is quite complex.
@@ -167,6 +154,21 @@ l4_cfg: interconnect@4a000000 {
 		l4_per: interconnect@48000000 {
 		};
 
+		target-module@48210000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			power-domains = <&prm_mpu>;
+			clocks = <&mpu_clkctrl OMAP5_MPU_CLKCTRL 0>;
+			clock-names = "fck";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0x48210000 0x1f0000>;
+
+			mpu {
+				compatible = "ti,omap4-mpu";
+				sram = <&ocmcram>;
+			};
+		};
+
 		l4_abe: interconnect@40100000 {
 		};
 
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (2 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 03/11] ARM: dts: Configure interconnect target module for omap5 mpu Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-09  6:58   ` kernel test robot
  2021-03-08 15:11 ` [PATCH 05/11] ARM: dts: Configure interconnect target module for omap5 sata Tony Lindgren
                   ` (6 subsequent siblings)
  10 siblings, 1 reply; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe devices with device tree only configuration using
ti-sysc interconnect target module driver. Let's configure the
module, but keep the legacy "ti,hwmods" property to avoid new boot
time warnings. The legacy property will be removed in later patches
together with the legacy platform data.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 49 ++++++++++++++++++++++++------------
 1 file changed, 33 insertions(+), 16 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -177,23 +177,40 @@ ocmcram: sram@40300000 {
 			reg = <0x40300000 0x20000>; /* 128k */
 		};
 
-		gpmc: gpmc@50000000 {
-			compatible = "ti,omap4430-gpmc";
-			reg = <0x50000000 0x1000>;
-			#address-cells = <2>;
-			#size-cells = <1>;
-			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
-			dmas = <&sdma 4>;
-			dma-names = "rxtx";
-			gpmc,num-cs = <8>;
-			gpmc,num-waitpins = <4>;
-			ti,hwmods = "gpmc";
-			clocks = <&l3_iclk_div>;
+		target-module@50000000 {
+			compatible = "ti,sysc-omap2", "ti,sysc";
+			reg = <0x50000000 4>,
+			      <0x50000010 4>,
+			      <0x50000014 4>;
+			reg-names = "rev", "sysc", "syss";
+			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>;
+			ti,syss-mask = <1>;
+			ti,no-idle-on-init;
+			clocks = <&l3main2_clkctrl OMAP5_L3_MAIN_2_GPMC_CLKCTRL 0>;
 			clock-names = "fck";
-			interrupt-controller;
-			#interrupt-cells = <2>;
-			gpio-controller;
-			#gpio-cells = <2>;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x50000000 0x50000000 0x00001000>, /* regs */
+				 <0x00000000 0x00000000 0x40000000>; /* data */
+
+			gpmc: gpmc@50000000 {
+				compatible = "ti,omap4430-gpmc";
+				reg = <0x50000000 0x1000>;
+				#address-cells = <2>;
+				#size-cells = <1>;
+				interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
+				dmas = <&sdma 4>;
+				dma-names = "rxtx";
+				gpmc,num-cs = <8>;
+				gpmc,num-waitpins = <4>;
+				clock-names = "fck";
+				interrupt-controller;
+				#interrupt-cells = <2>;
+				gpio-controller;
+				#gpio-cells = <2>;
+			};
 		};
 
 		target-module@55082000 {
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 05/11] ARM: dts: Configure interconnect target module for omap5 sata
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (3 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 06/11] ARM: dts: Move omap5 mmio-sram out of l3 interconnect Tony Lindgren
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe devices with device tree only configuration using
ti-sysc interconnect target module driver. Let's configure the
module, but keep the legacy "ti,hwmods" peroperty to avoid new boot
time warnings. The legacy property will be removed in later patches
together with the legacy platform data.

Note that the old sysc register offset is wrong, the real offset is at
0x1100 as listed in TRM for SATA_SYSCONFIG register. Looks like we've been
happily using sata on the bootloader configured sysconfig register and
nobody noticed. Also the old register range for SATAMAC_wrapper registers
is wrong at 7 while it should be 8. But that too seems harmless.

There is also an L3 parent interconnect range that we don't seem to be
using. That can be added as needed later on.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4.dtsi | 28 +++++++++++++++++++++++++---
 arch/arm/boot/dts/omap5.dtsi    | 12 ------------
 2 files changed, 25 insertions(+), 15 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4.dtsi b/arch/arm/boot/dts/omap5-l4.dtsi
--- a/arch/arm/boot/dts/omap5-l4.dtsi
+++ b/arch/arm/boot/dts/omap5-l4.dtsi
@@ -691,11 +691,33 @@ target-module@a000 {			/* 0x4a10a000, ap 63 22.0 */
 		};
 
 		target-module@40000 {			/* 0x4a140000, ap 101 16.0 */
-			compatible = "ti,sysc";
-			status = "disabled";
-			#address-cells = <1>;
+			compatible = "ti,sysc-omap4", "ti,sysc";
+			reg = <0x400fc 4>,
+			      <0x41100 4>;
+			reg-names = "rev", "sysc";
+			ti,sysc-midle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>;
+			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>,
+					<SYSC_IDLE_SMART_WKUP>;
+			power-domains = <&prm_l3init>;
+			clocks = <&l3init_clkctrl OMAP5_SATA_CLKCTRL 0>;
+			clock-names = "fck";
 			#size-cells = <1>;
+			#address-cells = <1>;
 			ranges = <0x0 0x40000 0x10000>;
+
+			sata: sata@0 {
+				compatible = "snps,dwc-ahci";
+				reg = <0 0x1100>, <0x1100 0x8>;
+				interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
+				phys = <&sata_phy>;
+				phy-names = "sata-phy";
+				clocks = <&l3init_clkctrl OMAP5_SATA_CLKCTRL 8>;
+				ports-implemented = <0x1>;
+			};
 		};
 	};
 
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -428,18 +428,6 @@ bandgap: bandgap@4a0021e0 {
 			#thermal-sensor-cells = <1>;
 		};
 
-		/* OCP2SCP3 */
-		sata: sata@4a141100 {
-			compatible = "snps,dwc-ahci";
-			reg = <0x4a140000 0x1100>, <0x4a141100 0x7>;
-			interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
-			phys = <&sata_phy>;
-			phy-names = "sata-phy";
-			clocks = <&l3init_clkctrl OMAP5_SATA_CLKCTRL 8>;
-			ti,hwmods = "sata";
-			ports-implemented = <0x1>;
-		};
-
 		target-module@56000000 {
 			compatible = "ti,sysc-omap4", "ti,sysc";
 			reg = <0x5600fe00 0x4>,
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 06/11] ARM: dts: Move omap5 mmio-sram out of l3 interconnect
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (4 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 05/11] ARM: dts: Configure interconnect target module for omap5 sata Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 07/11] ARM: dts: Move omap5 l3-noc to a separate node Tony Lindgren
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We need mmio-sram early for omap4_sram_init() for IO barrier init, and
will be moving l3 interconnect to probe with simple-pm-bus that probes
at module_init() time. So let's move mmio-sram out of l3 to prepare for
that.

Otherwise we will get the following after probing the interconnects with
simple-pm-bus:

omap4_sram_init:Unable to get sram pool needed to handle errata I688

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -106,6 +106,15 @@ pmu {
 			     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
 	};
 
+	/*
+	 * Needed early by omap4_sram_init() for barrier, do not move to l3
+	 * interconnect as simple-pm-bus probes at module_init() time.
+	 */
+	ocmcram: sram@40300000 {
+		compatible = "mmio-sram";
+		reg = <0 0x40300000 0 0x20000>; /* 128k */
+	};
+
 	gic: interrupt-controller@48211000 {
 		compatible = "arm,cortex-a15-gic";
 		interrupt-controller;
@@ -172,11 +181,6 @@ mpu {
 		l4_abe: interconnect@40100000 {
 		};
 
-		ocmcram: sram@40300000 {
-			compatible = "mmio-sram";
-			reg = <0x40300000 0x20000>; /* 128k */
-		};
-
 		target-module@50000000 {
 			compatible = "ti,sysc-omap2", "ti,sysc";
 			reg = <0x50000000 4>,
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 07/11] ARM: dts: Move omap5 l3-noc to a separate node
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (5 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 06/11] ARM: dts: Move omap5 mmio-sram out of l3 interconnect Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 08/11] ARM: dts: Configure simple-pm-bus for omap5 l4_wkup Tony Lindgren
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

In preparation for probing l3 with simple-pm-bus and genpd, we must move
l3 noc to a separate node. This is to prevent omap_l3_noc.c driver from
claiming the whole l3 instance before simple-pm-bus has a chance to probe.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -142,17 +142,21 @@ wakeupgen: interrupt-controller@48281000 {
 	 * hierarchy.
 	 */
 	ocp {
-		compatible = "ti,omap5-l3-noc", "simple-bus";
+		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0 0 0 0xc0000000>;
 		dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
 		ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
-		reg = <0 0x44000000 0 0x2000>,
-		      <0 0x44800000 0 0x3000>,
-		      <0 0x45000000 0 0x4000>;
-		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+
+		l3-noc@44000000 {
+			compatible = "ti,omap5-l3-noc";
+			reg = <0x44000000 0x2000>,
+			      <0x44800000 0x3000>,
+			      <0x45000000 0x4000>;
+			interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+		};
 
 		l4_wkup: interconnect@4ae00000 {
 		};
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 08/11] ARM: dts: Configure simple-pm-bus for omap5 l4_wkup
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (6 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 07/11] ARM: dts: Move omap5 l3-noc to a separate node Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 09/11] ARM: dts: Configure simple-pm-bus for omap5 l4_per Tony Lindgren
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe interconnects with device tree only configuration using
simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4.dtsi | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4.dtsi b/arch/arm/boot/dts/omap5-l4.dtsi
--- a/arch/arm/boot/dts/omap5-l4.dtsi
+++ b/arch/arm/boot/dts/omap5-l4.dtsi
@@ -2177,7 +2177,10 @@ segment@200000 {					/* 0x48200000 */
 };
 
 &l4_wkup {						/* 0x4ae00000 */
-	compatible = "ti,omap5-l4-wkup", "simple-bus";
+	compatible = "ti,omap5-l4-wkup", "simple-pm-bus";
+	power-domains = <&prm_wkupaon>;
+	clocks = <&wkupaon_clkctrl OMAP5_L4_WKUP_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4ae00000 0x800>,
 	      <0x4ae00800 0x800>,
 	      <0x4ae01000 0x1000>;
@@ -2189,7 +2192,7 @@ &l4_wkup {						/* 0x4ae00000 */
 		 <0x00020000 0x4ae20000 0x010000>;	/* segment 2 */
 
 	segment@0 {					/* 0x4ae00000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -2318,7 +2321,7 @@ scm_wkup_pad_conf_clocks: clocks@0 {
 	};
 
 	segment@10000 {					/* 0x4ae10000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00010000 0x001000>,	/* ap 5 */
@@ -2445,7 +2448,7 @@ keypad: keypad@0 {
 	};
 
 	segment@20000 {					/* 0x4ae20000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00006000 0x00026000 0x001000>,	/* ap 13 */
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 09/11] ARM: dts: Configure simple-pm-bus for omap5 l4_per
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (7 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 08/11] ARM: dts: Configure simple-pm-bus for omap5 l4_wkup Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 10/11] ARM: dts: Configure simple-pm-bus for omap5 l4_cfg Tony Lindgren
  2021-03-08 15:11 ` [PATCH 11/11] ARM: dts: Configure simple-pm-bus for omap5 l3 Tony Lindgren
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe interconnects with device tree only configuration using
simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4.dtsi | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4.dtsi b/arch/arm/boot/dts/omap5-l4.dtsi
--- a/arch/arm/boot/dts/omap5-l4.dtsi
+++ b/arch/arm/boot/dts/omap5-l4.dtsi
@@ -947,7 +947,10 @@ segment@300000 {					/* 0x4a300000 */
 };
 
 &l4_per {						/* 0x48000000 */
-	compatible = "ti,omap5-l4-per", "simple-bus";
+	compatible = "ti,omap5-l4-per", "simple-pm-bus";
+	power-domains = <&prm_core>;
+	clocks = <&l4per_clkctrl OMAP5_L4_PER_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x48000000 0x800>,
 	      <0x48000800 0x800>,
 	      <0x48001000 0x400>,
@@ -961,7 +964,7 @@ &l4_per {						/* 0x48000000 */
 		 <0x00200000 0x48200000 0x200000>;	/* segment 1 */
 
 	segment@0 {					/* 0x48000000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -2170,7 +2173,7 @@ mmc5: mmc@0 {
 	};
 
 	segment@200000 {					/* 0x48200000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 10/11] ARM: dts: Configure simple-pm-bus for omap5 l4_cfg
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (8 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 09/11] ARM: dts: Configure simple-pm-bus for omap5 l4_per Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  2021-03-08 15:11 ` [PATCH 11/11] ARM: dts: Configure simple-pm-bus for omap5 l3 Tony Lindgren
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe interconnects with device tree only configuration using
simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4.dtsi | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4.dtsi b/arch/arm/boot/dts/omap5-l4.dtsi
--- a/arch/arm/boot/dts/omap5-l4.dtsi
+++ b/arch/arm/boot/dts/omap5-l4.dtsi
@@ -1,5 +1,8 @@
 &l4_cfg {						/* 0x4a000000 */
-	compatible = "ti,omap5-l4-cfg", "simple-bus";
+	compatible = "ti,omap5-l4-cfg", "simple-pm-bus";
+	power-domains = <&prm_core>;
+	clocks = <&l4cfg_clkctrl OMAP5_L4_CFG_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4a000000 0x800>,
 	      <0x4a000800 0x800>,
 	      <0x4a001000 0x1000>;
@@ -15,7 +18,7 @@ &l4_cfg {						/* 0x4a000000 */
 		 <0x00300000 0x4a300000 0x080000>;	/* segment 6 */
 
 	segment@0 {					/* 0x4a000000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -391,7 +394,7 @@ target-module@75000 {			/* 0x4a075000, ap 81 32.0 */
 	};
 
 	segment@80000 {					/* 0x4a080000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00059000 0x000d9000 0x001000>,	/* ap 13 */
@@ -654,7 +657,7 @@ hwspinlock: spinlock@0 {
 	};
 
 	segment@100000 {					/* 0x4a100000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00002000 0x00102000 0x001000>,	/* ap 59 */
@@ -722,13 +725,13 @@ sata: sata@0 {
 	};
 
 	segment@180000 {					/* 0x4a180000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
 
 	segment@200000 {					/* 0x4a200000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x0001e000 0x0021e000 0x001000>,	/* ap 29 */
@@ -934,13 +937,13 @@ target-module@2a000 {			/* 0x4a22a000, ap 55 5a.0 */
 	};
 
 	segment@280000 {					/* 0x4a280000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
 
 	segment@300000 {					/* 0x4a300000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 11/11] ARM: dts: Configure simple-pm-bus for omap5 l3
  2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
                   ` (9 preceding siblings ...)
  2021-03-08 15:11 ` [PATCH 10/11] ARM: dts: Configure simple-pm-bus for omap5 l4_cfg Tony Lindgren
@ 2021-03-08 15:11 ` Tony Lindgren
  10 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-08 15:11 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

We can now probe interconnects with device tree only configuration using
simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5.dtsi | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi
--- a/arch/arm/boot/dts/omap5.dtsi
+++ b/arch/arm/boot/dts/omap5.dtsi
@@ -142,7 +142,11 @@ wakeupgen: interrupt-controller@48281000 {
 	 * hierarchy.
 	 */
 	ocp {
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
+		power-domains = <&prm_core>;
+		clocks = <&l3main1_clkctrl OMAP5_L3_MAIN_1_CLKCTRL 0>,
+			 <&l3main2_clkctrl OMAP5_L3_MAIN_2_CLKCTRL 0>,
+			 <&l3instr_clkctrl OMAP5_L3_MAIN_3_CLKCTRL 0>;
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0 0 0 0xc0000000>;
-- 
2.30.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc
  2021-03-08 15:11 ` [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc Tony Lindgren
@ 2021-03-09  6:58   ` kernel test robot
  2021-03-09  9:59     ` Tony Lindgren
  0 siblings, 1 reply; 14+ messages in thread
From: kernel test robot @ 2021-03-09  6:58 UTC (permalink / raw)
  To: Tony Lindgren, linux-omap; +Cc: kbuild-all, Benoît Cousson, devicetree


[-- Attachment #1: Type: text/plain, Size: 1888 bytes --]

Hi Tony,

I love your patch! Yet something to improve:

[auto build test ERROR on robh/for-next]
[also build test ERROR on omap/for-next balbi-usb/testing/next v5.12-rc2 next-20210305]
[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]

url:    https://github.com/0day-ci/linux/commits/Tony-Lindgren/Update-omap5-dts-files-to-probe-with-genpd/20210308-231425
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: arm-defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce: make ARCH=arm dtbs_check

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> Error: arch/arm/boot/dts/omap5.dtsi:186.31-32 syntax error
   FATAL ERROR: Unable to parse input tree


"dtcheck warnings: (new ones prefixed by >>)"
   make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-cm-t54.dtb] Error 1
   make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-igep0050.dtb] Error 1
   make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-uevm.dtb] Error 1
   make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-sbc-t54.dtb] Error 1
>> make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-cm-t54.dt.yaml] Error 1
>> make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-igep0050.dt.yaml] Error 1
   make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-sbc-t54.dt.yaml] Error 1
   make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-uevm.dt.yaml] Error 1
   make[2]: Target '__build' not remade because of errors.

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 54362 bytes --]

[-- Attachment #3: Type: text/plain, Size: 149 bytes --]

_______________________________________________
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-leave@lists.01.org

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc
  2021-03-09  6:58   ` kernel test robot
@ 2021-03-09  9:59     ` Tony Lindgren
  0 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2021-03-09  9:59 UTC (permalink / raw)
  To: kernel test robot; +Cc: linux-omap, kbuild-all, Benoît Cousson, devicetree

* kernel test robot <rong.a.chen@intel.com> [210309 06:59]:
> Hi Tony,
> 
> I love your patch! Yet something to improve:
> 
> [auto build test ERROR on robh/for-next]
> [also build test ERROR on omap/for-next balbi-usb/testing/next v5.12-rc2 next-20210305]
> [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]
> 
> url:    https://github.com/0day-ci/linux/commits/Tony-Lindgren/Update-omap5-dts-files-to-probe-with-genpd/20210308-231425
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
> config: arm-defconfig (attached as .config)
> compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
> reproduce: make ARCH=arm dtbs_check
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All errors (new ones prefixed by >>):
> 
> >> Error: arch/arm/boot/dts/omap5.dtsi:186.31-32 syntax error
>    FATAL ERROR: Unable to parse input tree
> 
> 
> "dtcheck warnings: (new ones prefixed by >>)"
>    make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-cm-t54.dtb] Error 1
>    make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-igep0050.dtb] Error 1
>    make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-uevm.dtb] Error 1
>    make[2]: *** [scripts/Makefile.lib:336: arch/arm/boot/dts/omap5-sbc-t54.dtb] Error 1
> >> make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-cm-t54.dt.yaml] Error 1
> >> make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-igep0050.dt.yaml] Error 1
>    make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-sbc-t54.dt.yaml] Error 1
>    make[2]: *** [scripts/Makefile.lib:355: arch/arm/boot/dts/omap5-uevm.dt.yaml] Error 1
>    make[2]: Target '__build' not remade because of errors.


I think we can ignore this error, this patch depends on patch:

"[PATCH 3/4] clk: ti: omap5: Add missing gpmc and ocmc clkctrl"

Regards,

Tony

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, back to index

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-08 15:11 [PATCH 00/11] Update omap5 dts files to probe with genpd Tony Lindgren
2021-03-08 15:11 ` [PATCH 01/11] ARM: dts: Configure interconnect target module for omap5 dmm Tony Lindgren
2021-03-08 15:11 ` [PATCH 02/11] ARM: dts: Configure interconnect target module for omap5 emif Tony Lindgren
2021-03-08 15:11 ` [PATCH 03/11] ARM: dts: Configure interconnect target module for omap5 mpu Tony Lindgren
2021-03-08 15:11 ` [PATCH 04/11] ARM: dts: Configure interconnect target module for omap5 gpmc Tony Lindgren
2021-03-09  6:58   ` kernel test robot
2021-03-09  9:59     ` Tony Lindgren
2021-03-08 15:11 ` [PATCH 05/11] ARM: dts: Configure interconnect target module for omap5 sata Tony Lindgren
2021-03-08 15:11 ` [PATCH 06/11] ARM: dts: Move omap5 mmio-sram out of l3 interconnect Tony Lindgren
2021-03-08 15:11 ` [PATCH 07/11] ARM: dts: Move omap5 l3-noc to a separate node Tony Lindgren
2021-03-08 15:11 ` [PATCH 08/11] ARM: dts: Configure simple-pm-bus for omap5 l4_wkup Tony Lindgren
2021-03-08 15:11 ` [PATCH 09/11] ARM: dts: Configure simple-pm-bus for omap5 l4_per Tony Lindgren
2021-03-08 15:11 ` [PATCH 10/11] ARM: dts: Configure simple-pm-bus for omap5 l4_cfg Tony Lindgren
2021-03-08 15:11 ` [PATCH 11/11] ARM: dts: Configure simple-pm-bus for omap5 l3 Tony Lindgren

Linux-OMAP Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-omap/0 linux-omap/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-omap linux-omap/ https://lore.kernel.org/linux-omap \
		linux-omap@vger.kernel.org
	public-inbox-index linux-omap

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-omap


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git