linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata
@ 2021-01-26  8:26 Tony Lindgren
  2021-01-26  8:26 ` [PATCH 01/27] PCI: pci-dra7xx: Prepare for deferred probe with module_platform_driver Tony Lindgren
                   ` (26 more replies)
  0 siblings, 27 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

Hi all,

Here's a series to update dra7 to probe with ti-sysc and genpd like we've
already done for am3 and 4.

These patches are against v5.11-rc1, and depend on the following commits
in my fixes branch:

7078a5ba7a58 ("soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0 and 1")
2a39af3870e9 ("ARM: OMAP2+: Fix booting for am335x after moving to simple-pm-bus")

These patches also depend on the series:

[PATCH 0/3] Few ti-sysc changes for v5.12 merge window

Please review and test, I've also pushed out a temporary testing branch to
make testing easier to [0][1].

Regards,

Tony

[0] git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git tmp-testing-genpd-dra7
[1] https://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap.git/log/?h=omap-for-v5.12/tmp-testing-genpd-dra7

Tony Lindgren (27):
  PCI: pci-dra7xx: Prepare for deferred probe with
    module_platform_driver
  ARM: dts: Update pcie ranges for dra7
  ARM: dts: Configure interconnect target module for dra7 pcie
  ARM: dts: Properly configure dra7 edma sysconfig registers
  ARM: dts: Move dra7 l3 noc to a separate node
  ARM: dts: Configure interconnect target module for dra7 qspi
  ARM: dts: Configure interconnect target module for dra7 sata
  ARM: dts: Configure interconnect target module for dra7 mpu
  ARM: dts: Configure interconnect target module for dra7 dmm
  ARM: dts: Configure simple-pm-bus for dra7 l4_wkup
  ARM: dts: Configure simple-pm-bus for dra7 l4_per1
  ARM: dts: Configure simple-pm-bus for dra7 l4_per2
  ARM: dts: Configure simple-pm-bus for dra7 l4_per3
  ARM: dts: Configure simple-pm-bus for dra7 l4_cfg
  ARM: dts: Configure simple-pm-bus for dra7 l3
  ARM: OMAP2+: Drop legacy platform data for dra7 pcie
  ARM: OMAP2+: Drop legacy platform data for dra7 qspi
  ARM: OMAP2+: Drop legacy platform data for dra7 sata
  ARM: OMAP2+: Drop legacy platform data for dra7 mpu
  ARM: OMAP2+: Drop legacy platform data for dra7 dmm
  ARM: OMAP2+: Drop legacy platform data for dra7 l4_wkup
  ARM: OMAP2+: Drop legacy platform data for dra7 l4_per1
  ARM: OMAP2+: Drop legacy platform data for dra7 l4_per2
  ARM: OMAP2+: Drop legacy platform data for dra7 l4_per3
  ARM: OMAP2+: Drop legacy platform data for dra7 l4_cfg
  ARM: OMAP2+: Drop legacy platform data for dra7 l3
  ARM: OMAP2+: Drop legacy platform data for dra7 hwmod

 arch/arm/boot/dts/dra7-l4.dtsi            |  75 ++-
 arch/arm/boot/dts/dra7.dtsi               | 220 ++++---
 arch/arm/mach-omap2/Kconfig               |   1 -
 arch/arm/mach-omap2/Makefile              |   1 -
 arch/arm/mach-omap2/common.h              |   9 -
 arch/arm/mach-omap2/io.c                  |   2 -
 arch/arm/mach-omap2/omap_hwmod.c          |   8 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 719 ----------------------
 drivers/pci/controller/dwc/pci-dra7xx.c   |  13 +-
 9 files changed, 211 insertions(+), 837 deletions(-)
 delete mode 100644 arch/arm/mach-omap2/omap_hwmod_7xx_data.c

-- 
2.30.0

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

* [PATCH 01/27] PCI: pci-dra7xx: Prepare for deferred probe with module_platform_driver
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 02/27] ARM: dts: Update pcie ranges for dra7 Tony Lindgren
                   ` (25 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, linux-pci, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Balaji T K,
	Vignesh Raghavendra

After updating pci-dra7xx driver to probe with ti-sysc and genpd, I
noticed that dra7xx_pcie_probe() would not run if a power-domains property
was configured for the interconnect target module.

Turns out that module_platform_driver_probe uses platform_driver_probe(),
while module_platform_driver_probe uses platform_driver_register().

Only platform_driver_register() works for deferred probe as noted in the
comments for __platform_driver_probe() in drivers/base/platform.c with a
line saying "Note that this is incompatible with deferred probing".

With module_platform_driver_probe, we have platform_driver_probe() produce
-ENODEV error at device_initcall() level, and no further attempts are done.
Let's fix this by using module_platform_driver instead.

Note this is not an issue currently as we probe devices with simple-bus,
and only is needed as we start probing the device with ti-sysc, or when
probed with simple-pm-bus.

Note that we must now also remove __init for probe related functions to
avoid a section mismatch warning.

Cc: linux-pci@vger.kernel.org
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---

Can you guys please review test and ack if this looks OK? I'd like to
apply this together with the series to drop dra7 platform data as it's
not needed earlier.

---
 drivers/pci/controller/dwc/pci-dra7xx.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/pci/controller/dwc/pci-dra7xx.c b/drivers/pci/controller/dwc/pci-dra7xx.c
--- a/drivers/pci/controller/dwc/pci-dra7xx.c
+++ b/drivers/pci/controller/dwc/pci-dra7xx.c
@@ -443,8 +443,8 @@ static const struct dw_pcie_ep_ops pcie_ep_ops = {
 	.get_features = dra7xx_pcie_get_features,
 };
 
-static int __init dra7xx_add_pcie_ep(struct dra7xx_pcie *dra7xx,
-				     struct platform_device *pdev)
+static int dra7xx_add_pcie_ep(struct dra7xx_pcie *dra7xx,
+			      struct platform_device *pdev)
 {
 	int ret;
 	struct dw_pcie_ep *ep;
@@ -472,8 +472,8 @@ static int __init dra7xx_add_pcie_ep(struct dra7xx_pcie *dra7xx,
 	return 0;
 }
 
-static int __init dra7xx_add_pcie_port(struct dra7xx_pcie *dra7xx,
-				       struct platform_device *pdev)
+static int dra7xx_add_pcie_port(struct dra7xx_pcie *dra7xx,
+				struct platform_device *pdev)
 {
 	int ret;
 	struct dw_pcie *pci = dra7xx->pci;
@@ -682,7 +682,7 @@ static int dra7xx_pcie_configure_two_lane(struct device *dev,
 	return 0;
 }
 
-static int __init dra7xx_pcie_probe(struct platform_device *pdev)
+static int dra7xx_pcie_probe(struct platform_device *pdev)
 {
 	u32 reg;
 	int ret;
@@ -938,6 +938,7 @@ static const struct dev_pm_ops dra7xx_pcie_pm_ops = {
 };
 
 static struct platform_driver dra7xx_pcie_driver = {
+	.probe = dra7xx_pcie_probe,
 	.driver = {
 		.name	= "dra7-pcie",
 		.of_match_table = of_dra7xx_pcie_match,
@@ -946,4 +947,4 @@ static struct platform_driver dra7xx_pcie_driver = {
 	},
 	.shutdown = dra7xx_pcie_shutdown,
 };
-builtin_platform_driver_probe(dra7xx_pcie_driver, dra7xx_pcie_probe);
+builtin_platform_driver(dra7xx_pcie_driver);
-- 
2.30.0

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

* [PATCH 02/27] ARM: dts: Update pcie ranges for dra7
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
  2021-01-26  8:26 ` [PATCH 01/27] PCI: pci-dra7xx: Prepare for deferred probe with module_platform_driver Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 03/27] ARM: dts: Configure interconnect target module for dra7 pcie Tony Lindgren
                   ` (24 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Kishon Vijay Abraham I,
	Balaji T K, Bjorn Helgaas, Lorenzo Pieralisi,
	Vignesh Raghavendra, linux-pci

In order to update pcie to probe with ti-sysc and genpd, let's update the
pcie ranges to not use address 0 for 0x20000000 and 0x30000000. The range
for 0 is typically used for child devices as the offset from the module
base. In the following patches, we will update pcie to probe with ti-sysc,
and the patches become a bit confusing to read compared to other similar
modules unless we update the ranges first. So let's just use the full
addresses for ranges for the 0x20000000 and 0x30000000 ranges.

Cc: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi | 29 ++++++++++++++++++-----------
 1 file changed, 18 insertions(+), 11 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -170,22 +170,24 @@ axi@0 {
 			compatible = "simple-bus";
 			#size-cells = <1>;
 			#address-cells = <1>;
-			ranges = <0x51000000 0x51000000 0x3000
-				  0x0	     0x20000000 0x10000000>;
+			ranges = <0x51000000 0x51000000 0x3000>,
+				 <0x20000000 0x20000000 0x10000000>;
 			dma-ranges;
 			/**
 			 * To enable PCI endpoint mode, disable the pcie1_rc
 			 * node and enable pcie1_ep mode.
 			 */
 			pcie1_rc: pcie@51000000 {
-				reg = <0x51000000 0x2000>, <0x51002000 0x14c>, <0x1000 0x2000>;
+				reg = <0x51000000 0x2000>,
+				      <0x51002000 0x14c>,
+				      <0x20001000 0x2000>;
 				reg-names = "rc_dbics", "ti_conf", "config";
 				interrupts = <0 232 0x4>, <0 233 0x4>;
 				#address-cells = <3>;
 				#size-cells = <2>;
 				device_type = "pci";
-				ranges = <0x81000000 0 0          0x03000 0 0x00010000
-					  0x82000000 0 0x20013000 0x13000 0 0xffed000>;
+				ranges = <0x81000000 0 0x00000000 0x20003000 0 0x00010000>,
+					 <0x82000000 0 0x20013000 0x20013000 0 0x0ffed000>;
 				bus-range = <0x00 0xff>;
 				#interrupt-cells = <1>;
 				num-lanes = <1>;
@@ -209,7 +211,10 @@ pcie1_intc: interrupt-controller {
 			};
 
 			pcie1_ep: pcie_ep@51000000 {
-				reg = <0x51000000 0x28>, <0x51002000 0x14c>, <0x51001000 0x28>, <0x1000 0x10000000>;
+				reg = <0x51000000 0x28>,
+				      <0x51002000 0x14c>,
+				      <0x51001000 0x28>,
+				      <0x20001000 0x10000000>;
 				reg-names = "ep_dbics", "ti_conf", "ep_dbics2", "addr_space";
 				interrupts = <0 232 0x4>;
 				num-lanes = <1>;
@@ -228,19 +233,21 @@ axi@1 {
 			compatible = "simple-bus";
 			#size-cells = <1>;
 			#address-cells = <1>;
-			ranges = <0x51800000 0x51800000 0x3000
-				  0x0	     0x30000000 0x10000000>;
+			ranges = <0x51800000 0x51800000 0x3000>,
+				 <0x30000000 0x30000000 0x10000000>;
 			dma-ranges;
 			status = "disabled";
 			pcie2_rc: pcie@51800000 {
-				reg = <0x51800000 0x2000>, <0x51802000 0x14c>, <0x1000 0x2000>;
+				reg = <0x51800000 0x2000>,
+				      <0x51802000 0x14c>,
+				      <0x30001000 0x2000>;
 				reg-names = "rc_dbics", "ti_conf", "config";
 				interrupts = <0 355 0x4>, <0 356 0x4>;
 				#address-cells = <3>;
 				#size-cells = <2>;
 				device_type = "pci";
-				ranges = <0x81000000 0 0          0x03000 0 0x00010000
-					  0x82000000 0 0x30013000 0x13000 0 0xffed000>;
+				ranges = <0x81000000 0 0x00000000 0x30003000 0 0x00010000>,
+					 <0x82000000 0 0x30013000 0x30013000 0 0x0ffed000>;
 				bus-range = <0x00 0xff>;
 				#interrupt-cells = <1>;
 				num-lanes = <1>;
-- 
2.30.0

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

* [PATCH 03/27] ARM: dts: Configure interconnect target module for dra7 pcie
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
  2021-01-26  8:26 ` [PATCH 01/27] PCI: pci-dra7xx: Prepare for deferred probe with module_platform_driver Tony Lindgren
  2021-01-26  8:26 ` [PATCH 02/27] ARM: dts: Update pcie ranges for dra7 Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 04/27] ARM: dts: Properly configure dra7 edma sysconfig registers Tony Lindgren
                   ` (23 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Kishon Vijay Abraham I,
	Balaji T K, Bjorn Helgaas, Lorenzo Pieralisi,
	Vignesh Raghavendra, linux-pci

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.

Cc: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi | 34 ++++++++++++++++++++++++++++++----
 1 file changed, 30 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -166,8 +166,21 @@ l4_per2: interconnect@48400000 {
 		l4_per3: interconnect@48800000 {
 		};
 
-		axi@0 {
-			compatible = "simple-bus";
+		/*
+		 * Register access seems to have complex dependencies and also
+		 * seems to need an enabled phy. See the TRM chapter for "Table
+		 * 26-678. Main Sequence PCIe Controller Global Initialization"
+		 * and also dra7xx_pcie_probe().
+		 */
+		axi0: target-module@51000000 {
+			compatible = "ti,sysc-omap4", "ti,sysc";
+			power-domains = <&prm_l3init>;
+			resets = <&prm_l3init 0>;
+			reset-names = "rstctrl";
+			clocks = <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 0>,
+				 <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 9>,
+				 <&pcie_clkctrl DRA7_PCIE_PCIE1_CLKCTRL 10>;
+			clock-names = "fck", "phy-clk", "phy-clk-div";
 			#size-cells = <1>;
 			#address-cells = <1>;
 			ranges = <0x51000000 0x51000000 0x3000>,
@@ -229,8 +242,21 @@ pcie1_ep: pcie_ep@51000000 {
 			};
 		};
 
-		axi@1 {
-			compatible = "simple-bus";
+		/*
+		 * Register access seems to have complex dependencies and also
+		 * seems to need an enabled phy. See the TRM chapter for "Table
+		 * 26-678. Main Sequence PCIe Controller Global Initialization"
+		 * and also dra7xx_pcie_probe().
+		 */
+		axi1: target-module@51800000 {
+			compatible = "ti,sysc-omap4", "ti,sysc";
+			clocks = <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 0>,
+				 <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 9>,
+				 <&pcie_clkctrl DRA7_PCIE_PCIE2_CLKCTRL 10>;
+			clock-names = "fck", "phy-clk", "phy-clk-div";
+			power-domains = <&prm_l3init>;
+			resets = <&prm_l3init 1>;
+			reset-names = "rstctrl";
 			#size-cells = <1>;
 			#address-cells = <1>;
 			ranges = <0x51800000 0x51800000 0x3000>,
-- 
2.30.0

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

* [PATCH 04/27] ARM: dts: Properly configure dra7 edma sysconfig registers
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (2 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 03/27] ARM: dts: Configure interconnect target module for dra7 pcie Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 05/27] ARM: dts: Move dra7 l3 noc to a separate node Tony Lindgren
                   ` (22 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

Looks like the TRM is not listing the sysconfig for edma, let's add it
based on am437x TRM edma registers as listed in sections "Table 10-26.
EDMA3CC Registers" and "Table 10-99. EDMA3TC Registers".

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

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -369,8 +369,15 @@ dra7_iodelay_core: padconf@4844a000 {
 
 		target-module@43300000 {
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			reg = <0x43300000 0x4>;
-			reg-names = "rev";
+			reg = <0x43300000 0x4>,
+			      <0x43300010 0x4>;
+			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>;
 			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPCC_CLKCTRL 0>;
 			clock-names = "fck";
 			#address-cells = <1>;
@@ -402,8 +409,15 @@ edma: dma@0 {
 
 		target-module@43400000 {
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			reg = <0x43400000 0x4>;
-			reg-names = "rev";
+			reg = <0x43400000 0x4>,
+			      <0x43400010 0x4>;
+			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>;
 			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC0_CLKCTRL 0>;
 			clock-names = "fck";
 			#address-cells = <1>;
@@ -420,8 +434,15 @@ edma_tptc0: dma@0 {
 
 		target-module@43500000 {
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			reg = <0x43500000 0x4>;
-			reg-names = "rev";
+			reg = <0x43500000 0x4>,
+			      <0x43500010 0x4>;
+			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>;
 			clocks = <&l3main1_clkctrl DRA7_L3MAIN1_TPTC1_CLKCTRL 0>;
 			clock-names = "fck";
 			#address-cells = <1>;
-- 
2.30.0

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

* [PATCH 05/27] ARM: dts: Move dra7 l3 noc to a separate node
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (3 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 04/27] ARM: dts: Properly configure dra7 edma sysconfig registers Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 06/27] ARM: dts: Configure interconnect target module for dra7 qspi Tony Lindgren
                   ` (21 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

In order to prepare for probing l3 with genpd, we need to move l3 noc
into a separate node for l3 interconnect to have it's own regs, and
to avoid it claiming more than it needs for the io regions.

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

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -144,16 +144,20 @@ mpu {
 	 * hierarchy.
 	 */
 	ocp: ocp {
-		compatible = "ti,dra7-l3-noc", "simple-bus";
+		compatible = "simple-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x0 0x0 0x0 0xc0000000>;
 		dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
 		ti,hwmods = "l3_main_1", "l3_main_2";
-		reg = <0x0 0x44000000 0x0 0x1000000>,
-		      <0x0 0x45000000 0x0 0x1000>;
-		interrupts-extended = <&crossbar_mpu GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
-				      <&wakeupgen GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+
+		l3-noc@44000000 {
+			compatible = "ti,dra7-l3-noc";
+			reg = <0x44000000 0x1000>,
+			      <0x45000000 0x1000>;
+			interrupts-extended = <&crossbar_mpu GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
+					      <&wakeupgen GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
+		};
 
 		l4_cfg: interconnect@4a000000 {
 		};
-- 
2.30.0

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

* [PATCH 06/27] ARM: dts: Configure interconnect target module for dra7 qspi
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (4 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 05/27] ARM: dts: Move dra7 l3 noc to a separate node Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 07/27] ARM: dts: Configure interconnect target module for dra7 sata Tony Lindgren
                   ` (20 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Vignesh Raghavendra, Balaji T K,
	Bjorn Helgaas, Kishon Vijay Abraham I, Lorenzo Pieralisi,
	linux-pci

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.

Cc: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi | 41 ++++++++++++++++++++++++++-----------
 1 file changed, 29 insertions(+), 12 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -752,20 +752,37 @@ abb_gpu: regulator-abb-gpu {
 			>;
 		};
 
-		qspi: spi@4b300000 {
-			compatible = "ti,dra7xxx-qspi";
-			reg = <0x4b300000 0x100>,
-			      <0x5c000000 0x4000000>;
-			reg-names = "qspi_base", "qspi_mmap";
-			syscon-chipselects = <&scm_conf 0x558>;
-			#address-cells = <1>;
-			#size-cells = <0>;
+		target-module@4b300000 {
+			compatible = "ti,sysc-omap4", "ti,sysc";
 			ti,hwmods = "qspi";
-			clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 25>;
+			reg = <0x4b300000 0x4>,
+			      <0x4b300010 0x4>;
+			reg-names = "rev", "sysc";
+			ti,sysc-sidle = <SYSC_IDLE_FORCE>,
+					<SYSC_IDLE_NO>,
+					<SYSC_IDLE_SMART>,
+					<SYSC_IDLE_SMART_WKUP>;
+			clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 0>;
 			clock-names = "fck";
-			num-cs = <4>;
-			interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
-			status = "disabled";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x4b300000 0x1000>,
+				 <0x5c000000 0x5c000000 0x4000000>;
+
+			qspi: spi@0 {
+				compatible = "ti,dra7xxx-qspi";
+				reg = <0 0x100>,
+				      <0x5c000000 0x4000000>;
+				reg-names = "qspi_base", "qspi_mmap";
+				syscon-chipselects = <&scm_conf 0x558>;
+				#address-cells = <1>;
+				#size-cells = <0>;
+				clocks = <&l4per2_clkctrl DRA7_L4PER2_QSPI_CLKCTRL 25>;
+				clock-names = "fck";
+				num-cs = <4>;
+				interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
+				status = "disabled";
+			};
 		};
 
 		/* OCP2SCP3 */
-- 
2.30.0

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

* [PATCH 07/27] ARM: dts: Configure interconnect target module for dra7 sata
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (5 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 06/27] ARM: dts: Configure interconnect target module for dra7 qspi Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 08/27] ARM: dts: Configure interconnect target module for dra7 mpu Tony Lindgren
                   ` (19 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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.

Cc: Balaji T K <balajitk@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7-l4.dtsi | 29 ++++++++++++++++++++++++++---
 arch/arm/boot/dts/dra7.dtsi    | 12 ------------
 2 files changed, 26 insertions(+), 15 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -572,11 +572,34 @@ target-module@8000 {			/* 0x4a108000, ap 29 1e.0 */
 		};
 
 		target-module@40000 {			/* 0x4a140000, ap 31 06.0 */
-			compatible = "ti,sysc";
-			status = "disabled";
-			#address-cells = <1>;
+			compatible = "ti,sysc-omap4", "ti,sysc";
+			ti,hwmods = "sata";
+			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 DRA7_L3INIT_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 49 IRQ_TYPE_LEVEL_HIGH>;
+				phys = <&sata_phy>;
+				phy-names = "sata-phy";
+				clocks = <&l3init_clkctrl DRA7_L3INIT_SATA_CLKCTRL 8>;
+				ports-implemented = <0x1>;
+			};
 		};
 
 		target-module@51000 {			/* 0x4a151000, ap 33 50.0 */
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -785,18 +785,6 @@ qspi: spi@0 {
 			};
 		};
 
-		/* OCP2SCP3 */
-		sata: sata@4a141100 {
-			compatible = "snps,dwc-ahci";
-			reg = <0x4a140000 0x1100>, <0x4a141100 0x7>;
-			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
-			phys = <&sata_phy>;
-			phy-names = "sata-phy";
-			clocks = <&l3init_clkctrl DRA7_L3INIT_SATA_CLKCTRL 8>;
-			ti,hwmods = "sata";
-			ports-implemented = <0x1>;
-		};
-
 		/* OCP2SCP1 */
 		/* IRQ for DWC3_3 and DWC3_4 need IRQ crossbar */
 
-- 
2.30.0

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

* [PATCH 08/27] ARM: dts: Configure interconnect target module for dra7 mpu
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (6 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 07/27] ARM: dts: Configure interconnect target module for dra7 sata Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 09/27] ARM: dts: Configure interconnect target module for dra7 dmm Tony Lindgren
                   ` (18 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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.

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

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -124,18 +124,6 @@ opp_high@1500000000 {
 		};
 	};
 
-	/*
-	 * 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,omap5-mpu";
-			ti,hwmods = "mpu";
-		};
-	};
-
 	/*
 	 * XXX: Use a flat representation of the SOC interconnect.
 	 * The real OMAP interconnect network is quite complex.
@@ -165,6 +153,22 @@ l4_wkup: interconnect@4ae00000 {
 		};
 		l4_per1: interconnect@48000000 {
 		};
+
+		target-module@48210000 {
+			compatible = "ti,sysc-omap4-simple", "ti,sysc";
+			ti,hwmods = "mpu";
+			power-domains = <&prm_mpu>;
+			clocks = <&mpu_clkctrl DRA7_MPU_CLKCTRL 0>;
+			clock-names = "fck";
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0 0 0x1f0000>;
+
+			mpu {
+				compatible = "ti,omap5-mpu";
+			};
+		};
+
 		l4_per2: interconnect@48400000 {
 		};
 		l4_per3: interconnect@48800000 {
-- 
2.30.0

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

* [PATCH 09/27] ARM: dts: Configure interconnect target module for dra7 dmm
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (7 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 08/27] ARM: dts: Configure interconnect target module for dra7 mpu Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:26 ` [PATCH 10/27] ARM: dts: Configure simple-pm-bus for dra7 l4_wkup Tony Lindgren
                   ` (17 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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.

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

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -465,11 +465,24 @@ edma_tptc1: dma@0 {
 			};
 		};
 
-		dmm@4e000000 {
-			compatible = "ti,omap5-dmm";
-			reg = <0x4e000000 0x800>;
-			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
+		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 = <0x4e000000 0x800>;
+				interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
+			};
 		};
 
 		ipu1: ipu@58820000 {
-- 
2.30.0

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

* [PATCH 10/27] ARM: dts: Configure simple-pm-bus for dra7 l4_wkup
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (8 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 09/27] ARM: dts: Configure interconnect target module for dra7 dmm Tony Lindgren
@ 2021-01-26  8:26 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 11/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per1 Tony Lindgren
                   ` (16 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:26 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7-l4.dtsi | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -4228,7 +4228,10 @@ vpe: vpe@0 {
 };
 
 &l4_wkup {						/* 0x4ae00000 */
-	compatible = "ti,dra7-l4-wkup", "simple-bus";
+	compatible = "ti,dra7-l4-wkup", "simple-pm-bus";
+	power-domains = <&prm_wkupaon>;
+	clocks = <&wkupaon_clkctrl DRA7_WKUPAON_L4_WKUP_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4ae00000 0x800>,
 	      <0x4ae00800 0x800>,
 	      <0x4ae01000 0x1000>;
@@ -4241,7 +4244,7 @@ &l4_wkup {						/* 0x4ae00000 */
 		 <0x00030000 0x4ae30000 0x010000>;	/* segment 3 */
 
 	segment@0 {					/* 0x4ae00000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -4318,7 +4321,7 @@ scm_wkup: scm_conf@0 {
 	};
 
 	segment@10000 {					/* 0x4ae10000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00010000 0x001000>,	/* ap 5 */
@@ -4428,7 +4431,7 @@ target-module@c000 {			/* 0x4ae1c000, ap 11 38.0 */
 	};
 
 	segment@20000 {					/* 0x4ae20000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00006000 0x00026000 0x001000>,	/* ap 13 */
@@ -4534,7 +4537,7 @@ target-module@f000 {			/* 0x4ae2f000, ap 32 58.0 */
 	};
 
 	segment@30000 {					/* 0x4ae30000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x0000c000 0x0003c000 0x002000>,	/* ap 30 */
-- 
2.30.0

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

* [PATCH 11/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per1
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (9 preceding siblings ...)
  2021-01-26  8:26 ` [PATCH 10/27] ARM: dts: Configure simple-pm-bus for dra7 l4_wkup Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 12/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per2 Tony Lindgren
                   ` (15 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7-l4.dtsi | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -1029,7 +1029,10 @@ target-module@36000 {			/* 0x4a236000, ap 119 62.0 */
 };
 
 &l4_per1 {						/* 0x48000000 */
-	compatible = "ti,dra7-l4-per1", "simple-bus";
+	compatible = "ti,dra7-l4-per1", "simple-pm-bus";
+	power-domains = <&prm_l4per>;
+	clocks = <&l4per_clkctrl DRA7_L4PER_L4_PER1_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x48000000 0x800>,
 	      <0x48000800 0x800>,
 	      <0x48001000 0x400>,
@@ -1043,7 +1046,7 @@ &l4_per1 {						/* 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 */
@@ -2292,7 +2295,7 @@ target-module@d5000 {			/* 0x480d5000, ap 73 30.0 */
 	};
 
 	segment@200000 {					/* 0x48200000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 	};
-- 
2.30.0

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

* [PATCH 12/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per2
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (10 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 11/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per1 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 13/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per3 Tony Lindgren
                   ` (14 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7-l4.dtsi | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -2302,7 +2302,10 @@ segment@200000 {					/* 0x48200000 */
 };
 
 &l4_per2 {						/* 0x48400000 */
-	compatible = "ti,dra7-l4-per2", "simple-bus";
+	compatible = "ti,dra7-l4-per2", "simple-pm-bus";
+	power-domains = <&prm_l4per>;
+	clocks = <&l4per2_clkctrl DRA7_L4PER2_L4_PER2_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x48400000 0x800>,
 	      <0x48400800 0x800>,
 	      <0x48401000 0x400>,
@@ -2322,7 +2325,7 @@ &l4_per2 {						/* 0x48400000 */
 		 <0x48454000 0x48454000 0x400000>;	/* L3 data port */
 
 	segment@0 {					/* 0x48400000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
-- 
2.30.0

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

* [PATCH 13/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per3
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (11 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 12/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per2 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 14/27] ARM: dts: Configure simple-pm-bus for dra7 l4_cfg Tony Lindgren
                   ` (13 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7-l4.dtsi | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -3123,7 +3123,10 @@ cpts {
 };
 
 &l4_per3 {						/* 0x48800000 */
-	compatible = "ti,dra7-l4-per3", "simple-bus";
+	compatible = "ti,dra7-l4-per3", "simple-pm-bus";
+	power-domains = <&prm_l4per>;
+	clocks = <&l4per3_clkctrl DRA7_L4PER3_L4_PER3_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x48800000 0x800>,
 	      <0x48800800 0x800>,
 	      <0x48801000 0x400>,
@@ -3135,7 +3138,7 @@ &l4_per3 {						/* 0x48800000 */
 	ranges = <0x00000000 0x48800000 0x200000>;	/* segment 0 */
 
 	segment@0 {					/* 0x48800000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
-- 
2.30.0

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

* [PATCH 14/27] ARM: dts: Configure simple-pm-bus for dra7 l4_cfg
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (12 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 13/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per3 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 15/27] ARM: dts: Configure simple-pm-bus for dra7 l3 Tony Lindgren
                   ` (12 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7-l4.dtsi | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -1,5 +1,8 @@
 &l4_cfg {						/* 0x4a000000 */
-	compatible = "ti,dra7-l4-cfg", "simple-bus";
+	compatible = "ti,dra7-l4-cfg", "simple-pm-bus";
+	power-domains = <&prm_coreaon>;
+	clocks = <&l4cfg_clkctrl DRA7_L4CFG_L4_CFG_CLKCTRL 0>;
+	clock-names = "fck";
 	reg = <0x4a000000 0x800>,
 	      <0x4a000800 0x800>,
 	      <0x4a001000 0x1000>;
@@ -11,7 +14,7 @@ &l4_cfg {						/* 0x4a000000 */
 		 <0x00200000 0x4a200000 0x100000>;	/* segment 2 */
 
 	segment@0 {					/* 0x4a000000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00000000 0x00000000 0x000800>,	/* ap 0 */
@@ -493,7 +496,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 27 */
@@ -812,7 +815,7 @@ target-module@87000 {			/* 0x4a187000, ap 75 74.0 */
 	};
 
 	segment@200000 {					/* 0x4a200000 */
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x00018000 0x00218000 0x001000>,	/* ap 43 */
-- 
2.30.0

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

* [PATCH 15/27] ARM: dts: Configure simple-pm-bus for dra7 l3
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (13 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 14/27] ARM: dts: Configure simple-pm-bus for dra7 l4_cfg Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 16/27] ARM: OMAP2+: Drop legacy platform data for dra7 pcie Tony Lindgren
                   ` (11 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

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/dra7.dtsi | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -132,12 +132,14 @@ opp_high@1500000000 {
 	 * hierarchy.
 	 */
 	ocp: ocp {
-		compatible = "simple-bus";
+		compatible = "simple-pm-bus";
+		power-domains = <&prm_core>;
+		clocks = <&l3main1_clkctrl DRA7_L3MAIN1_L3_MAIN_1_CLKCTRL 0>,
+			 <&l3instr_clkctrl DRA7_L3INSTR_L3_MAIN_2_CLKCTRL 0>;
 		#address-cells = <1>;
 		#size-cells = <1>;
 		ranges = <0x0 0x0 0x0 0xc0000000>;
 		dma-ranges = <0x80000000 0x0 0x80000000 0x80000000>;
-		ti,hwmods = "l3_main_1", "l3_main_2";
 
 		l3-noc@44000000 {
 			compatible = "ti,dra7-l3-noc";
-- 
2.30.0

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

* [PATCH 16/27] ARM: OMAP2+: Drop legacy platform data for dra7 pcie
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (14 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 15/27] ARM: dts: Configure simple-pm-bus for dra7 l3 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 17/27] ARM: OMAP2+: Drop legacy platform data for dra7 qspi Tony Lindgren
                   ` (10 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Kishon Vijay Abraham I,
	Balaji T K, Bjorn Helgaas, Lorenzo Pieralisi,
	Vignesh Raghavendra, linux-pci

We can now probe devices with ti-sysc interconnect driver and dts data.
Let's drop the related platform data and custom ti,hwmods dts property.

As we're just dropping data, and the early platform data init is based on
the custom ti,hwmods property, we want to drop both the platform data and
ti,hwmods property in a single patch.

Cc: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi               |   3 -
 arch/arm/mach-omap2/common.h              |   9 --
 arch/arm/mach-omap2/omap_hwmod.c          |   8 --
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 114 ----------------------
 4 files changed, 134 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -215,7 +215,6 @@ pcie1_rc: pcie@51000000 {
 				#interrupt-cells = <1>;
 				num-lanes = <1>;
 				linux,pci-domain = <0>;
-				ti,hwmods = "pcie1";
 				phys = <&pcie1_phy>;
 				phy-names = "pcie-phy0";
 				ti,syscon-lane-sel = <&scm_conf_pcie 0x18>;
@@ -243,7 +242,6 @@ pcie1_ep: pcie_ep@51000000 {
 				num-lanes = <1>;
 				num-ib-windows = <4>;
 				num-ob-windows = <16>;
-				ti,hwmods = "pcie1";
 				phys = <&pcie1_phy>;
 				phy-names = "pcie-phy0";
 				ti,syscon-unaligned-access = <&scm_conf1 0x14 1>;
@@ -288,7 +286,6 @@ pcie2_rc: pcie@51800000 {
 				#interrupt-cells = <1>;
 				num-lanes = <1>;
 				linux,pci-domain = <1>;
-				ti,hwmods = "pcie2";
 				phys = <&pcie2_phy>;
 				phy-names = "pcie-phy0";
 				interrupt-map-mask = <0 0 0 7>;
diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h
--- a/arch/arm/mach-omap2/common.h
+++ b/arch/arm/mach-omap2/common.h
@@ -343,15 +343,6 @@ static inline void omap5_secondary_hyp_startup(void)
 }
 #endif
 
-#ifdef CONFIG_SOC_DRA7XX
-extern int dra7xx_pciess_reset(struct omap_hwmod *oh);
-#else
-static inline int dra7xx_pciess_reset(struct omap_hwmod *oh)
-{
-	return 0;
-}
-#endif
-
 struct omap_system_dma_plat_info;
 
 void pdata_quirks_init(const struct of_device_id *);
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -3495,10 +3495,6 @@ static const struct omap_hwmod_reset omap24xx_reset_quirks[] = {
 	{ .match = "msdi", .len = 4, .reset = omap_msdi_reset, },
 };
 
-static const struct omap_hwmod_reset dra7_reset_quirks[] = {
-	{ .match = "pcie", .len = 4, .reset = dra7xx_pciess_reset, },
-};
-
 static const struct omap_hwmod_reset omap_reset_quirks[] = {
 	{ .match = "dss_core", .len = 8, .reset = omap_dss_reset, },
 	{ .match = "hdq1w", .len = 5, .reset = omap_hdq1w_reset, },
@@ -3534,10 +3530,6 @@ omap_hwmod_init_reset_quirks(struct device *dev, struct omap_hwmod *oh,
 					    omap24xx_reset_quirks,
 					    ARRAY_SIZE(omap24xx_reset_quirks));
 
-	if (soc_is_dra7xx())
-		omap_hwmod_init_reset_quirk(dev, oh, data, dra7_reset_quirks,
-					    ARRAY_SIZE(dra7_reset_quirks));
-
 	omap_hwmod_init_reset_quirk(dev, oh, data, omap_reset_quirks,
 				    ARRAY_SIZE(omap_reset_quirks));
 }
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -266,84 +266,6 @@ static struct omap_hwmod dra7xx_mpu_hwmod = {
 	},
 };
 
-
-/*
- * 'PCIE' class
- *
- */
-
-/*
- * As noted in documentation for _reset() in omap_hwmod.c, the stock reset
- * functionality of OMAP HWMOD layer does not deassert the hardreset lines
- * associated with an IP automatically leaving the driver to handle that
- * by itself. This does not work for PCIeSS which needs the reset lines
- * deasserted for the driver to start accessing registers.
- *
- * We use a PCIeSS HWMOD class specific reset handler to deassert the hardreset
- * lines after asserting them.
- */
-int dra7xx_pciess_reset(struct omap_hwmod *oh)
-{
-	int i;
-
-	for (i = 0; i < oh->rst_lines_cnt; i++) {
-		omap_hwmod_assert_hardreset(oh, oh->rst_lines[i].name);
-		omap_hwmod_deassert_hardreset(oh, oh->rst_lines[i].name);
-	}
-
-	return 0;
-}
-
-static struct omap_hwmod_class dra7xx_pciess_hwmod_class = {
-	.name	= "pcie",
-	.reset	= dra7xx_pciess_reset,
-};
-
-/* pcie1 */
-static struct omap_hwmod_rst_info dra7xx_pciess1_resets[] = {
-	{ .name = "pcie", .rst_shift = 0 },
-};
-
-static struct omap_hwmod dra7xx_pciess1_hwmod = {
-	.name		= "pcie1",
-	.class		= &dra7xx_pciess_hwmod_class,
-	.clkdm_name	= "pcie_clkdm",
-	.rst_lines	= dra7xx_pciess1_resets,
-	.rst_lines_cnt	= ARRAY_SIZE(dra7xx_pciess1_resets),
-	.main_clk	= "l4_root_clk_div",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS1_CLKCTRL_OFFSET,
-			.rstctrl_offs = DRA7XX_RM_L3INIT_PCIESS_RSTCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3INIT_PCIESS1_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* pcie2 */
-static struct omap_hwmod_rst_info dra7xx_pciess2_resets[] = {
-	{ .name = "pcie", .rst_shift = 1 },
-};
-
-/* pcie2 */
-static struct omap_hwmod dra7xx_pciess2_hwmod = {
-	.name		= "pcie2",
-	.class		= &dra7xx_pciess_hwmod_class,
-	.clkdm_name	= "pcie_clkdm",
-	.rst_lines	= dra7xx_pciess2_resets,
-	.rst_lines_cnt	= ARRAY_SIZE(dra7xx_pciess2_resets),
-	.main_clk	= "l4_root_clk_div",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3INIT_PCIESS2_CLKCTRL_OFFSET,
-			.rstctrl_offs = DRA7XX_RM_L3INIT_PCIESS_RSTCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3INIT_PCIESS2_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'qspi' class
  *
@@ -579,38 +501,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__mpu = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> pciess1 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pciess1 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_pciess1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_cfg -> pciess1 */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pciess1 = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_pciess1_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l3_main_1 -> pciess2 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__pciess2 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_pciess2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_cfg -> pciess2 */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__pciess2 = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_pciess2_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> qspi */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -675,10 +565,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l4_wkup__ctrl_module_wkup,
 	&dra7xx_l4_cfg__mpu,
-	&dra7xx_l3_main_1__pciess1,
-	&dra7xx_l4_cfg__pciess1,
-	&dra7xx_l3_main_1__pciess2,
-	&dra7xx_l4_cfg__pciess2,
 	&dra7xx_l3_main_1__qspi,
 	&dra7xx_l4_cfg__sata,
 	&dra7xx_l3_main_1__vcp1,
-- 
2.30.0

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

* [PATCH 17/27] ARM: OMAP2+: Drop legacy platform data for dra7 qspi
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (15 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 16/27] ARM: OMAP2+: Drop legacy platform data for dra7 pcie Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 18/27] ARM: OMAP2+: Drop legacy platform data for dra7 sata Tony Lindgren
                   ` (9 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Vignesh Raghavendra, Balaji T K,
	Bjorn Helgaas, Kishon Vijay Abraham I, Lorenzo Pieralisi,
	linux-pci

We can now probe devices with ti-sysc interconnect driver and dts data.
Let's drop the related platform data and custom ti,hwmods dts property.

As we're just dropping data, and the early platform data init is based on
the custom ti,hwmods property, we want to drop both the platform data and
ti,hwmods property in a single patch.

Cc: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi               |  1 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 43 -----------------------
 2 files changed, 44 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -770,7 +770,6 @@ abb_gpu: regulator-abb-gpu {
 
 		target-module@4b300000 {
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "qspi";
 			reg = <0x4b300000 0x4>,
 			      <0x4b300010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -266,40 +266,6 @@ static struct omap_hwmod dra7xx_mpu_hwmod = {
 	},
 };
 
-/*
- * 'qspi' class
- *
- */
-
-static struct omap_hwmod_class_sysconfig dra7xx_qspi_sysc = {
-	.rev_offs	= 0,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= SYSC_HAS_SIDLEMODE,
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class dra7xx_qspi_hwmod_class = {
-	.name	= "qspi",
-	.sysc	= &dra7xx_qspi_sysc,
-};
-
-/* qspi */
-static struct omap_hwmod dra7xx_qspi_hwmod = {
-	.name		= "qspi",
-	.class		= &dra7xx_qspi_hwmod_class,
-	.clkdm_name	= "l4per2_clkdm",
-	.main_clk	= "qspi_gfclk_div",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER2_QSPI_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER2_QSPI_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'sata' class
  *
@@ -501,14 +467,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__mpu = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> qspi */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__qspi = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_qspi_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l4_cfg -> sata */
 static struct omap_hwmod_ocp_if dra7xx_l4_cfg__sata = {
 	.master		= &dra7xx_l4_cfg_hwmod,
@@ -565,7 +523,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l4_wkup__ctrl_module_wkup,
 	&dra7xx_l4_cfg__mpu,
-	&dra7xx_l3_main_1__qspi,
 	&dra7xx_l4_cfg__sata,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l4_per2__vcp1,
-- 
2.30.0

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

* [PATCH 18/27] ARM: OMAP2+: Drop legacy platform data for dra7 sata
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (16 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 17/27] ARM: OMAP2+: Drop legacy platform data for dra7 qspi Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 19/27] ARM: OMAP2+: Drop legacy platform data for dra7 mpu Tony Lindgren
                   ` (8 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe devices with ti-sysc interconnect driver and dts data.
Let's drop the related platform data and custom ti,hwmods dts property.

As we're just dropping data, and the early platform data init is based on
the custom ti,hwmods property, we want to drop both the platform data and
ti,hwmods property in a single patch.

Cc: Balaji T K <balajitk@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7-l4.dtsi            |  1 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 47 -----------------------
 2 files changed, 48 deletions(-)

diff --git a/arch/arm/boot/dts/dra7-l4.dtsi b/arch/arm/boot/dts/dra7-l4.dtsi
--- a/arch/arm/boot/dts/dra7-l4.dtsi
+++ b/arch/arm/boot/dts/dra7-l4.dtsi
@@ -576,7 +576,6 @@ target-module@8000 {			/* 0x4a108000, ap 29 1e.0 */
 
 		target-module@40000 {			/* 0x4a140000, ap 31 06.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "sata";
 			reg = <0x400fc 4>,
 			      <0x41100 4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -266,44 +266,6 @@ static struct omap_hwmod dra7xx_mpu_hwmod = {
 	},
 };
 
-/*
- * 'sata' class
- *
- */
-
-static struct omap_hwmod_class_sysconfig dra7xx_sata_sysc = {
-	.rev_offs	= 0x00fc,
-	.sysc_offs	= 0x0000,
-	.sysc_flags	= (SYSC_HAS_MIDLEMODE | SYSC_HAS_SIDLEMODE),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP | MSTANDBY_FORCE | MSTANDBY_NO |
-			   MSTANDBY_SMART | MSTANDBY_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class dra7xx_sata_hwmod_class = {
-	.name	= "sata",
-	.sysc	= &dra7xx_sata_sysc,
-};
-
-/* sata */
-
-static struct omap_hwmod dra7xx_sata_hwmod = {
-	.name		= "sata",
-	.class		= &dra7xx_sata_hwmod_class,
-	.clkdm_name	= "l3init_clkdm",
-	.flags		= HWMOD_SWSUP_SIDLE | HWMOD_SWSUP_MSTANDBY,
-	.main_clk	= "func_48m_fclk",
-	.mpu_rt_idx	= 1,
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3INIT_SATA_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3INIT_SATA_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'vcp' class
  *
@@ -467,14 +429,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__mpu = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_cfg -> sata */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__sata = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_sata_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> vcp1 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp1 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -523,7 +477,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l4_wkup__ctrl_module_wkup,
 	&dra7xx_l4_cfg__mpu,
-	&dra7xx_l4_cfg__sata,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l4_per2__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-- 
2.30.0

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

* [PATCH 19/27] ARM: OMAP2+: Drop legacy platform data for dra7 mpu
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (17 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 18/27] ARM: OMAP2+: Drop legacy platform data for dra7 sata Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 20/27] ARM: OMAP2+: Drop legacy platform data for dra7 dmm Tony Lindgren
                   ` (7 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe devices with ti-sysc interconnect driver and dts data.
Let's drop the related platform data and custom ti,hwmods dts property.

As we're just dropping data, and the early platform data init is based on
the custom ti,hwmods property, we want to drop both the platform data and
ti,hwmods property in a single patch.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi               |  1 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 42 -----------------------
 2 files changed, 43 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -158,7 +158,6 @@ l4_per1: interconnect@48000000 {
 
 		target-module@48210000 {
 			compatible = "ti,sysc-omap4-simple", "ti,sysc";
-			ti,hwmods = "mpu";
 			power-domains = <&prm_mpu>;
 			clocks = <&mpu_clkctrl DRA7_MPU_CLKCTRL 0>;
 			clock-names = "fck";
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -242,30 +242,6 @@ static struct omap_hwmod dra7xx_ctrl_module_wkup_hwmod = {
 	},
 };
 
-/*
- * 'mpu' class
- *
- */
-
-static struct omap_hwmod_class dra7xx_mpu_hwmod_class = {
-	.name	= "mpu",
-};
-
-/* mpu */
-static struct omap_hwmod dra7xx_mpu_hwmod = {
-	.name		= "mpu",
-	.class		= &dra7xx_mpu_hwmod_class,
-	.clkdm_name	= "mpu_clkdm",
-	.flags		= HWMOD_INIT_NO_IDLE | HWMOD_INIT_NO_RESET,
-	.main_clk	= "dpll_mpu_m2_ck",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_MPU_MPU_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_MPU_MPU_CONTEXT_OFFSET,
-		},
-	},
-};
-
 /*
  * 'vcp' class
  *
@@ -333,14 +309,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_cfg__l3_main_1 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* mpu -> l3_main_1 */
-static struct omap_hwmod_ocp_if dra7xx_mpu__l3_main_1 = {
-	.master		= &dra7xx_mpu_hwmod,
-	.slave		= &dra7xx_l3_main_1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU,
-};
-
 /* l3_main_1 -> l3_main_2 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l3_main_2 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -421,14 +389,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_wkup__ctrl_module_wkup = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_cfg -> mpu */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__mpu = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_mpu_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> vcp1 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp1 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -465,7 +425,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__dmm,
 	&dra7xx_l3_main_2__l3_instr,
 	&dra7xx_l4_cfg__l3_main_1,
-	&dra7xx_mpu__l3_main_1,
 	&dra7xx_l3_main_1__l3_main_2,
 	&dra7xx_l4_cfg__l3_main_2,
 	&dra7xx_l3_main_1__l4_cfg,
@@ -476,7 +435,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_per2__atl,
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l4_wkup__ctrl_module_wkup,
-	&dra7xx_l4_cfg__mpu,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l4_per2__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-- 
2.30.0

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

* [PATCH 20/27] ARM: OMAP2+: Drop legacy platform data for dra7 dmm
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (18 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 19/27] ARM: OMAP2+: Drop legacy platform data for dra7 mpu Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 21/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_wkup Tony Lindgren
                   ` (6 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe devices with ti-sysc interconnect driver and dts data.
Let's drop the related platform data and custom ti,hwmods dts property.

As we're just dropping data, and the early platform data init is based on
the custom ti,hwmods property, we want to drop both the platform data and
ti,hwmods property in a single patch.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7.dtsi               |  1 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 30 -----------------------
 2 files changed, 31 deletions(-)

diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -465,7 +465,6 @@ edma_tptc1: dma@0 {
 
 		target-module@4e000000 {
 			compatible = "ti,sysc-omap2", "ti,sysc";
-			ti,hwmods = "dmm";
 			reg = <0x4e000000 0x4>,
 			      <0x4e000010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -30,27 +30,6 @@
  * IP blocks
  */
 
-/*
- * 'dmm' class
- * instance(s): dmm
- */
-static struct omap_hwmod_class dra7xx_dmm_hwmod_class = {
-	.name	= "dmm",
-};
-
-/* dmm */
-static struct omap_hwmod dra7xx_dmm_hwmod = {
-	.name		= "dmm",
-	.class		= &dra7xx_dmm_hwmod_class,
-	.clkdm_name	= "emif_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_EMIF_DMM_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_EMIF_DMM_CONTEXT_OFFSET,
-		},
-	},
-};
-
 /*
  * 'l3' class
  * instance(s): l3_instr, l3_main_1, l3_main_2
@@ -285,14 +264,6 @@ static struct omap_hwmod dra7xx_vcp2_hwmod = {
  * Interfaces
  */
 
-/* l3_main_1 -> dmm */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__dmm = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_dmm_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_SDMA,
-};
-
 /* l3_main_2 -> l3_instr */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_2__l3_instr = {
 	.master		= &dra7xx_l3_main_2_hwmod,
@@ -422,7 +393,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per2__vcp2 = {
 };
 
 static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
-	&dra7xx_l3_main_1__dmm,
 	&dra7xx_l3_main_2__l3_instr,
 	&dra7xx_l4_cfg__l3_main_1,
 	&dra7xx_l3_main_1__l3_main_2,
-- 
2.30.0

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

* [PATCH 21/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_wkup
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (19 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 20/27] ARM: OMAP2+: Drop legacy platform data for dra7 dmm Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 22/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per1 Tony Lindgren
                   ` (5 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 54 +----------------------
 1 file changed, 1 insertion(+), 53 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -81,7 +81,7 @@ static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
 
 /*
  * 'l4' class
- * instance(s): l4_cfg, l4_per1, l4_per2, l4_per3, l4_wkup
+ * instance(s): l4_cfg, l4_per1, l4_per2, l4_per3
  */
 static struct omap_hwmod_class dra7xx_l4_hwmod_class = {
 	.name	= "l4",
@@ -139,19 +139,6 @@ static struct omap_hwmod dra7xx_l4_per3_hwmod = {
 	},
 };
 
-/* l4_wkup */
-static struct omap_hwmod dra7xx_l4_wkup_hwmod = {
-	.name		= "l4_wkup",
-	.class		= &dra7xx_l4_hwmod_class,
-	.clkdm_name	= "wkupaon_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_WKUPAON_L4_WKUP_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_WKUPAON_L4_WKUP_CONTEXT_OFFSET,
-		},
-	},
-};
-
 /*
  * 'atl' class
  *
@@ -200,27 +187,6 @@ static struct omap_hwmod dra7xx_bb2d_hwmod = {
 	},
 };
 
-/*
- * 'ctrl_module' class
- *
- */
-
-static struct omap_hwmod_class dra7xx_ctrl_module_hwmod_class = {
-	.name	= "ctrl_module",
-};
-
-/* ctrl_module_wkup */
-static struct omap_hwmod dra7xx_ctrl_module_wkup_hwmod = {
-	.name		= "ctrl_module_wkup",
-	.class		= &dra7xx_ctrl_module_hwmod_class,
-	.clkdm_name	= "wkupaon_clkdm",
-	.prcm = {
-		.omap4 = {
-			.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
-		},
-	},
-};
-
 /*
  * 'vcp' class
  *
@@ -328,14 +294,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per3 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> l4_wkup */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_wkup = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l4_wkup_hwmod,
-	.clk		= "wkupaon_iclk_mux",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l4_per2 -> atl */
 static struct omap_hwmod_ocp_if dra7xx_l4_per2__atl = {
 	.master		= &dra7xx_l4_per2_hwmod,
@@ -352,14 +310,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__bb2d = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_wkup -> ctrl_module_wkup */
-static struct omap_hwmod_ocp_if dra7xx_l4_wkup__ctrl_module_wkup = {
-	.master		= &dra7xx_l4_wkup_hwmod,
-	.slave		= &dra7xx_ctrl_module_wkup_hwmod,
-	.clk		= "wkupaon_iclk_mux",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> vcp1 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp1 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -401,10 +351,8 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__l4_per1,
 	&dra7xx_l3_main_1__l4_per2,
 	&dra7xx_l3_main_1__l4_per3,
-	&dra7xx_l3_main_1__l4_wkup,
 	&dra7xx_l4_per2__atl,
 	&dra7xx_l3_main_1__bb2d,
-	&dra7xx_l4_wkup__ctrl_module_wkup,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l4_per2__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-- 
2.30.0

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

* [PATCH 22/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per1
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (20 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 21/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_wkup Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 23/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per2 Tony Lindgren
                   ` (4 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 24 +----------------------
 1 file changed, 1 insertion(+), 23 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -81,7 +81,7 @@ static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
 
 /*
  * 'l4' class
- * instance(s): l4_cfg, l4_per1, l4_per2, l4_per3
+ * instance(s): l4_cfg, l4_per2, l4_per3
  */
 static struct omap_hwmod_class dra7xx_l4_hwmod_class = {
 	.name	= "l4",
@@ -100,19 +100,6 @@ static struct omap_hwmod dra7xx_l4_cfg_hwmod = {
 	},
 };
 
-/* l4_per1 */
-static struct omap_hwmod dra7xx_l4_per1_hwmod = {
-	.name		= "l4_per1",
-	.class		= &dra7xx_l4_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER_L4_PER1_CLKCTRL_OFFSET,
-			.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
-		},
-	},
-};
-
 /* l4_per2 */
 static struct omap_hwmod dra7xx_l4_per2_hwmod = {
 	.name		= "l4_per2",
@@ -270,14 +257,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_cfg = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> l4_per1 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per1 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l4_per1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> l4_per2 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per2 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -348,7 +327,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__l3_main_2,
 	&dra7xx_l4_cfg__l3_main_2,
 	&dra7xx_l3_main_1__l4_cfg,
-	&dra7xx_l3_main_1__l4_per1,
 	&dra7xx_l3_main_1__l4_per2,
 	&dra7xx_l3_main_1__l4_per3,
 	&dra7xx_l4_per2__atl,
-- 
2.30.0

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

* [PATCH 23/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per2
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (21 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 22/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per1 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 24/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per3 Tony Lindgren
                   ` (3 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 75 +----------------------
 1 file changed, 1 insertion(+), 74 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -81,7 +81,7 @@ static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
 
 /*
  * 'l4' class
- * instance(s): l4_cfg, l4_per2, l4_per3
+ * instance(s): l4_cfg, l4_per3
  */
 static struct omap_hwmod_class dra7xx_l4_hwmod_class = {
 	.name	= "l4",
@@ -100,19 +100,6 @@ static struct omap_hwmod dra7xx_l4_cfg_hwmod = {
 	},
 };
 
-/* l4_per2 */
-static struct omap_hwmod dra7xx_l4_per2_hwmod = {
-	.name		= "l4_per2",
-	.class		= &dra7xx_l4_hwmod_class,
-	.clkdm_name	= "l4per2_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER2_L4_PER2_CLKCTRL_OFFSET,
-			.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
-		},
-	},
-};
-
 /* l4_per3 */
 static struct omap_hwmod dra7xx_l4_per3_hwmod = {
 	.name		= "l4_per3",
@@ -126,30 +113,6 @@ static struct omap_hwmod dra7xx_l4_per3_hwmod = {
 	},
 };
 
-/*
- * 'atl' class
- *
- */
-
-static struct omap_hwmod_class dra7xx_atl_hwmod_class = {
-	.name	= "atl",
-};
-
-/* atl */
-static struct omap_hwmod dra7xx_atl_hwmod = {
-	.name		= "atl",
-	.class		= &dra7xx_atl_hwmod_class,
-	.clkdm_name	= "atl_clkdm",
-	.main_clk	= "atl_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_ATL_ATL_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_ATL_ATL_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'bb2d' class
  *
@@ -257,14 +220,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_cfg = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> l4_per2 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per2 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l4_per2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> l4_per3 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per3 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -273,14 +228,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per3 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per2 -> atl */
-static struct omap_hwmod_ocp_if dra7xx_l4_per2__atl = {
-	.master		= &dra7xx_l4_per2_hwmod,
-	.slave		= &dra7xx_atl_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> bb2d */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__bb2d = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -297,14 +244,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp1 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per2 -> vcp1 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per2__vcp1 = {
-	.master		= &dra7xx_l4_per2_hwmod,
-	.slave		= &dra7xx_vcp1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> vcp2 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp2 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -313,28 +252,16 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp2 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per2 -> vcp2 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per2__vcp2 = {
-	.master		= &dra7xx_l4_per2_hwmod,
-	.slave		= &dra7xx_vcp2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_2__l3_instr,
 	&dra7xx_l4_cfg__l3_main_1,
 	&dra7xx_l3_main_1__l3_main_2,
 	&dra7xx_l4_cfg__l3_main_2,
 	&dra7xx_l3_main_1__l4_cfg,
-	&dra7xx_l3_main_1__l4_per2,
 	&dra7xx_l3_main_1__l4_per3,
-	&dra7xx_l4_per2__atl,
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l3_main_1__vcp1,
-	&dra7xx_l4_per2__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-	&dra7xx_l4_per2__vcp2,
 	NULL,
 };
 
-- 
2.30.0

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

* [PATCH 24/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per3
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (22 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 23/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per2 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 25/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_cfg Tony Lindgren
                   ` (2 subsequent siblings)
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 24 +----------------------
 1 file changed, 1 insertion(+), 23 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -81,7 +81,7 @@ static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
 
 /*
  * 'l4' class
- * instance(s): l4_cfg, l4_per3
+ * instance(s): l4_cfg
  */
 static struct omap_hwmod_class dra7xx_l4_hwmod_class = {
 	.name	= "l4",
@@ -100,19 +100,6 @@ static struct omap_hwmod dra7xx_l4_cfg_hwmod = {
 	},
 };
 
-/* l4_per3 */
-static struct omap_hwmod dra7xx_l4_per3_hwmod = {
-	.name		= "l4_per3",
-	.class		= &dra7xx_l4_hwmod_class,
-	.clkdm_name	= "l4per3_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER3_L4_PER3_CLKCTRL_OFFSET,
-			.flags = HWMOD_OMAP4_NO_CONTEXT_LOSS_BIT,
-		},
-	},
-};
-
 /*
  * 'bb2d' class
  *
@@ -220,14 +207,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_cfg = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l3_main_1 -> l4_per3 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_per3 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l4_per3_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> bb2d */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__bb2d = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -258,7 +237,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_1__l3_main_2,
 	&dra7xx_l4_cfg__l3_main_2,
 	&dra7xx_l3_main_1__l4_cfg,
-	&dra7xx_l3_main_1__l4_per3,
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-- 
2.30.0

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

* [PATCH 25/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_cfg
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (23 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 24/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per3 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 26/27] ARM: OMAP2+: Drop legacy platform data for dra7 l3 Tony Lindgren
  2021-01-26  8:27 ` [PATCH 27/27] ARM: OMAP2+: Drop legacy platform data for dra7 hwmod Tony Lindgren
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 48 -----------------------
 1 file changed, 48 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -79,27 +79,6 @@ static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
 	},
 };
 
-/*
- * 'l4' class
- * instance(s): l4_cfg
- */
-static struct omap_hwmod_class dra7xx_l4_hwmod_class = {
-	.name	= "l4",
-};
-
-/* l4_cfg */
-static struct omap_hwmod dra7xx_l4_cfg_hwmod = {
-	.name		= "l4_cfg",
-	.class		= &dra7xx_l4_hwmod_class,
-	.clkdm_name	= "l4cfg_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4CFG_L4_CFG_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4CFG_L4_CFG_CONTEXT_OFFSET,
-		},
-	},
-};
-
 /*
  * 'bb2d' class
  *
@@ -175,14 +154,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_2__l3_instr = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_cfg -> l3_main_1 */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__l3_main_1 = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_l3_main_1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> l3_main_2 */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l3_main_2 = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -191,22 +162,6 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l3_main_2 = {
 	.user		= OCP_USER_MPU,
 };
 
-/* l4_cfg -> l3_main_2 */
-static struct omap_hwmod_ocp_if dra7xx_l4_cfg__l3_main_2 = {
-	.master		= &dra7xx_l4_cfg_hwmod,
-	.slave		= &dra7xx_l3_main_2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l3_main_1 -> l4_cfg */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l4_cfg = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l4_cfg_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_1 -> bb2d */
 static struct omap_hwmod_ocp_if dra7xx_l3_main_1__bb2d = {
 	.master		= &dra7xx_l3_main_1_hwmod,
@@ -233,10 +188,7 @@ static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp2 = {
 
 static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l3_main_2__l3_instr,
-	&dra7xx_l4_cfg__l3_main_1,
 	&dra7xx_l3_main_1__l3_main_2,
-	&dra7xx_l4_cfg__l3_main_2,
-	&dra7xx_l3_main_1__l4_cfg,
 	&dra7xx_l3_main_1__bb2d,
 	&dra7xx_l3_main_1__vcp1,
 	&dra7xx_l3_main_1__vcp2,
-- 
2.30.0

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

* [PATCH 26/27] ARM: OMAP2+: Drop legacy platform data for dra7 l3
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (24 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 25/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_cfg Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  2021-01-26  8:27 ` [PATCH 27/27] ARM: OMAP2+: Drop legacy platform data for dra7 hwmod Tony Lindgren
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 162 ----------------------
 1 file changed, 162 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -26,172 +26,10 @@
 /* Base offset for all DRA7XX interrupts external to MPUSS */
 #define DRA7XX_IRQ_GIC_START	32
 
-/*
- * IP blocks
- */
-
-/*
- * 'l3' class
- * instance(s): l3_instr, l3_main_1, l3_main_2
- */
-static struct omap_hwmod_class dra7xx_l3_hwmod_class = {
-	.name	= "l3",
-};
-
-/* l3_instr */
-static struct omap_hwmod dra7xx_l3_instr_hwmod = {
-	.name		= "l3_instr",
-	.class		= &dra7xx_l3_hwmod_class,
-	.clkdm_name	= "l3instr_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3INSTR_L3_INSTR_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3INSTR_L3_INSTR_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_HWCTRL,
-		},
-	},
-};
-
-/* l3_main_1 */
-static struct omap_hwmod dra7xx_l3_main_1_hwmod = {
-	.name		= "l3_main_1",
-	.class		= &dra7xx_l3_hwmod_class,
-	.clkdm_name	= "l3main1_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3MAIN1_L3_MAIN_1_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3MAIN1_L3_MAIN_1_CONTEXT_OFFSET,
-		},
-	},
-};
-
-/* l3_main_2 */
-static struct omap_hwmod dra7xx_l3_main_2_hwmod = {
-	.name		= "l3_main_2",
-	.class		= &dra7xx_l3_hwmod_class,
-	.clkdm_name	= "l3instr_clkdm",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3INSTR_L3_MAIN_2_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3INSTR_L3_MAIN_2_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_HWCTRL,
-		},
-	},
-};
-
-/*
- * 'bb2d' class
- *
- */
-
-static struct omap_hwmod_class dra7xx_bb2d_hwmod_class = {
-	.name	= "bb2d",
-};
-
-/* bb2d */
-static struct omap_hwmod dra7xx_bb2d_hwmod = {
-	.name		= "bb2d",
-	.class		= &dra7xx_bb2d_hwmod_class,
-	.clkdm_name	= "dss_clkdm",
-	.main_clk	= "dpll_core_h24x2_ck",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_DSS_BB2D_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_DSS_BB2D_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/*
- * 'vcp' class
- *
- */
-
-static struct omap_hwmod_class dra7xx_vcp_hwmod_class = {
-	.name	= "vcp",
-};
-
-/* vcp1 */
-static struct omap_hwmod dra7xx_vcp1_hwmod = {
-	.name		= "vcp1",
-	.class		= &dra7xx_vcp_hwmod_class,
-	.clkdm_name	= "l3main1_clkdm",
-	.main_clk	= "l3_iclk_div",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3MAIN1_VCP1_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3MAIN1_VCP1_CONTEXT_OFFSET,
-		},
-	},
-};
-
-/* vcp2 */
-static struct omap_hwmod dra7xx_vcp2_hwmod = {
-	.name		= "vcp2",
-	.class		= &dra7xx_vcp_hwmod_class,
-	.clkdm_name	= "l3main1_clkdm",
-	.main_clk	= "l3_iclk_div",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L3MAIN1_VCP2_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L3MAIN1_VCP2_CONTEXT_OFFSET,
-		},
-	},
-};
-
-
-
 /*
  * Interfaces
  */
-
-/* l3_main_2 -> l3_instr */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_2__l3_instr = {
-	.master		= &dra7xx_l3_main_2_hwmod,
-	.slave		= &dra7xx_l3_instr_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l3_main_1 -> l3_main_2 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__l3_main_2 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_l3_main_2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU,
-};
-
-/* l3_main_1 -> bb2d */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__bb2d = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_bb2d_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l3_main_1 -> vcp1 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp1 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_vcp1_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l3_main_1 -> vcp2 */
-static struct omap_hwmod_ocp_if dra7xx_l3_main_1__vcp2 = {
-	.master		= &dra7xx_l3_main_1_hwmod,
-	.slave		= &dra7xx_vcp2_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
-	&dra7xx_l3_main_2__l3_instr,
-	&dra7xx_l3_main_1__l3_main_2,
-	&dra7xx_l3_main_1__bb2d,
-	&dra7xx_l3_main_1__vcp1,
-	&dra7xx_l3_main_1__vcp2,
 	NULL,
 };
 
-- 
2.30.0

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

* [PATCH 27/27] ARM: OMAP2+: Drop legacy platform data for dra7 hwmod
  2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
                   ` (25 preceding siblings ...)
  2021-01-26  8:27 ` [PATCH 26/27] ARM: OMAP2+: Drop legacy platform data for dra7 l3 Tony Lindgren
@ 2021-01-26  8:27 ` Tony Lindgren
  26 siblings, 0 replies; 28+ messages in thread
From: Tony Lindgren @ 2021-01-26  8:27 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Balaji T K, Bjorn Helgaas,
	Kishon Vijay Abraham I, Lorenzo Pieralisi, Vignesh Raghavendra,
	linux-pci

We can now probe interconnects with simple-pm-bus and genpd.

Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/Kconfig               |  1 -
 arch/arm/mach-omap2/Makefile              |  1 -
 arch/arm/mach-omap2/io.c                  |  2 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 64 -----------------------
 4 files changed, 68 deletions(-)
 delete mode 100644 arch/arm/mach-omap2/omap_hwmod_7xx_data.c

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -90,7 +90,6 @@ config SOC_DRA7XX
 	select HAVE_ARM_ARCH_TIMER
 	select IRQ_CROSSBAR
 	select ARM_ERRATA_798181 if SMP
-	select OMAP_HWMOD
 	select OMAP_INTERCONNECT
 	select OMAP_INTERCONNECT_BARRIER
 	select PM_OPP
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -209,7 +209,6 @@ obj-$(CONFIG_ARCH_OMAP3)		+= omap_hwmod_3xxx_data.o
 obj-$(CONFIG_SOC_TI81XX)		+= omap_hwmod_81xx_data.o
 obj-$(CONFIG_ARCH_OMAP4)		+= omap_hwmod_44xx_data.o
 obj-$(CONFIG_SOC_OMAP5)			+= omap_hwmod_54xx_data.o
-obj-$(CONFIG_SOC_DRA7XX)		+= omap_hwmod_7xx_data.o
 
 # OMAP2420 MSDI controller integration support ("MMC")
 obj-$(CONFIG_SOC_OMAP2420)		+= msdi.o
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -667,8 +667,6 @@ void __init dra7xx_init_early(void)
 	dra7xxx_check_revision();
 	dra7xx_powerdomains_init();
 	dra7xx_clockdomains_init();
-	dra7xx_hwmod_init();
-	omap_hwmod_init_postsetup();
 	omap_clk_soc_init = dra7xx_dt_clk_init;
 	omap_secure_init();
 }
diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
deleted file mode 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ /dev/null
@@ -1,64 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Hardware modules present on the DRA7xx chips
- *
- * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com
- *
- * Paul Walmsley
- * Benoit Cousson
- *
- * This file is automatically generated from the OMAP hardware databases.
- * We respectfully ask that any modifications to this file be coordinated
- * with the public linux-omap@vger.kernel.org mailing list and the
- * authors above to ensure that the autogeneration scripts are kept
- * up-to-date with the file contents.
- */
-
-#include <linux/io.h>
-
-#include "omap_hwmod.h"
-#include "omap_hwmod_common_data.h"
-#include "cm1_7xx.h"
-#include "cm2_7xx.h"
-#include "prm7xx.h"
-#include "soc.h"
-
-/* Base offset for all DRA7XX interrupts external to MPUSS */
-#define DRA7XX_IRQ_GIC_START	32
-
-/*
- * Interfaces
- */
-static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
-	NULL,
-};
-
-/* SoC variant specific hwmod links */
-static struct omap_hwmod_ocp_if *dra72x_hwmod_ocp_ifs[] __initdata = {
-	NULL,
-};
-
-static struct omap_hwmod_ocp_if *rtc_hwmod_ocp_ifs[] __initdata = {
-	NULL,
-};
-
-int __init dra7xx_hwmod_init(void)
-{
-	int ret;
-
-	omap_hwmod_init();
-	ret = omap_hwmod_register_links(dra7xx_hwmod_ocp_ifs);
-
-	if (!ret && soc_is_dra74x()) {
-		ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
-	} else if (!ret && soc_is_dra72x()) {
-		ret = omap_hwmod_register_links(dra72x_hwmod_ocp_ifs);
-		if (!ret && !of_machine_is_compatible("ti,dra718"))
-			ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
-	} else if (!ret && soc_is_dra76x()) {
-		if (!ret && soc_is_dra76x_abz())
-			ret = omap_hwmod_register_links(rtc_hwmod_ocp_ifs);
-	}
-
-	return ret;
-}
-- 
2.30.0

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

end of thread, other threads:[~2021-01-26 19:06 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-26  8:26 [PATCH 00/27] Update dra7 to probe with genpd to drop legacy pdata Tony Lindgren
2021-01-26  8:26 ` [PATCH 01/27] PCI: pci-dra7xx: Prepare for deferred probe with module_platform_driver Tony Lindgren
2021-01-26  8:26 ` [PATCH 02/27] ARM: dts: Update pcie ranges for dra7 Tony Lindgren
2021-01-26  8:26 ` [PATCH 03/27] ARM: dts: Configure interconnect target module for dra7 pcie Tony Lindgren
2021-01-26  8:26 ` [PATCH 04/27] ARM: dts: Properly configure dra7 edma sysconfig registers Tony Lindgren
2021-01-26  8:26 ` [PATCH 05/27] ARM: dts: Move dra7 l3 noc to a separate node Tony Lindgren
2021-01-26  8:26 ` [PATCH 06/27] ARM: dts: Configure interconnect target module for dra7 qspi Tony Lindgren
2021-01-26  8:26 ` [PATCH 07/27] ARM: dts: Configure interconnect target module for dra7 sata Tony Lindgren
2021-01-26  8:26 ` [PATCH 08/27] ARM: dts: Configure interconnect target module for dra7 mpu Tony Lindgren
2021-01-26  8:26 ` [PATCH 09/27] ARM: dts: Configure interconnect target module for dra7 dmm Tony Lindgren
2021-01-26  8:26 ` [PATCH 10/27] ARM: dts: Configure simple-pm-bus for dra7 l4_wkup Tony Lindgren
2021-01-26  8:27 ` [PATCH 11/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per1 Tony Lindgren
2021-01-26  8:27 ` [PATCH 12/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per2 Tony Lindgren
2021-01-26  8:27 ` [PATCH 13/27] ARM: dts: Configure simple-pm-bus for dra7 l4_per3 Tony Lindgren
2021-01-26  8:27 ` [PATCH 14/27] ARM: dts: Configure simple-pm-bus for dra7 l4_cfg Tony Lindgren
2021-01-26  8:27 ` [PATCH 15/27] ARM: dts: Configure simple-pm-bus for dra7 l3 Tony Lindgren
2021-01-26  8:27 ` [PATCH 16/27] ARM: OMAP2+: Drop legacy platform data for dra7 pcie Tony Lindgren
2021-01-26  8:27 ` [PATCH 17/27] ARM: OMAP2+: Drop legacy platform data for dra7 qspi Tony Lindgren
2021-01-26  8:27 ` [PATCH 18/27] ARM: OMAP2+: Drop legacy platform data for dra7 sata Tony Lindgren
2021-01-26  8:27 ` [PATCH 19/27] ARM: OMAP2+: Drop legacy platform data for dra7 mpu Tony Lindgren
2021-01-26  8:27 ` [PATCH 20/27] ARM: OMAP2+: Drop legacy platform data for dra7 dmm Tony Lindgren
2021-01-26  8:27 ` [PATCH 21/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_wkup Tony Lindgren
2021-01-26  8:27 ` [PATCH 22/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per1 Tony Lindgren
2021-01-26  8:27 ` [PATCH 23/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per2 Tony Lindgren
2021-01-26  8:27 ` [PATCH 24/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_per3 Tony Lindgren
2021-01-26  8:27 ` [PATCH 25/27] ARM: OMAP2+: Drop legacy platform data for dra7 l4_cfg Tony Lindgren
2021-01-26  8:27 ` [PATCH 26/27] ARM: OMAP2+: Drop legacy platform data for dra7 l3 Tony Lindgren
2021-01-26  8:27 ` [PATCH 27/27] ARM: OMAP2+: Drop legacy platform data for dra7 hwmod Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).