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

Hi all,

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

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

"ARM: OMAP2+: Init both prm and prcm nodes early for clocks"
"bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first"
"ARM: dts: Drop duplicate sha2md5_fck to fix clk_disable race"
"ARM: dts: Fix moving mmc devices with aliases for omap4 & 5"
"bus: ti-sysc: Fix initializing module_pa for modules without sysc register"
"soc: ti: omap-prm: Allow hardware supported retention when idle"

I will post another series to drop the legacy data.

Regards,

Tony


Tony Lindgren (12):
  ARM: dts: Configure power-domain for omap4 gfx
  ARM: dts: Configure power-domain for omap4 dts iss
  ARM: dts: Configure interconnect target module for omap4 dmm
  ARM: dts: Configure interconnect target module for omap4 emif
  ARM: dts: Configure interconnect target module for omap4 debugss
  ARM: dts: Configure interconnect target module for omap4 mpu
  ARM: dts: Move omap4 mmio-sram out of l3 interconnect
  ARM: dts: Move omap4 l3-noc to a separate node
  ARM: dts: Configure simple-pm-bus for omap4 l4_wkup
  ARM: dts: Configure simple-pm-bus for omap4 l4_per
  ARM: dts: Configure simple-pm-bus for omap4 l4_cfg
  ARM: dts: Prepare for simple-pm-bus for omap4 l3

 arch/arm/boot/dts/omap4-l4.dtsi |  39 +++++---
 arch/arm/boot/dts/omap4.dtsi    | 165 ++++++++++++++++++++++----------
 arch/arm/boot/dts/omap4460.dtsi |  13 ++-
 3 files changed, 143 insertions(+), 74 deletions(-)

-- 
2.30.1

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

* [PATCH 01/12] ARM: dts: Configure power-domain for omap4 gfx
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
@ 2021-03-08 13:38 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 02/12] ARM: dts: Configure power-domain for omap4 dts iss Tony Lindgren
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:38 UTC (permalink / raw)
  To: linux-omap; +Cc: Benoît Cousson, devicetree

Configure power-domain for omap4 dts gfx in preparation to
probing devices with simple-pm-bus and genpd.

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

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -440,6 +440,7 @@ sgx_module: target-module@56000000 {
 					<SYSC_IDLE_NO>,
 					<SYSC_IDLE_SMART>,
 					<SYSC_IDLE_SMART_WKUP>;
+			power-domains = <&prm_gfx>;
 			clocks = <&l3_gfx_clkctrl OMAP4_GPU_CLKCTRL 0>;
 			clock-names = "fck";
 			#address-cells = <1>;
-- 
2.30.1

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

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

Configure power-domain for omap4 dts iss in preparation to
probing devices with simple-pm-bus and genpd.

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

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -203,6 +203,7 @@ target-module@52000000 {
 					<SYSC_IDLE_SMART>,
 					<SYSC_IDLE_SMART_WKUP>;
 			ti,sysc-delay-us = <2>;
+			power-domains = <&prm_cam>;
 			clocks = <&iss_clkctrl OMAP4_ISS_CLKCTRL 0>;
 			clock-names = "fck";
 			#address-cells = <1>;
-- 
2.30.1

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

* [PATCH 03/12] ARM: dts: Configure interconnect target module for omap4 dmm
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
  2021-03-08 13:38 ` [PATCH 01/12] ARM: dts: Configure power-domain for omap4 gfx Tony Lindgren
  2021-03-08 13:39 ` [PATCH 02/12] ARM: dts: Configure power-domain for omap4 dts iss Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 04/12] ARM: dts: Configure interconnect target module for omap4 emif Tony Lindgren
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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.

Let's also use GIC_SPI and IRQ_TYPE_LEVEL_HIGH defines while at it.

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

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -262,11 +262,24 @@ target-module@4012c000 {
 			/* No child device binding or driver in mainline */
 		};
 
-		dmm@4e000000 {
-			compatible = "ti,omap4-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,omap4-dmm";
+				reg = <0 0x800>;
+				interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
+			};
 		};
 
 		emif1: emif@4c000000 {
-- 
2.30.1

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

* [PATCH 04/12] ARM: dts: Configure interconnect target module for omap4 emif
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (2 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 03/12] ARM: dts: Configure interconnect target module for omap4 dmm Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 05/12] ARM: dts: Configure interconnect target module for omap4 debugss Tony Lindgren
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4.dtsi | 58 +++++++++++++++++++++++++-----------
 1 file changed, 40 insertions(+), 18 deletions(-)

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -282,28 +282,50 @@ dmm@0 {
 			};
 		};
 
-		emif1: emif@4c000000 {
-			compatible = "ti,emif-4d";
-			reg = <0x4c000000 0x100>;
-			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+		target-module@4c000000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
 			ti,hwmods = "emif1";
-			ti,no-idle-on-init;
-			phy-type = <1>;
-			hw-caps-read-idle-ctrl;
-			hw-caps-ll-interface;
-			hw-caps-temp-alert;
+			reg = <0x4c000000 0x4>;
+			reg-names = "rev";
+			clocks = <&l3_emif_clkctrl OMAP4_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-4d";
+				reg = <0 0x100>;
+				interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+				phy-type = <1>;
+				hw-caps-read-idle-ctrl;
+				hw-caps-ll-interface;
+				hw-caps-temp-alert;
+			};
 		};
 
-		emif2: emif@4d000000 {
-			compatible = "ti,emif-4d";
-			reg = <0x4d000000 0x100>;
-			interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+		target-module@4d000000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
 			ti,hwmods = "emif2";
-			ti,no-idle-on-init;
-			phy-type = <1>;
-			hw-caps-read-idle-ctrl;
-			hw-caps-ll-interface;
-			hw-caps-temp-alert;
+			reg = <0x4d000000 0x4>;
+			reg-names = "rev";
+			clocks = <&l3_emif_clkctrl OMAP4_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-4d";
+				reg = <0 0x100>;
+				interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+				phy-type = <1>;
+				hw-caps-read-idle-ctrl;
+				hw-caps-ll-interface;
+				hw-caps-temp-alert;
+			};
 		};
 
 		dsp: dsp {
-- 
2.30.1

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

* [PATCH 05/12] ARM: dts: Configure interconnect target module for omap4 debugss
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (3 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 04/12] ARM: dts: Configure interconnect target module for omap4 emif Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 06/12] ARM: dts: Configure interconnect target module for omap4 mpu Tony Lindgren
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4.dtsi    | 32 +++++++++++++++++++++-----------
 arch/arm/boot/dts/omap4460.dtsi | 13 ++++++-------
 2 files changed, 27 insertions(+), 18 deletions(-)

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -58,17 +58,6 @@ cpu@1 {
 		};
 	};
 
-	/*
-	 * Note that 4430 needs cross trigger interface (CTI) supported
-	 * before we can configure the interrupts. This means sampling
-	 * events are not supported for pmu. Note that 4460 does not use
-	 * CTI, see also 4460.dtsi.
-	 */
-	pmu {
-		compatible = "arm,cortex-a9-pmu";
-		ti,hwmods = "debugss";
-	};
-
 	gic: interrupt-controller@48241000 {
 		compatible = "arm,cortex-a9-gic";
 		interrupt-controller;
@@ -213,6 +202,27 @@ target-module@52000000 {
 			/* No child device binding, driver in staging */
 		};
 
+		/*
+		 * Note that 4430 needs cross trigger interface (CTI) supported
+		 * before we can configure the interrupts. This means sampling
+		 * events are not supported for pmu. Note that 4460 does not use
+		 * CTI, see also 4460.dtsi.
+		 */
+		target-module@54000000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			ti,hwmods = "debugss";
+			power-domains = <&prm_emu>;
+			clocks = <&emu_sys_clkctrl OMAP4_DEBUGSS_CLKCTRL 0>;
+			clock-names = "fck";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x54000000 0x1000000>;
+
+			pmu: pmu {
+				compatible = "arm,cortex-a9-pmu";
+			};
+		};
+
 		target-module@55082000 {
 			compatible = "ti,sysc-omap2", "ti,sysc";
 			reg = <0x55082000 0x4>,
diff --git a/arch/arm/boot/dts/omap4460.dtsi b/arch/arm/boot/dts/omap4460.dtsi
--- a/arch/arm/boot/dts/omap4460.dtsi
+++ b/arch/arm/boot/dts/omap4460.dtsi
@@ -26,13 +26,6 @@ cpu0: cpu@0 {
 		};
 	};
 
-	pmu {
-		compatible = "arm,cortex-a9-pmu";
-		interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
-		ti,hwmods = "debugss";
-	};
-
 	thermal-zones {
 		#include "omap4-cpu-thermal.dtsi"
 	};
@@ -128,4 +121,10 @@ &l4_cfg_target_0 {
 		 <0x00030000 0x00030000 0x00010000>;
 };
 
+&pmu {
+	compatible = "arm,cortex-a9-pmu";
+	interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
+		     <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
+};
+
 /include/ "omap446x-clocks.dtsi"
-- 
2.30.1

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

* [PATCH 06/12] ARM: dts: Configure interconnect target module for omap4 mpu
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (4 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 05/12] ARM: dts: Configure interconnect target module for omap4 debugss Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 07/12] ARM: dts: Move omap4 mmio-sram out of l3 interconnect Tony Lindgren
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4.dtsi | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -90,19 +90,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 OMAP4 interconnect.
 	 * The real OMAP interconnect network is quite complex.
@@ -131,6 +118,21 @@ l4_cfg: interconnect@4a000000 {
 		l4_per: interconnect@48000000 {
 		};
 
+		target-module@48210000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			power-domains = <&prm_mpu>;
+			clocks = <&mpuss_clkctrl OMAP4_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] 13+ messages in thread

* [PATCH 07/12] ARM: dts: Move omap4 mmio-sram out of l3 interconnect
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (5 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 06/12] ARM: dts: Configure interconnect target module for omap4 mpu Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 08/12] ARM: dts: Move omap4 l3-noc to a separate node Tony Lindgren
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4.dtsi | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -58,6 +58,15 @@ cpu@1 {
 		};
 	};
 
+	/*
+	 * 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@40304000 {
+		compatible = "mmio-sram";
+		reg = <0x40304000 0xa000>; /* 40k */
+	};
+
 	gic: interrupt-controller@48241000 {
 		compatible = "arm,cortex-a9-gic";
 		interrupt-controller;
@@ -136,11 +145,6 @@ mpu {
 		l4_abe: interconnect@40100000 {
 		};
 
-		ocmcram: sram@40304000 {
-			compatible = "mmio-sram";
-			reg = <0x40304000 0xa000>; /* 40k */
-		};
-
 		target-module@50000000 {
 			compatible = "ti,sysc-omap2", "ti,sysc";
 			reg = <0x50000000 4>,
-- 
2.30.1

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

* [PATCH 08/12] ARM: dts: Move omap4 l3-noc to a separate node
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (6 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 07/12] ARM: dts: Move omap4 mmio-sram out of l3 interconnect Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 09/12] ARM: dts: Configure simple-pm-bus for omap4 l4_wkup Tony Lindgren
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4.dtsi | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -107,16 +107,20 @@ wakeupgen: interrupt-controller@48281000 {
 	 * hierarchy.
 	 */
 	ocp {
-		compatible = "ti,omap4-l3-noc", "simple-bus";
+		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges;
 		ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
-		reg = <0x44000000 0x1000>,
-		      <0x44800000 0x2000>,
-		      <0x45000000 0x1000>;
-		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
-			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+
+		l3-noc@44000000 {
+			compatible = "ti,omap4-l3-noc";
+			reg = <0x44000000 0x1000>,
+			      <0x44800000 0x2000>,
+			      <0x45000000 0x1000>;
+			interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
+				     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+		};
 
 		l4_wkup: interconnect@4a300000 {
 		};
-- 
2.30.1

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

* [PATCH 09/12] ARM: dts: Configure simple-pm-bus for omap4 l4_wkup
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (7 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 08/12] ARM: dts: Move omap4 l3-noc to a separate node Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 10/12] ARM: dts: Configure simple-pm-bus for omap4 l4_per Tony Lindgren
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4-l4.dtsi | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4.dtsi b/arch/arm/boot/dts/omap4-l4.dtsi
--- a/arch/arm/boot/dts/omap4-l4.dtsi
+++ b/arch/arm/boot/dts/omap4-l4.dtsi
@@ -944,7 +944,10 @@ l4_cfg_target_0: target-module@0 {	/* 0x4a300000, ap 67 14.0 */
 };
 
 &l4_wkup {						/* 0x4a300000 */
-	compatible = "ti,omap4-l4-wkup", "simple-bus";
+	compatible = "ti,omap4-l4-wkup", "simple-pm-bus";
+	power-domains = <&prm_wkup>;
+	clocks = <&l4_wkup_clkctrl OMAP4_L4_WKUP_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4a300000 0x800>,
 	      <0x4a300800 0x800>,
 	      <0x4a301000 0x1000>;
@@ -956,7 +959,7 @@ &l4_wkup {						/* 0x4a300000 */
 		 <0x00020000 0x4a320000 0x010000>;	/* segment 2 */
 
 	segment@0 {					/* 0x4a300000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -1062,7 +1065,7 @@ omap4_scm_wkup: scm@c000 {
 	};
 
 	segment@10000 {					/* 0x4a310000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00010000 0x001000>,	/* ap 5 */
@@ -1231,7 +1234,7 @@ omap4_pmx_wkup: pinmux@40 {
 	};
 
 	segment@20000 {					/* 0x4a320000 */
-		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] 13+ messages in thread

* [PATCH 10/12] ARM: dts: Configure simple-pm-bus for omap4 l4_per
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (8 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 09/12] ARM: dts: Configure simple-pm-bus for omap4 l4_wkup Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 11/12] ARM: dts: Configure simple-pm-bus for omap4 l4_cfg Tony Lindgren
  2021-03-08 13:39 ` [PATCH 12/12] ARM: dts: Prepare for simple-pm-bus for omap4 l3 Tony Lindgren
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4-l4.dtsi | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4.dtsi b/arch/arm/boot/dts/omap4-l4.dtsi
--- a/arch/arm/boot/dts/omap4-l4.dtsi
+++ b/arch/arm/boot/dts/omap4-l4.dtsi
@@ -1287,7 +1287,10 @@ target-module@6000 {			/* 0x4a326000, ap 13 28.0 */
 };
 
 &l4_per {						/* 0x48000000 */
-	compatible = "ti,omap4-l4-per", "simple-bus";
+	compatible = "ti,omap4-l4-per", "simple-pm-bus";
+	power-domains = <&prm_l4per>;
+	clocks = <&l4_per_clkctrl OMAP4_L4_PER_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x48000000 0x800>,
 	      <0x48000800 0x800>,
 	      <0x48001000 0x400>,
@@ -1301,7 +1304,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 */
@@ -2440,7 +2443,7 @@ mmc5: mmc@0 {
 	};
 
 	segment@200000 {					/* 0x48200000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00150000 0x00350000 0x001000>,	/* ap 77 */
-- 
2.30.1

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

* [PATCH 11/12] ARM: dts: Configure simple-pm-bus for omap4 l4_cfg
  2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
                   ` (9 preceding siblings ...)
  2021-03-08 13:39 ` [PATCH 10/12] ARM: dts: Configure simple-pm-bus for omap4 l4_per Tony Lindgren
@ 2021-03-08 13:39 ` Tony Lindgren
  2021-03-08 13:39 ` [PATCH 12/12] ARM: dts: Prepare for simple-pm-bus for omap4 l3 Tony Lindgren
  11 siblings, 0 replies; 13+ messages in thread
From: Tony Lindgren @ 2021-03-08 13:39 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/omap4-l4.dtsi | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4.dtsi b/arch/arm/boot/dts/omap4-l4.dtsi
--- a/arch/arm/boot/dts/omap4-l4.dtsi
+++ b/arch/arm/boot/dts/omap4-l4.dtsi
@@ -1,6 +1,9 @@
 // SPDX-License-Identifier: GPL-2.0
 &l4_cfg {						/* 0x4a000000 */
-	compatible = "ti,omap4-l4-cfg", "simple-bus";
+	compatible = "ti,omap4-l4-cfg", "simple-pm-bus";
+	power-domains = <&prm_core>;
+	clocks = <&l4_cfg_clkctrl OMAP4_L4_CFG_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4a000000 0x800>,
 	      <0x4a000800 0x800>,
 	      <0x4a001000 0x1000>;
@@ -16,7 +19,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 */
@@ -347,7 +350,7 @@ mmu_dsp: mmu@0 {
 	};
 
 	segment@80000 {					/* 0x4a080000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00059000 0x000d9000 0x001000>,	/* ap 13 */
@@ -639,7 +642,7 @@ hwspinlock: spinlock@0 {
 	};
 
 	segment@100000 {					/* 0x4a100000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00100000 0x001000>,	/* ap 21 */
@@ -741,13 +744,13 @@ target-module@a000 {			/* 0x4a10a000, ap 65 50.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 31 */
@@ -903,13 +906,13 @@ target-module@2a000 {			/* 0x4a22a000, ap 57 48.0 */
 	};
 
 	segment@280000 {					/* 0x4a280000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
 
 	l4_cfg_segment_300000: segment@300000 {			/* 0x4a300000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00300000 0x020000>,	/* ap 67 */
-- 
2.30.1

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

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

Let's configure omap4 l3 for power-domain and clocks in preparation for
starting to use simple-pm-bus. We will flip over to using simple-pm-bus
later on after dropping the legacy data for all the devices on l3
interconnect.

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

diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -108,6 +108,10 @@ wakeupgen: interrupt-controller@48281000 {
 	 */
 	ocp {
 		compatible = "simple-bus";
+		power-domains = <&prm_l4per>;
+		clocks = <&l3_1_clkctrl OMAP4_L3_MAIN_1_CLKCTRL 0>,
+			 <&l3_2_clkctrl OMAP4_L3_MAIN_2_CLKCTRL 0>,
+			 <&l3_instr_clkctrl OMAP4_L3_MAIN_3_CLKCTRL 0>;
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges;
-- 
2.30.1

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

end of thread, back to index

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-08 13:38 [PATCH 00/12] Update omap4 devicetree files to probe with genpd Tony Lindgren
2021-03-08 13:38 ` [PATCH 01/12] ARM: dts: Configure power-domain for omap4 gfx Tony Lindgren
2021-03-08 13:39 ` [PATCH 02/12] ARM: dts: Configure power-domain for omap4 dts iss Tony Lindgren
2021-03-08 13:39 ` [PATCH 03/12] ARM: dts: Configure interconnect target module for omap4 dmm Tony Lindgren
2021-03-08 13:39 ` [PATCH 04/12] ARM: dts: Configure interconnect target module for omap4 emif Tony Lindgren
2021-03-08 13:39 ` [PATCH 05/12] ARM: dts: Configure interconnect target module for omap4 debugss Tony Lindgren
2021-03-08 13:39 ` [PATCH 06/12] ARM: dts: Configure interconnect target module for omap4 mpu Tony Lindgren
2021-03-08 13:39 ` [PATCH 07/12] ARM: dts: Move omap4 mmio-sram out of l3 interconnect Tony Lindgren
2021-03-08 13:39 ` [PATCH 08/12] ARM: dts: Move omap4 l3-noc to a separate node Tony Lindgren
2021-03-08 13:39 ` [PATCH 09/12] ARM: dts: Configure simple-pm-bus for omap4 l4_wkup Tony Lindgren
2021-03-08 13:39 ` [PATCH 10/12] ARM: dts: Configure simple-pm-bus for omap4 l4_per Tony Lindgren
2021-03-08 13:39 ` [PATCH 11/12] ARM: dts: Configure simple-pm-bus for omap4 l4_cfg Tony Lindgren
2021-03-08 13:39 ` [PATCH 12/12] ARM: dts: Prepare for simple-pm-bus for omap4 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