All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9] Probe l4 abe and most timers with ti-sysc
@ 2019-12-10 23:35 Tony Lindgren
  2019-12-10 23:35 ` [PATCH 1/9] ARM: OMAP2+: Drop legacy platform data for omap4 aess Tony Lindgren
                   ` (9 more replies)
  0 siblings, 10 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

Hi all,

This series updates l4-abe devices and non-system timers to probe with
ti-sysc.

After this series we now have l4-abe instances with all devices probing
with dts data and ti-sysc driver. So for omap4 and 5, l4-abe can now be
used to experiment with adding genpd support to drivers/soc/ti/omap_prm.c
to power down the abe domain when not in use :)

Note that we cannot yet probe system timers with ti-sysc.

Regards,

Tony


Tony Lindgren (9):
  ARM: OMAP2+: Drop legacy platform data for omap4 aess
  ARM: OMAP2+: Drop legacy platform data for omap4 dmic
  ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm
  ARM: OMAP2+: Drop legacy platform data for omap5 dmic
  ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm
  ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1
  ARM: OMAP2+: Drop legacy platform data for omap5 timers except timer1
  ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except
    timer1 and 2
  ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1
    to 4

 arch/arm/boot/dts/am33xx-l4.dtsi              |   5 -
 arch/arm/boot/dts/am437x-l4.dtsi              |   9 -
 arch/arm/boot/dts/dra7-l4.dtsi                |  12 -
 arch/arm/boot/dts/omap4-l4-abe.dtsi           |   7 -
 arch/arm/boot/dts/omap4-l4.dtsi               |   6 -
 arch/arm/boot/dts/omap5-l4-abe.dtsi           |   6 -
 arch/arm/boot/dts/omap5-l4.dtsi               |   6 -
 arch/arm/mach-omap2/omap_hwmod.c              |  18 -
 arch/arm/mach-omap2/omap_hwmod.h              |   3 -
 .../omap_hwmod_33xx_43xx_common_data.h        |  10 -
 .../omap_hwmod_33xx_43xx_interconnect_data.c  |  40 --
 .../omap_hwmod_33xx_43xx_ipblock_data.c       |  70 ---
 arch/arm/mach-omap2/omap_hwmod_33xx_data.c    |   5 -
 arch/arm/mach-omap2/omap_hwmod_43xx_data.c    |  89 ----
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c    | 421 ------------------
 arch/arm/mach-omap2/omap_hwmod_54xx_data.c    | 357 ---------------
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c     | 295 ------------
 arch/arm/mach-omap2/omap_hwmod_reset.c        |  24 -
 include/sound/aess.h                          |  53 ---
 19 files changed, 1436 deletions(-)
 delete mode 100644 include/sound/aess.h

-- 
2.24.0

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

* [PATCH 1/9] ARM: OMAP2+: Drop legacy platform data for omap4 aess
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 2/9] ARM: OMAP2+: Drop legacy platform data for omap4 dmic Tony Lindgren
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

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: Keerthy <j-keerthy@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap4-l4-abe.dtsi        |  1 -
 arch/arm/mach-omap2/omap_hwmod.c           | 18 ------
 arch/arm/mach-omap2/omap_hwmod.h           |  3 -
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 64 ----------------------
 arch/arm/mach-omap2/omap_hwmod_reset.c     | 24 --------
 include/sound/aess.h                       | 53 ------------------
 6 files changed, 163 deletions(-)
 delete mode 100644 include/sound/aess.h

diff --git a/arch/arm/boot/dts/omap4-l4-abe.dtsi b/arch/arm/boot/dts/omap4-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap4-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap4-l4-abe.dtsi
@@ -466,7 +466,6 @@ target-module@c0000 {			/* 0x401c0000, ap 30 1e.0 */
 
 		target-module@f1000 {			/* 0x401f1000, ap 32 20.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "aess";
 			reg = <0xf1000 0x4>,
 			      <0xf1010 0x4>;
 			reg-names = "rev", "sysc";
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
@@ -1852,23 +1852,6 @@ static int _omap4_get_context_lost(struct omap_hwmod *oh)
 	return oh->prcm.omap4.context_lost_counter;
 }
 
-/**
- * _enable_preprogram - Pre-program an IP block during the _enable() process
- * @oh: struct omap_hwmod *
- *
- * Some IP blocks (such as AESS) require some additional programming
- * after enable before they can enter idle.  If a function pointer to
- * do so is present in the hwmod data, then call it and pass along the
- * return value; otherwise, return 0.
- */
-static int _enable_preprogram(struct omap_hwmod *oh)
-{
-	if (!oh->class->enable_preprogram)
-		return 0;
-
-	return oh->class->enable_preprogram(oh);
-}
-
 /**
  * _enable - enable an omap_hwmod
  * @oh: struct omap_hwmod *
@@ -1952,7 +1935,6 @@ static int _enable(struct omap_hwmod *oh)
 				_update_sysc_cache(oh);
 			_enable_sysc(oh);
 		}
-		r = _enable_preprogram(oh);
 	} else {
 		if (soc_ops.disable_module)
 			soc_ops.disable_module(oh);
diff --git a/arch/arm/mach-omap2/omap_hwmod.h b/arch/arm/mach-omap2/omap_hwmod.h
--- a/arch/arm/mach-omap2/omap_hwmod.h
+++ b/arch/arm/mach-omap2/omap_hwmod.h
@@ -501,7 +501,6 @@ struct omap_hwmod_omap4_prcm {
  * @sysc: device SYSCONFIG/SYSSTATUS register data
  * @pre_shutdown: ptr to fn to be executed immediately prior to device shutdown
  * @reset: ptr to fn to be executed in place of the standard hwmod reset fn
- * @enable_preprogram:  ptr to fn to be executed during device enable
  * @lock: ptr to fn to be executed to lock IP registers
  * @unlock: ptr to fn to be executed to unlock IP registers
  *
@@ -526,7 +525,6 @@ struct omap_hwmod_class {
 	struct omap_hwmod_class_sysconfig	*sysc;
 	int					(*pre_shutdown)(struct omap_hwmod *oh);
 	int					(*reset)(struct omap_hwmod *oh);
-	int					(*enable_preprogram)(struct omap_hwmod *oh);
 	void					(*lock)(struct omap_hwmod *oh);
 	void					(*unlock)(struct omap_hwmod *oh);
 };
@@ -662,7 +660,6 @@ const char *omap_hwmod_get_main_clk(struct omap_hwmod *oh);
  *
  */
 
-extern int omap_hwmod_aess_preprogram(struct omap_hwmod *oh);
 void omap_hwmod_rtc_unlock(struct omap_hwmod *oh);
 void omap_hwmod_rtc_lock(struct omap_hwmod *oh);
 
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -237,43 +237,6 @@ static struct omap_hwmod omap44xx_ocp_wp_noc_hwmod = {
  * usim
  */
 
-/*
- * 'aess' class
- * audio engine sub system
- */
-
-static struct omap_hwmod_class_sysconfig omap44xx_aess_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_MIDLEMODE | SYSC_HAS_SIDLEMODE),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   MSTANDBY_FORCE | MSTANDBY_NO | MSTANDBY_SMART |
-			   MSTANDBY_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap44xx_aess_hwmod_class = {
-	.name	= "aess",
-	.sysc	= &omap44xx_aess_sysc,
-	.enable_preprogram = omap_hwmod_aess_preprogram,
-};
-
-/* aess */
-static struct omap_hwmod omap44xx_aess_hwmod = {
-	.name		= "aess",
-	.class		= &omap44xx_aess_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "aess_fclk",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_AESS_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_AESS_CONTEXT_OFFSET,
-			.lostcontext_mask = OMAP4430_LOSTCONTEXT_DFF_MASK,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'counter' class
  * 32-bit ordinary counter, clocked by the falling edge of the 32 khz clock
@@ -2194,14 +2157,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_cfg__l3_main_3 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* aess -> l4_abe */
-static struct omap_hwmod_ocp_if __maybe_unused omap44xx_aess__l4_abe = {
-	.master		= &omap44xx_aess_hwmod,
-	.slave		= &omap44xx_l4_abe_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* dsp -> l4_abe */
 static struct omap_hwmod_ocp_if omap44xx_dsp__l4_abe = {
 	.master		= &omap44xx_dsp_hwmod,
@@ -2266,22 +2221,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_cfg__ocp_wp_noc = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_abe -> aess */
-static struct omap_hwmod_ocp_if __maybe_unused omap44xx_l4_abe__aess = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_aess_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4_abe -> aess (dma) */
-static struct omap_hwmod_ocp_if __maybe_unused omap44xx_l4_abe__aess_dma = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_aess_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_SDMA,
-};
-
 /* l4_wkup -> counter_32k */
 static struct omap_hwmod_ocp_if omap44xx_l4_wkup__counter_32k = {
 	.master		= &omap44xx_l4_wkup_hwmod,
@@ -2835,7 +2774,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
 	&omap44xx_l3_main_1__l3_main_3,
 	&omap44xx_l3_main_2__l3_main_3,
 	&omap44xx_l4_cfg__l3_main_3,
-	&omap44xx_aess__l4_abe,
 	&omap44xx_dsp__l4_abe,
 	&omap44xx_l3_main_1__l4_abe,
 	&omap44xx_mpu__l4_abe,
@@ -2844,8 +2782,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
 	&omap44xx_l4_cfg__l4_wkup,
 	&omap44xx_mpu__mpu_private,
 	&omap44xx_l4_cfg__ocp_wp_noc,
-	&omap44xx_l4_abe__aess,
-	&omap44xx_l4_abe__aess_dma,
 	&omap44xx_l4_wkup__counter_32k,
 	&omap44xx_l4_cfg__ctrl_module_core,
 	&omap44xx_l4_cfg__ctrl_module_pad_core,
diff --git a/arch/arm/mach-omap2/omap_hwmod_reset.c b/arch/arm/mach-omap2/omap_hwmod_reset.c
--- a/arch/arm/mach-omap2/omap_hwmod_reset.c
+++ b/arch/arm/mach-omap2/omap_hwmod_reset.c
@@ -26,8 +26,6 @@
 #include <linux/kernel.h>
 #include <linux/errno.h>
 
-#include <sound/aess.h>
-
 #include "omap_hwmod.h"
 #include "common.h"
 
@@ -40,28 +38,6 @@
 #define OMAP_RTC_STATUS_BUSY	BIT(0)
 #define OMAP_RTC_MAX_READY_TIME	50
 
-/**
- * omap_hwmod_aess_preprogram - enable AESS internal autogating
- * @oh: struct omap_hwmod *
- *
- * The AESS will not IdleAck to the PRCM until its internal autogating
- * is enabled.  Since internal autogating is disabled by default after
- * AESS reset, we must enable autogating after the hwmod code resets
- * the AESS.  Returns 0.
- */
-int omap_hwmod_aess_preprogram(struct omap_hwmod *oh)
-{
-	void __iomem *va;
-
-	va = omap_hwmod_get_mpu_rt_va(oh);
-	if (!va)
-		return -EINVAL;
-
-	aess_enable_autogating(va);
-
-	return 0;
-}
-
 /**
  * omap_rtc_wait_not_busy - Wait for the RTC BUSY flag
  * @oh: struct omap_hwmod *
diff --git a/include/sound/aess.h b/include/sound/aess.h
deleted file mode 100644
--- a/include/sound/aess.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * AESS IP block reset
- *
- * Copyright (C) 2012 Texas Instruments, Inc.
- * Paul Walmsley
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation version 2.
- *
- * This program is distributed "as is" WITHOUT ANY WARRANTY of any
- * kind, whether express or implied; without even the implied warranty
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA
- */
-#ifndef __SOUND_AESS_H__
-#define __SOUND_AESS_H__
-
-#include <linux/kernel.h>
-#include <linux/io.h>
-
-/*
- * AESS_AUTO_GATING_ENABLE_OFFSET: offset in bytes of the AESS IP
- *     block's AESS_AUTO_GATING_ENABLE__1 register from the IP block's
- *     base address
- */
-#define AESS_AUTO_GATING_ENABLE_OFFSET			0x07c
-
-/* Register bitfields in the AESS_AUTO_GATING_ENABLE__1 register */
-#define AESS_AUTO_GATING_ENABLE_SHIFT			0
-
-/**
- * aess_enable_autogating - enable AESS internal autogating
- * @oh: struct omap_hwmod *
- *
- * Enable internal autogating on the AESS.  This allows the AESS to
- * indicate that it is idle to the OMAP PRCM.  Returns 0.
- */
-static inline void aess_enable_autogating(void __iomem *base)
-{
-	u32 v;
-
-	/* Set AESS_AUTO_GATING_ENABLE__1.ENABLE to allow idle entry */
-	v = 1 << AESS_AUTO_GATING_ENABLE_SHIFT;
-	writel(v, base + AESS_AUTO_GATING_ENABLE_OFFSET);
-}
-
-#endif /* __SOUND_AESS_H__ */
-- 
2.24.0

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

* [PATCH 2/9] ARM: OMAP2+: Drop legacy platform data for omap4 dmic
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
  2019-12-10 23:35 ` [PATCH 1/9] ARM: OMAP2+: Drop legacy platform data for omap4 aess Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 3/9] ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm Tony Lindgren
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

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: Keerthy <j-keerthy@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap4-l4-abe.dtsi        |  1 -
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 43 ----------------------
 2 files changed, 44 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4-abe.dtsi b/arch/arm/boot/dts/omap4-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap4-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap4-l4-abe.dtsi
@@ -219,7 +219,6 @@ target-module@2a000 {			/* 0x4012a000, ap 10 0a.0 */
 
 		target-module@2e000 {			/* 0x4012e000, ap 12 0c.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "dmic";
 			reg = <0x2e000 0x4>,
 			      <0x2e010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -407,40 +407,6 @@ static struct omap_hwmod omap44xx_dma_system_hwmod = {
 	.dev_attr	= &dma_dev_attr,
 };
 
-/*
- * 'dmic' class
- * digital microphone controller
- */
-
-static struct omap_hwmod_class_sysconfig omap44xx_dmic_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap44xx_dmic_hwmod_class = {
-	.name	= "dmic",
-	.sysc	= &omap44xx_dmic_sysc,
-};
-
-/* dmic */
-static struct omap_hwmod omap44xx_dmic_hwmod = {
-	.name		= "dmic",
-	.class		= &omap44xx_dmic_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "func_dmic_abe_gfclk",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_DMIC_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_DMIC_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
 
 /*
  * 'dsp' class
@@ -2277,14 +2243,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_cfg__dma_system = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_abe -> dmic */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__dmic = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_dmic_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* dsp -> iva */
 static struct omap_hwmod_ocp_if omap44xx_dsp__iva = {
 	.master		= &omap44xx_dsp_hwmod,
@@ -2789,7 +2747,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
 	&omap44xx_l4_wkup__ctrl_module_pad_wkup,
 	&omap44xx_l3_instr__debugss,
 	&omap44xx_l4_cfg__dma_system,
-	&omap44xx_l4_abe__dmic,
 	&omap44xx_dsp__iva,
 	/* &omap44xx_dsp__sl2if, */
 	&omap44xx_l4_cfg__dsp,
-- 
2.24.0

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

* [PATCH 3/9] ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
  2019-12-10 23:35 ` [PATCH 1/9] ARM: OMAP2+: Drop legacy platform data for omap4 aess Tony Lindgren
  2019-12-10 23:35 ` [PATCH 2/9] ARM: OMAP2+: Drop legacy platform data for omap4 dmic Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 4/9] ARM: OMAP2+: Drop legacy platform data for omap5 dmic Tony Lindgren
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

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: Keerthy <j-keerthy@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap4-l4-abe.dtsi        |  1 -
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 57 ----------------------
 2 files changed, 58 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4-abe.dtsi b/arch/arm/boot/dts/omap4-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap4-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap4-l4-abe.dtsi
@@ -278,7 +278,6 @@ wdt3: wdt@0 {
 
 		mcpdm_module: target-module@32000 {	/* 0x40132000, ap 16 10.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "mcpdm";
 			reg = <0x32000 0x4>,
 			      <0x32010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -1061,54 +1061,6 @@ static struct omap_hwmod omap44xx_kbd_hwmod = {
 };
 
 
-/*
- * 'mcpdm' class
- * multi channel pdm controller (proprietary interface with phoenix power
- * ic)
- */
-
-static struct omap_hwmod_class_sysconfig omap44xx_mcpdm_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap44xx_mcpdm_hwmod_class = {
-	.name	= "mcpdm",
-	.sysc	= &omap44xx_mcpdm_sysc,
-};
-
-/* mcpdm */
-static struct omap_hwmod omap44xx_mcpdm_hwmod = {
-	.name		= "mcpdm",
-	.class		= &omap44xx_mcpdm_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	/*
-	 * It's suspected that the McPDM requires an off-chip main
-	 * functional clock, controlled via I2C.  This IP block is
-	 * currently reset very early during boot, before I2C is
-	 * available, so it doesn't seem that we have any choice in
-	 * the kernel other than to avoid resetting it.
-	 *
-	 * Also, McPDM needs to be configured to NO_IDLE mode when it
-	 * is in used otherwise vital clocks will be gated which
-	 * results 'slow motion' audio playback.
-	 */
-	.flags		= HWMOD_EXT_OPT_MAIN_CLK | HWMOD_SWSUP_SIDLE,
-	.main_clk	= "pad_clks_ck",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_PDM_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_PDM_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'mmu' class
  * The memory management unit performs virtual to physical address translation
@@ -2451,14 +2403,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_wkup__kbd = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_abe -> mcpdm */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__mcpdm = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_mcpdm_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l3_main_2 -> ocmc_ram */
 static struct omap_hwmod_ocp_if omap44xx_l3_main_2__ocmc_ram = {
 	.master		= &omap44xx_l3_main_2_hwmod,
@@ -2773,7 +2717,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
 	/* &omap44xx_iva__sl2if, */
 	&omap44xx_l3_main_2__iva,
 	&omap44xx_l4_wkup__kbd,
-	&omap44xx_l4_abe__mcpdm,
 	&omap44xx_l3_main_2__mmu_ipu,
 	&omap44xx_l4_cfg__mmu_dsp,
 	&omap44xx_l3_main_2__ocmc_ram,
-- 
2.24.0

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

* [PATCH 4/9] ARM: OMAP2+: Drop legacy platform data for omap5 dmic
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (2 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 3/9] ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 5/9] ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm Tony Lindgren
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

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: Keerthy <j-keerthy@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4-abe.dtsi        |  1 -
 arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 43 ----------------------
 2 files changed, 44 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4-abe.dtsi b/arch/arm/boot/dts/omap5-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap5-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap5-l4-abe.dtsi
@@ -203,7 +203,6 @@ target-module@2a000 {			/* 0x4012a000, ap 10 0a.0 */
 
 		target-module@2e000 {			/* 0x4012e000, ap 12 0c.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "dmic";
 			reg = <0x2e000 0x4>,
 			      <0x2e010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
@@ -278,40 +278,6 @@ static struct omap_hwmod omap54xx_dma_system_hwmod = {
 	.dev_attr	= &dma_dev_attr,
 };
 
-/*
- * 'dmic' class
- * digital microphone controller
- */
-
-static struct omap_hwmod_class_sysconfig omap54xx_dmic_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap54xx_dmic_hwmod_class = {
-	.name	= "dmic",
-	.sysc	= &omap54xx_dmic_sysc,
-};
-
-/* dmic */
-static struct omap_hwmod omap54xx_dmic_hwmod = {
-	.name		= "dmic",
-	.class		= &omap54xx_dmic_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "dmic_gfclk",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_DMIC_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_DMIC_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
 
 /*
  * 'dss' class
@@ -1431,14 +1397,6 @@ static struct omap_hwmod_ocp_if omap54xx_l4_cfg__dma_system = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_abe -> dmic */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__dmic = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_dmic_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
 /* l3_main_2 -> dss */
 static struct omap_hwmod_ocp_if omap54xx_l3_main_2__dss = {
 	.master		= &omap54xx_l3_main_2_hwmod,
@@ -1674,7 +1632,6 @@ static struct omap_hwmod_ocp_if *omap54xx_hwmod_ocp_ifs[] __initdata = {
 	&omap54xx_mpu__mpu_private,
 	&omap54xx_l4_wkup__counter_32k,
 	&omap54xx_l4_cfg__dma_system,
-	&omap54xx_l4_abe__dmic,
 	&omap54xx_l4_cfg__mmu_dsp,
 	&omap54xx_l3_main_2__dss,
 	&omap54xx_l3_main_2__dss_dispc,
-- 
2.24.0

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

* [PATCH 5/9] ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (3 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 4/9] ARM: OMAP2+: Drop legacy platform data for omap5 dmic Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 6/9] ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1 Tony Lindgren
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi, Tero Kristo

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: Keerthy <j-keerthy@ti.com>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4-abe.dtsi        |  1 -
 arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 57 ----------------------
 2 files changed, 58 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4-abe.dtsi b/arch/arm/boot/dts/omap5-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap5-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap5-l4-abe.dtsi
@@ -243,7 +243,6 @@ target-module@30000 {			/* 0x40130000, ap 14 0e.0 */
 
 		mcpdm_module: target-module@32000 {	/* 0x40132000, ap 16 10.0 */
 			compatible = "ti,sysc-omap4", "ti,sysc";
-			ti,hwmods = "mcpdm";
 			reg = <0x32000 0x4>,
 			      <0x32010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
@@ -593,54 +593,6 @@ static struct omap_hwmod omap54xx_kbd_hwmod = {
 	},
 };
 
-/*
- * 'mcpdm' class
- * multi channel pdm controller (proprietary interface with phoenix power
- * ic)
- */
-
-static struct omap_hwmod_class_sysconfig omap54xx_mcpdm_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap54xx_mcpdm_hwmod_class = {
-	.name	= "mcpdm",
-	.sysc	= &omap54xx_mcpdm_sysc,
-};
-
-/* mcpdm */
-static struct omap_hwmod omap54xx_mcpdm_hwmod = {
-	.name		= "mcpdm",
-	.class		= &omap54xx_mcpdm_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	/*
-	 * It's suspected that the McPDM requires an off-chip main
-	 * functional clock, controlled via I2C.  This IP block is
-	 * currently reset very early during boot, before I2C is
-	 * available, so it doesn't seem that we have any choice in
-	 * the kernel other than to avoid resetting it.  XXX This is
-	 * really a hardware issue workaround: every IP block should
-	 * be able to source its main functional clock from either
-	 * on-chip or off-chip sources.  McPDM seems to be the only
-	 * current exception.
-	 */
-
-	.flags		= HWMOD_EXT_OPT_MAIN_CLK | HWMOD_SWSUP_SIDLE,
-	.main_clk	= "pad_clks_ck",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_MCPDM_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_MCPDM_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
 
 
 /*
@@ -1469,14 +1421,6 @@ static struct omap_hwmod_ocp_if omap54xx_l4_wkup__kbd = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_abe -> mcpdm */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__mcpdm = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_mcpdm_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
 /* l4_cfg -> mpu */
 static struct omap_hwmod_ocp_if omap54xx_l4_cfg__mpu = {
 	.master		= &omap54xx_l4_cfg_hwmod,
@@ -1643,7 +1587,6 @@ static struct omap_hwmod_ocp_if *omap54xx_hwmod_ocp_ifs[] __initdata = {
 	&omap54xx_mpu__emif2,
 	&omap54xx_l3_main_2__mmu_ipu,
 	&omap54xx_l4_wkup__kbd,
-	&omap54xx_l4_abe__mcpdm,
 	&omap54xx_l4_cfg__mpu,
 	&omap54xx_l4_cfg__spinlock,
 	&omap54xx_l4_cfg__ocp2scp1,
-- 
2.24.0

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

* [PATCH 6/9] ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (4 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 5/9] ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 7/9] ARM: OMAP2+: Drop legacy platform data for omap5 " Tony Lindgren
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Tero Kristo, Peter Ujfalusi

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: Keerthy <j-keerthy@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap4-l4-abe.dtsi        |   4 -
 arch/arm/boot/dts/omap4-l4.dtsi            |   6 -
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 257 ---------------------
 3 files changed, 267 deletions(-)

diff --git a/arch/arm/boot/dts/omap4-l4-abe.dtsi b/arch/arm/boot/dts/omap4-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap4-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap4-l4-abe.dtsi
@@ -312,7 +312,6 @@ mcpdm: mcpdm@0 {
 
 		target-module@38000 {			/* 0x40138000, ap 18 12.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer5";
 			reg = <0x38000 0x4>,
 			      <0x38010 0x4>;
 			reg-names = "rev", "sysc";
@@ -343,7 +342,6 @@ timer5: timer@0 {
 
 		target-module@3a000 {			/* 0x4013a000, ap 20 14.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer6";
 			reg = <0x3a000 0x4>,
 			      <0x3a010 0x4>;
 			reg-names = "rev", "sysc";
@@ -374,7 +372,6 @@ timer6: timer@0 {
 
 		target-module@3c000 {			/* 0x4013c000, ap 22 16.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer7";
 			reg = <0x3c000 0x4>,
 			      <0x3c010 0x4>;
 			reg-names = "rev", "sysc";
@@ -405,7 +402,6 @@ timer7: timer@0 {
 
 		target-module@3e000 {			/* 0x4013e000, ap 24 18.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer8";
 			reg = <0x3e000 0x4>,
 			      <0x3e010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/boot/dts/omap4-l4.dtsi b/arch/arm/boot/dts/omap4-l4.dtsi
--- a/arch/arm/boot/dts/omap4-l4.dtsi
+++ b/arch/arm/boot/dts/omap4-l4.dtsi
@@ -1422,7 +1422,6 @@ uart3: serial@0 {
 
 		target-module@32000 {			/* 0x48032000, ap 5 02.0 */
 			compatible = "ti,sysc-omap2-timer", "ti,sysc";
-			ti,hwmods = "timer2";
 			reg = <0x32000 0x4>,
 			      <0x32010 0x4>,
 			      <0x32014 0x4>;
@@ -1454,7 +1453,6 @@ timer2: timer@0 {
 
 		target-module@34000 {			/* 0x48034000, ap 7 04.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer3";
 			reg = <0x34000 0x4>,
 			      <0x34010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1482,7 +1480,6 @@ timer3: timer@0 {
 
 		target-module@36000 {			/* 0x48036000, ap 9 0e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer4";
 			reg = <0x36000 0x4>,
 			      <0x36010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1510,7 +1507,6 @@ timer4: timer@0 {
 
 		target-module@3e000 {			/* 0x4803e000, ap 11 08.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer9";
 			reg = <0x3e000 0x4>,
 			      <0x3e010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1942,7 +1938,6 @@ elm: elm@0 {
 
 		target-module@86000 {			/* 0x48086000, ap 43 24.0 */
 			compatible = "ti,sysc-omap2-timer", "ti,sysc";
-			ti,hwmods = "timer10";
 			reg = <0x86000 0x4>,
 			      <0x86010 0x4>,
 			      <0x86014 0x4>;
@@ -1975,7 +1970,6 @@ timer10: timer@0 {
 
 		target-module@88000 {			/* 0x48088000, ap 45 2e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer11";
 			reg = <0x88000 0x4>,
 			      <0x88010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -1548,21 +1548,6 @@ static struct omap_hwmod_class omap44xx_timer_1ms_hwmod_class = {
 	.sysc	= &omap44xx_timer_1ms_sysc,
 };
 
-static struct omap_hwmod_class_sysconfig omap44xx_timer_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap44xx_timer_hwmod_class = {
-	.name	= "timer",
-	.sysc	= &omap44xx_timer_sysc,
-};
-
 /* timer1 */
 static struct omap_hwmod omap44xx_timer1_hwmod = {
 	.name		= "timer1",
@@ -1579,158 +1564,6 @@ static struct omap_hwmod omap44xx_timer1_hwmod = {
 	},
 };
 
-/* timer2 */
-static struct omap_hwmod omap44xx_timer2_hwmod = {
-	.name		= "timer2",
-	.class		= &omap44xx_timer_1ms_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.flags		= HWMOD_SET_DEFAULT_CLOCKACT,
-	.main_clk	= "cm2_dm2_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER2_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER2_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer3 */
-static struct omap_hwmod omap44xx_timer3_hwmod = {
-	.name		= "timer3",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.main_clk	= "cm2_dm3_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER3_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER3_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer4 */
-static struct omap_hwmod omap44xx_timer4_hwmod = {
-	.name		= "timer4",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.main_clk	= "cm2_dm4_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER4_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER4_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer5 */
-static struct omap_hwmod omap44xx_timer5_hwmod = {
-	.name		= "timer5",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer5_sync_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_TIMER5_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_TIMER5_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer6 */
-static struct omap_hwmod omap44xx_timer6_hwmod = {
-	.name		= "timer6",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer6_sync_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_TIMER6_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_TIMER6_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer7 */
-static struct omap_hwmod omap44xx_timer7_hwmod = {
-	.name		= "timer7",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer7_sync_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_TIMER7_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_TIMER7_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer8 */
-static struct omap_hwmod omap44xx_timer8_hwmod = {
-	.name		= "timer8",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer8_sync_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM1_ABE_TIMER8_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_ABE_TIMER8_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer9 */
-static struct omap_hwmod omap44xx_timer9_hwmod = {
-	.name		= "timer9",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.main_clk	= "cm2_dm9_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER9_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER9_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer10 */
-static struct omap_hwmod omap44xx_timer10_hwmod = {
-	.name		= "timer10",
-	.class		= &omap44xx_timer_1ms_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.flags		= HWMOD_SET_DEFAULT_CLOCKACT,
-	.main_clk	= "cm2_dm10_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER10_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER10_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer11 */
-static struct omap_hwmod omap44xx_timer11_hwmod = {
-	.name		= "timer11",
-	.class		= &omap44xx_timer_hwmod_class,
-	.clkdm_name	= "l4_per_clkdm",
-	.main_clk	= "cm2_dm11_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP4_CM_L4PER_DMTIMER11_CLKCTRL_OFFSET,
-			.context_offs = OMAP4_RM_L4PER_DMTIMER11_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'usb_host_fs' class
  * full-speed usb host controller
@@ -2531,86 +2364,6 @@ static struct omap_hwmod_ocp_if omap44xx_l4_wkup__timer1 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per -> timer2 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer2 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer2_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer3 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer3 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer3_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer4 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer4 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer4_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_abe -> timer5 */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__timer5 = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_timer5_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_abe -> timer6 */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__timer6 = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_timer6_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_abe -> timer7 */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__timer7 = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_timer7_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_abe -> timer8 */
-static struct omap_hwmod_ocp_if omap44xx_l4_abe__timer8 = {
-	.master		= &omap44xx_l4_abe_hwmod,
-	.slave		= &omap44xx_timer8_hwmod,
-	.clk		= "ocp_abe_iclk",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer9 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer9 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer9_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer10 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer10 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer10_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer11 */
-static struct omap_hwmod_ocp_if omap44xx_l4_per__timer11 = {
-	.master		= &omap44xx_l4_per_hwmod,
-	.slave		= &omap44xx_timer11_hwmod,
-	.clk		= "l4_div_ck",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l4_cfg -> usb_host_fs */
 static struct omap_hwmod_ocp_if __maybe_unused omap44xx_l4_cfg__usb_host_fs = {
 	.master		= &omap44xx_l4_cfg_hwmod,
@@ -2735,16 +2488,6 @@ static struct omap_hwmod_ocp_if *omap44xx_hwmod_ocp_ifs[] __initdata = {
 	&omap44xx_l4_cfg__smartreflex_mpu,
 	&omap44xx_l4_cfg__spinlock,
 	&omap44xx_l4_wkup__timer1,
-	&omap44xx_l4_per__timer2,
-	&omap44xx_l4_per__timer3,
-	&omap44xx_l4_per__timer4,
-	&omap44xx_l4_abe__timer5,
-	&omap44xx_l4_abe__timer6,
-	&omap44xx_l4_abe__timer7,
-	&omap44xx_l4_abe__timer8,
-	&omap44xx_l4_per__timer9,
-	&omap44xx_l4_per__timer10,
-	&omap44xx_l4_per__timer11,
 	/* &omap44xx_l4_cfg__usb_host_fs, */
 	&omap44xx_l4_cfg__usb_host_hs,
 	&omap44xx_l4_cfg__usb_tll_hs,
-- 
2.24.0

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

* [PATCH 7/9] ARM: OMAP2+: Drop legacy platform data for omap5 timers except timer1
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (5 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 6/9] ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1 Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 8/9] ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except timer1 and 2 Tony Lindgren
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Tero Kristo, Peter Ujfalusi

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: Keerthy <j-keerthy@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/omap5-l4-abe.dtsi        |   4 -
 arch/arm/boot/dts/omap5-l4.dtsi            |   6 -
 arch/arm/mach-omap2/omap_hwmod_54xx_data.c | 257 ---------------------
 3 files changed, 267 deletions(-)

diff --git a/arch/arm/boot/dts/omap5-l4-abe.dtsi b/arch/arm/boot/dts/omap5-l4-abe.dtsi
--- a/arch/arm/boot/dts/omap5-l4-abe.dtsi
+++ b/arch/arm/boot/dts/omap5-l4-abe.dtsi
@@ -277,7 +277,6 @@ mcpdm: mcpdm@0 {
 
 		target-module@38000 {			/* 0x40138000, ap 18 12.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer5";
 			reg = <0x38000 0x4>,
 			      <0x38010 0x4>;
 			reg-names = "rev", "sysc";
@@ -309,7 +308,6 @@ timer5: timer@0 {
 
 		target-module@3a000 {			/* 0x4013a000, ap 20 14.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer6";
 			reg = <0x3a000 0x4>,
 			      <0x3a010 0x4>;
 			reg-names = "rev", "sysc";
@@ -341,7 +339,6 @@ timer6: timer@0 {
 
 		target-module@3c000 {			/* 0x4013c000, ap 22 16.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer7";
 			reg = <0x3c000 0x4>,
 			      <0x3c010 0x4>;
 			reg-names = "rev", "sysc";
@@ -372,7 +369,6 @@ timer7: timer@0 {
 
 		target-module@3e000 {			/* 0x4013e000, ap 24 18.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer8";
 			reg = <0x3e000 0x4>,
 			      <0x3e010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/boot/dts/omap5-l4.dtsi b/arch/arm/boot/dts/omap5-l4.dtsi
--- a/arch/arm/boot/dts/omap5-l4.dtsi
+++ b/arch/arm/boot/dts/omap5-l4.dtsi
@@ -1061,7 +1061,6 @@ uart3: serial@0 {
 
 		target-module@32000 {			/* 0x48032000, ap 5 3e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer2";
 			reg = <0x32000 0x4>,
 			      <0x32010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1089,7 +1088,6 @@ timer2: timer@0 {
 
 		target-module@34000 {			/* 0x48034000, ap 7 46.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer3";
 			reg = <0x34000 0x4>,
 			      <0x34010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1117,7 +1115,6 @@ timer3: timer@0 {
 
 		target-module@36000 {			/* 0x48036000, ap 9 4e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer4";
 			reg = <0x36000 0x4>,
 			      <0x36010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1145,7 +1142,6 @@ timer4: timer@0 {
 
 		target-module@3e000 {			/* 0x4803e000, ap 11 56.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer9";
 			reg = <0x3e000 0x4>,
 			      <0x3e010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1713,7 +1709,6 @@ i2c5: i2c@0 {
 
 		target-module@86000 {			/* 0x48086000, ap 41 5e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer10";
 			reg = <0x86000 0x4>,
 			      <0x86010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1742,7 +1737,6 @@ timer10: timer@0 {
 
 		target-module@88000 {			/* 0x48088000, ap 43 66.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer11";
 			reg = <0x88000 0x4>,
 			      <0x88010 0x4>;
 			reg-names = "rev", "sysc";
diff --git a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
@@ -776,21 +776,6 @@ static struct omap_hwmod_class omap54xx_timer_1ms_hwmod_class = {
 	.sysc	= &omap54xx_timer_1ms_sysc,
 };
 
-static struct omap_hwmod_class_sysconfig omap54xx_timer_sysc = {
-	.rev_offs	= 0x0000,
-	.sysc_offs	= 0x0010,
-	.sysc_flags	= (SYSC_HAS_EMUFREE | SYSC_HAS_RESET_STATUS |
-			   SYSC_HAS_SIDLEMODE | SYSC_HAS_SOFTRESET),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
-	.sysc_fields	= &omap_hwmod_sysc_type2,
-};
-
-static struct omap_hwmod_class omap54xx_timer_hwmod_class = {
-	.name	= "timer",
-	.sysc	= &omap54xx_timer_sysc,
-};
-
 /* timer1 */
 static struct omap_hwmod omap54xx_timer1_hwmod = {
 	.name		= "timer1",
@@ -807,158 +792,6 @@ static struct omap_hwmod omap54xx_timer1_hwmod = {
 	},
 };
 
-/* timer2 */
-static struct omap_hwmod omap54xx_timer2_hwmod = {
-	.name		= "timer2",
-	.class		= &omap54xx_timer_1ms_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer2_gfclk_mux",
-	.flags		= HWMOD_SET_DEFAULT_CLOCKACT,
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER2_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER2_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer3 */
-static struct omap_hwmod omap54xx_timer3_hwmod = {
-	.name		= "timer3",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer3_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER3_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER3_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer4 */
-static struct omap_hwmod omap54xx_timer4_hwmod = {
-	.name		= "timer4",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer4_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER4_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER4_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer5 */
-static struct omap_hwmod omap54xx_timer5_hwmod = {
-	.name		= "timer5",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer5_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_TIMER5_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_TIMER5_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer6 */
-static struct omap_hwmod omap54xx_timer6_hwmod = {
-	.name		= "timer6",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer6_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_TIMER6_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_TIMER6_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer7 */
-static struct omap_hwmod omap54xx_timer7_hwmod = {
-	.name		= "timer7",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer7_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_TIMER7_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_TIMER7_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer8 */
-static struct omap_hwmod omap54xx_timer8_hwmod = {
-	.name		= "timer8",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "abe_clkdm",
-	.main_clk	= "timer8_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_ABE_TIMER8_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_ABE_TIMER8_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer9 */
-static struct omap_hwmod omap54xx_timer9_hwmod = {
-	.name		= "timer9",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer9_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER9_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER9_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer10 */
-static struct omap_hwmod omap54xx_timer10_hwmod = {
-	.name		= "timer10",
-	.class		= &omap54xx_timer_1ms_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer10_gfclk_mux",
-	.flags		= HWMOD_SET_DEFAULT_CLOCKACT,
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER10_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER10_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer11 */
-static struct omap_hwmod omap54xx_timer11_hwmod = {
-	.name		= "timer11",
-	.class		= &omap54xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer11_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = OMAP54XX_CM_L4PER_TIMER11_CLKCTRL_OFFSET,
-			.context_offs = OMAP54XX_RM_L4PER_TIMER11_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'usb_host_hs' class
  * high-speed multi-port usb host controller
@@ -1453,86 +1286,6 @@ static struct omap_hwmod_ocp_if omap54xx_l4_wkup__timer1 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per -> timer2 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer2 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer2_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer3 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer3 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer3_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer4 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer4 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer4_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_abe -> timer5 */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__timer5 = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_timer5_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4_abe -> timer6 */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__timer6 = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_timer6_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4_abe -> timer7 */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__timer7 = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_timer7_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4_abe -> timer8 */
-static struct omap_hwmod_ocp_if omap54xx_l4_abe__timer8 = {
-	.master		= &omap54xx_l4_abe_hwmod,
-	.slave		= &omap54xx_timer8_hwmod,
-	.clk		= "abe_iclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4_per -> timer9 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer9 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer9_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer10 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer10 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer10_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per -> timer11 */
-static struct omap_hwmod_ocp_if omap54xx_l4_per__timer11 = {
-	.master		= &omap54xx_l4_per_hwmod,
-	.slave		= &omap54xx_timer11_hwmod,
-	.clk		= "l4_root_clk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l4_cfg -> usb_host_hs */
 static struct omap_hwmod_ocp_if omap54xx_l4_cfg__usb_host_hs = {
 	.master		= &omap54xx_l4_cfg_hwmod,
@@ -1591,16 +1344,6 @@ static struct omap_hwmod_ocp_if *omap54xx_hwmod_ocp_ifs[] __initdata = {
 	&omap54xx_l4_cfg__spinlock,
 	&omap54xx_l4_cfg__ocp2scp1,
 	&omap54xx_l4_wkup__timer1,
-	&omap54xx_l4_per__timer2,
-	&omap54xx_l4_per__timer3,
-	&omap54xx_l4_per__timer4,
-	&omap54xx_l4_abe__timer5,
-	&omap54xx_l4_abe__timer6,
-	&omap54xx_l4_abe__timer7,
-	&omap54xx_l4_abe__timer8,
-	&omap54xx_l4_per__timer9,
-	&omap54xx_l4_per__timer10,
-	&omap54xx_l4_per__timer11,
 	&omap54xx_l4_cfg__usb_host_hs,
 	&omap54xx_l4_cfg__usb_tll_hs,
 	&omap54xx_l4_cfg__usb_otg_ss,
-- 
2.24.0

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

* [PATCH 8/9] ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except timer1 and 2
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (6 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 7/9] ARM: OMAP2+: Drop legacy platform data for omap5 " Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-10 23:35 ` [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4 Tony Lindgren
  2019-12-13  6:14 ` [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Keerthy
  9 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Tero Kristo, Peter Ujfalusi

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: Keerthy <j-keerthy@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/am33xx-l4.dtsi              |  5 --
 arch/arm/boot/dts/am437x-l4.dtsi              |  9 --
 .../omap_hwmod_33xx_43xx_common_data.h        | 10 ---
 .../omap_hwmod_33xx_43xx_interconnect_data.c  | 40 ---------
 .../omap_hwmod_33xx_43xx_ipblock_data.c       | 70 ---------------
 arch/arm/mach-omap2/omap_hwmod_33xx_data.c    |  5 --
 arch/arm/mach-omap2/omap_hwmod_43xx_data.c    | 89 -------------------
 7 files changed, 228 deletions(-)

diff --git a/arch/arm/boot/dts/am33xx-l4.dtsi b/arch/arm/boot/dts/am33xx-l4.dtsi
--- a/arch/arm/boot/dts/am33xx-l4.dtsi
+++ b/arch/arm/boot/dts/am33xx-l4.dtsi
@@ -1134,7 +1134,6 @@ timer2: timer@0 {
 
 		target-module@42000 {			/* 0x48042000, ap 24 1c.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer3";
 			reg = <0x42000 0x4>,
 			      <0x42010 0x4>,
 			      <0x42014 0x4>;
@@ -1160,7 +1159,6 @@ timer3: timer@0 {
 
 		target-module@44000 {			/* 0x48044000, ap 26 26.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer4";
 			reg = <0x44000 0x4>,
 			      <0x44010 0x4>,
 			      <0x44014 0x4>;
@@ -1187,7 +1185,6 @@ timer4: timer@0 {
 
 		target-module@46000 {			/* 0x48046000, ap 28 28.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer5";
 			reg = <0x46000 0x4>,
 			      <0x46010 0x4>,
 			      <0x46014 0x4>;
@@ -1214,7 +1211,6 @@ timer5: timer@0 {
 
 		target-module@48000 {			/* 0x48048000, ap 30 22.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer6";
 			reg = <0x48000 0x4>,
 			      <0x48010 0x4>,
 			      <0x48014 0x4>;
@@ -1241,7 +1237,6 @@ timer6: timer@0 {
 
 		target-module@4a000 {			/* 0x4804a000, ap 85 60.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer7";
 			reg = <0x4a000 0x4>,
 			      <0x4a010 0x4>,
 			      <0x4a014 0x4>;
diff --git a/arch/arm/boot/dts/am437x-l4.dtsi b/arch/arm/boot/dts/am437x-l4.dtsi
--- a/arch/arm/boot/dts/am437x-l4.dtsi
+++ b/arch/arm/boot/dts/am437x-l4.dtsi
@@ -900,7 +900,6 @@ timer2: timer@0  {
 
 		target-module@42000 {			/* 0x48042000, ap 20 24.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer3";
 			reg = <0x42000 0x4>,
 			      <0x42010 0x4>,
 			      <0x42014 0x4>;
@@ -927,7 +926,6 @@ timer3: timer@0 {
 
 		target-module@44000 {			/* 0x48044000, ap 22 26.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer4";
 			reg = <0x44000 0x4>,
 			      <0x44010 0x4>,
 			      <0x44014 0x4>;
@@ -955,7 +953,6 @@ timer4: timer@0 {
 
 		target-module@46000 {			/* 0x48046000, ap 24 28.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer5";
 			reg = <0x46000 0x4>,
 			      <0x46010 0x4>,
 			      <0x46014 0x4>;
@@ -983,7 +980,6 @@ timer5: timer@0 {
 
 		target-module@48000 {			/* 0x48048000, ap 26 1a.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer6";
 			reg = <0x48000 0x4>,
 			      <0x48010 0x4>,
 			      <0x48014 0x4>;
@@ -1011,7 +1007,6 @@ timer6: timer@0 {
 
 		target-module@4a000 {			/* 0x4804a000, ap 71 48.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer7";
 			reg = <0x4a000 0x4>,
 			      <0x4a010 0x4>,
 			      <0x4a014 0x4>;
@@ -1527,7 +1522,6 @@ gpio3: gpio@0 {
 
 		target-module@c1000 {			/* 0x481c1000, ap 94 68.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer8";
 			reg = <0xc1000 0x4>,
 			      <0xc1010 0x4>,
 			      <0xc1014 0x4>;
@@ -2162,7 +2156,6 @@ target-module@2a000 {			/* 0x4832a000, ap 88 3c.0 */
 
 		target-module@3d000 {			/* 0x4833d000, ap 102 6e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer9";
 			reg = <0x3d000 0x4>,
 			      <0x3d010 0x4>,
 			      <0x3d014 0x4>;
@@ -2189,7 +2182,6 @@ timer9: timer@0 {
 
 		target-module@3f000 {			/* 0x4833f000, ap 104 5c.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer10";
 			reg = <0x3f000 0x4>,
 			      <0x3f010 0x4>,
 			      <0x3f014 0x4>;
@@ -2216,7 +2208,6 @@ timer10: timer@0 {
 
 		target-module@41000 {			/* 0x48341000, ap 106 76.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer11";
 			reg = <0x41000 0x4>,
 			      <0x41010 0x4>,
 			      <0x41014 0x4>;
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_common_data.h
@@ -39,11 +39,6 @@ extern struct omap_hwmod_ocp_if am33xx_l4_ls__spinlock;
 extern struct omap_hwmod_ocp_if am33xx_l4_ls__mcspi0;
 extern struct omap_hwmod_ocp_if am33xx_l4_ls__mcspi1;
 extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer2;
-extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer3;
-extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer4;
-extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer5;
-extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer6;
-extern struct omap_hwmod_ocp_if am33xx_l4_ls__timer7;
 extern struct omap_hwmod_ocp_if am33xx_l3_main__tpcc;
 extern struct omap_hwmod_ocp_if am33xx_l3_main__tptc0;
 extern struct omap_hwmod_ocp_if am33xx_l3_main__tptc1;
@@ -75,11 +70,6 @@ extern struct omap_hwmod am33xx_spi1_hwmod;
 extern struct omap_hwmod am33xx_spinlock_hwmod;
 extern struct omap_hwmod am33xx_timer1_hwmod;
 extern struct omap_hwmod am33xx_timer2_hwmod;
-extern struct omap_hwmod am33xx_timer3_hwmod;
-extern struct omap_hwmod am33xx_timer4_hwmod;
-extern struct omap_hwmod am33xx_timer5_hwmod;
-extern struct omap_hwmod am33xx_timer6_hwmod;
-extern struct omap_hwmod am33xx_timer7_hwmod;
 extern struct omap_hwmod am33xx_tpcc_hwmod;
 extern struct omap_hwmod am33xx_tptc0_hwmod;
 extern struct omap_hwmod am33xx_tptc1_hwmod;
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_interconnect_data.c
@@ -190,46 +190,6 @@ struct omap_hwmod_ocp_if am33xx_l4_ls__timer2 = {
 	.user		= OCP_USER_MPU,
 };
 
-/* l4 per -> timer3 */
-struct omap_hwmod_ocp_if am33xx_l4_ls__timer3 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am33xx_timer3_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4 per -> timer4 */
-struct omap_hwmod_ocp_if am33xx_l4_ls__timer4 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am33xx_timer4_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4 per -> timer5 */
-struct omap_hwmod_ocp_if am33xx_l4_ls__timer5 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am33xx_timer5_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4 per -> timer6 */
-struct omap_hwmod_ocp_if am33xx_l4_ls__timer6 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am33xx_timer6_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-/* l4 per -> timer7 */
-struct omap_hwmod_ocp_if am33xx_l4_ls__timer7 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am33xx_timer7_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
 /* l3 main -> tpcc */
 struct omap_hwmod_ocp_if am33xx_l3_main__tpcc = {
 	.master		= &am33xx_l3_main_hwmod,
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c
@@ -586,66 +586,6 @@ struct omap_hwmod am33xx_timer2_hwmod = {
 	},
 };
 
-struct omap_hwmod am33xx_timer3_hwmod = {
-	.name		= "timer3",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer3_fck",
-	.prcm		= {
-		.omap4	= {
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-struct omap_hwmod am33xx_timer4_hwmod = {
-	.name		= "timer4",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer4_fck",
-	.prcm		= {
-		.omap4	= {
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-struct omap_hwmod am33xx_timer5_hwmod = {
-	.name		= "timer5",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer5_fck",
-	.prcm		= {
-		.omap4	= {
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-struct omap_hwmod am33xx_timer6_hwmod = {
-	.name		= "timer6",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer6_fck",
-	.prcm		= {
-		.omap4	= {
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-struct omap_hwmod am33xx_timer7_hwmod = {
-	.name		= "timer7",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer7_fck",
-	.prcm		= {
-		.omap4	= {
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /* tpcc */
 static struct omap_hwmod_class am33xx_tpcc_hwmod_class = {
 	.name		= "tpcc",
@@ -732,11 +672,6 @@ static void omap_hwmod_am33xx_clkctrl(void)
 	CLKCTRL(am33xx_spi1_hwmod, AM33XX_CM_PER_SPI1_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_spinlock_hwmod, AM33XX_CM_PER_SPINLOCK_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_timer2_hwmod, AM33XX_CM_PER_TIMER2_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer3_hwmod, AM33XX_CM_PER_TIMER3_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer4_hwmod, AM33XX_CM_PER_TIMER4_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer5_hwmod, AM33XX_CM_PER_TIMER5_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer6_hwmod, AM33XX_CM_PER_TIMER6_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer7_hwmod, AM33XX_CM_PER_TIMER7_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_smartreflex0_hwmod,
 		AM33XX_CM_WKUP_SMARTREFLEX0_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_smartreflex1_hwmod,
@@ -784,11 +719,6 @@ static void omap_hwmod_am43xx_clkctrl(void)
 	CLKCTRL(am33xx_spi1_hwmod, AM43XX_CM_PER_SPI1_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_spinlock_hwmod, AM43XX_CM_PER_SPINLOCK_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_timer2_hwmod, AM43XX_CM_PER_TIMER2_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer3_hwmod, AM43XX_CM_PER_TIMER3_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer4_hwmod, AM43XX_CM_PER_TIMER4_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer5_hwmod, AM43XX_CM_PER_TIMER5_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer6_hwmod, AM43XX_CM_PER_TIMER6_CLKCTRL_OFFSET);
-	CLKCTRL(am33xx_timer7_hwmod, AM43XX_CM_PER_TIMER7_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_smartreflex0_hwmod,
 		AM43XX_CM_WKUP_SMARTREFLEX0_CLKCTRL_OFFSET);
 	CLKCTRL(am33xx_smartreflex1_hwmod,
diff --git a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_33xx_data.c
@@ -380,11 +380,6 @@ static struct omap_hwmod_ocp_if *am33xx_hwmod_ocp_ifs[] __initdata = {
 	&am33xx_l4_per__dcan0,
 	&am33xx_l4_per__dcan1,
 	&am33xx_l4_ls__timer2,
-	&am33xx_l4_ls__timer3,
-	&am33xx_l4_ls__timer4,
-	&am33xx_l4_ls__timer5,
-	&am33xx_l4_ls__timer6,
-	&am33xx_l4_ls__timer7,
 	&am33xx_l3_main__tpcc,
 	&am33xx_l4_ls__spinlock,
 	&am33xx_l4_ls__elm,
diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
--- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
@@ -112,58 +112,6 @@ static struct omap_hwmod am43xx_synctimer_hwmod = {
 	},
 };
 
-static struct omap_hwmod am43xx_timer8_hwmod = {
-	.name		= "timer8",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer8_fck",
-	.prcm		= {
-		.omap4	= {
-			.clkctrl_offs	= AM43XX_CM_PER_TIMER8_CLKCTRL_OFFSET,
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-static struct omap_hwmod am43xx_timer9_hwmod = {
-	.name		= "timer9",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer9_fck",
-	.prcm		= {
-		.omap4	= {
-			.clkctrl_offs	= AM43XX_CM_PER_TIMER9_CLKCTRL_OFFSET,
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-static struct omap_hwmod am43xx_timer10_hwmod = {
-	.name		= "timer10",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer10_fck",
-	.prcm		= {
-		.omap4	= {
-			.clkctrl_offs	= AM43XX_CM_PER_TIMER10_CLKCTRL_OFFSET,
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-static struct omap_hwmod am43xx_timer11_hwmod = {
-	.name		= "timer11",
-	.class		= &am33xx_timer_hwmod_class,
-	.clkdm_name	= "l4ls_clkdm",
-	.main_clk	= "timer11_fck",
-	.prcm		= {
-		.omap4	= {
-			.clkctrl_offs	= AM43XX_CM_PER_TIMER11_CLKCTRL_OFFSET,
-			.modulemode	= MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 static struct omap_hwmod am43xx_epwmss3_hwmod = {
 	.name		= "epwmss3",
 	.class		= &am33xx_epwmss_hwmod_class,
@@ -532,34 +480,6 @@ static struct omap_hwmod_ocp_if am33xx_l4_wkup__synctimer = {
 	.user		= OCP_USER_MPU,
 };
 
-static struct omap_hwmod_ocp_if am43xx_l4_ls__timer8 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am43xx_timer8_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-static struct omap_hwmod_ocp_if am43xx_l4_ls__timer9 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am43xx_timer9_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-static struct omap_hwmod_ocp_if am43xx_l4_ls__timer10 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am43xx_timer10_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
-static struct omap_hwmod_ocp_if am43xx_l4_ls__timer11 = {
-	.master		= &am33xx_l4_ls_hwmod,
-	.slave		= &am43xx_timer11_hwmod,
-	.clk		= "l4ls_gclk",
-	.user		= OCP_USER_MPU,
-};
-
 static struct omap_hwmod_ocp_if am43xx_l4_ls__epwmss3 = {
 	.master		= &am33xx_l4_ls_hwmod,
 	.slave		= &am43xx_epwmss3_hwmod,
@@ -688,10 +608,6 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__vpfe1 = {
 
 static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
 	&am33xx_l4_wkup__synctimer,
-	&am43xx_l4_ls__timer8,
-	&am43xx_l4_ls__timer9,
-	&am43xx_l4_ls__timer10,
-	&am43xx_l4_ls__timer11,
 	&am43xx_l4_ls__epwmss3,
 	&am43xx_l4_ls__epwmss4,
 	&am43xx_l4_ls__epwmss5,
@@ -721,11 +637,6 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
 	&am33xx_l4_per__dcan0,
 	&am33xx_l4_per__dcan1,
 	&am33xx_l4_ls__timer2,
-	&am33xx_l4_ls__timer3,
-	&am33xx_l4_ls__timer4,
-	&am33xx_l4_ls__timer5,
-	&am33xx_l4_ls__timer6,
-	&am33xx_l4_ls__timer7,
 	&am33xx_l3_main__tpcc,
 	&am33xx_l4_ls__spinlock,
 	&am33xx_l4_ls__elm,
-- 
2.24.0

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

* [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (7 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 8/9] ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except timer1 and 2 Tony Lindgren
@ 2019-12-10 23:35 ` Tony Lindgren
  2019-12-11  2:10   ` Andrew F. Davis
  2019-12-13  6:14 ` [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Keerthy
  9 siblings, 1 reply; 14+ messages in thread
From: Tony Lindgren @ 2019-12-10 23:35 UTC (permalink / raw)
  To: linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Tero Kristo, Peter Ujfalusi

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: Keerthy <j-keerthy@ti.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/boot/dts/dra7-l4.dtsi            |  12 -
 arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 295 ----------------------
 2 files changed, 307 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
@@ -1233,7 +1233,6 @@ timer4: timer@0 {
 
 		target-module@3e000 {			/* 0x4803e000, ap 11 56.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer9";
 			reg = <0x3e000 0x4>,
 			      <0x3e010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1842,7 +1841,6 @@ i2c5: i2c@0 {
 
 		target-module@86000 {			/* 0x48086000, ap 41 5e.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer10";
 			reg = <0x86000 0x4>,
 			      <0x86010 0x4>;
 			reg-names = "rev", "sysc";
@@ -1870,7 +1868,6 @@ timer10: timer@0 {
 
 		target-module@88000 {			/* 0x48088000, ap 43 66.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer11";
 			reg = <0x88000 0x4>,
 			      <0x88010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3357,7 +3354,6 @@ target-module@1e000 {			/* 0x4881e000, ap 93 2c.0 */
 
 		target-module@20000 {			/* 0x48820000, ap 5 08.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer5";
 			reg = <0x20000 0x4>,
 			      <0x20010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3385,7 +3381,6 @@ timer5: timer@0 {
 
 		target-module@22000 {			/* 0x48822000, ap 7 24.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer6";
 			reg = <0x22000 0x4>,
 			      <0x22010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3413,7 +3408,6 @@ timer6: timer@0 {
 
 		target-module@24000 {			/* 0x48824000, ap 9 26.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer7";
 			reg = <0x24000 0x4>,
 			      <0x24010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3441,7 +3435,6 @@ timer7: timer@0 {
 
 		target-module@26000 {			/* 0x48826000, ap 11 0c.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer8";
 			reg = <0x26000 0x4>,
 			      <0x26010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3469,7 +3462,6 @@ timer8: timer@0 {
 
 		target-module@28000 {			/* 0x48828000, ap 13 16.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer13";
 			reg = <0x28000 0x4>,
 			      <0x28010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3497,7 +3489,6 @@ timer13: timer@0 {
 
 		target-module@2a000 {			/* 0x4882a000, ap 15 10.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer14";
 			reg = <0x2a000 0x4>,
 			      <0x2a010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3525,7 +3516,6 @@ timer14: timer@0 {
 
 		target-module@2c000 {			/* 0x4882c000, ap 17 02.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer15";
 			reg = <0x2c000 0x4>,
 			      <0x2c010 0x4>;
 			reg-names = "rev", "sysc";
@@ -3553,7 +3543,6 @@ timer15: timer@0 {
 
 		target-module@2e000 {			/* 0x4882e000, ap 19 14.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer16";
 			reg = <0x2e000 0x4>,
 			      <0x2e010 0x4>;
 			reg-names = "rev", "sysc";
@@ -4453,7 +4442,6 @@ segment@20000 {					/* 0x4ae20000 */
 
 		target-module@0 {			/* 0x4ae20000, ap 19 08.0 */
 			compatible = "ti,sysc-omap4-timer", "ti,sysc";
-			ti,hwmods = "timer12";
 			reg = <0x0 0x4>,
 			      <0x10 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
@@ -1157,185 +1157,6 @@ static struct omap_hwmod dra7xx_timer4_hwmod = {
 	},
 };
 
-/* timer5 */
-static struct omap_hwmod dra7xx_timer5_hwmod = {
-	.name		= "timer5",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "ipu_clkdm",
-	.main_clk	= "timer5_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_IPU_TIMER5_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_IPU_TIMER5_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer6 */
-static struct omap_hwmod dra7xx_timer6_hwmod = {
-	.name		= "timer6",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "ipu_clkdm",
-	.main_clk	= "timer6_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_IPU_TIMER6_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_IPU_TIMER6_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer7 */
-static struct omap_hwmod dra7xx_timer7_hwmod = {
-	.name		= "timer7",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "ipu_clkdm",
-	.main_clk	= "timer7_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_IPU_TIMER7_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_IPU_TIMER7_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer8 */
-static struct omap_hwmod dra7xx_timer8_hwmod = {
-	.name		= "timer8",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "ipu_clkdm",
-	.main_clk	= "timer8_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_IPU_TIMER8_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_IPU_TIMER8_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer9 */
-static struct omap_hwmod dra7xx_timer9_hwmod = {
-	.name		= "timer9",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer9_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER9_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER_TIMER9_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer10 */
-static struct omap_hwmod dra7xx_timer10_hwmod = {
-	.name		= "timer10",
-	.class		= &dra7xx_timer_1ms_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer10_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER10_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER_TIMER10_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer11 */
-static struct omap_hwmod dra7xx_timer11_hwmod = {
-	.name		= "timer11",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per_clkdm",
-	.main_clk	= "timer11_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER11_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER_TIMER11_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer12 */
-static struct omap_hwmod dra7xx_timer12_hwmod = {
-	.name		= "timer12",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "wkupaon_clkdm",
-	.main_clk	= "secure_32k_clk_src_ck",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_WKUPAON_TIMER12_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_WKUPAON_TIMER12_CONTEXT_OFFSET,
-		},
-	},
-};
-
-/* timer13 */
-static struct omap_hwmod dra7xx_timer13_hwmod = {
-	.name		= "timer13",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per3_clkdm",
-	.main_clk	= "timer13_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER13_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER3_TIMER13_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer14 */
-static struct omap_hwmod dra7xx_timer14_hwmod = {
-	.name		= "timer14",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per3_clkdm",
-	.main_clk	= "timer14_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER14_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER3_TIMER14_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer15 */
-static struct omap_hwmod dra7xx_timer15_hwmod = {
-	.name		= "timer15",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per3_clkdm",
-	.main_clk	= "timer15_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER15_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER3_TIMER15_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
-/* timer16 */
-static struct omap_hwmod dra7xx_timer16_hwmod = {
-	.name		= "timer16",
-	.class		= &dra7xx_timer_hwmod_class,
-	.clkdm_name	= "l4per3_clkdm",
-	.main_clk	= "timer16_gfclk_mux",
-	.prcm = {
-		.omap4 = {
-			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER16_CLKCTRL_OFFSET,
-			.context_offs = DRA7XX_RM_L4PER3_TIMER16_CONTEXT_OFFSET,
-			.modulemode   = MODULEMODE_SWCTRL,
-		},
-	},
-};
-
 /*
  * 'usb_otg_ss' class
  *
@@ -1818,102 +1639,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer4 = {
 	.user		= OCP_USER_MPU | OCP_USER_SDMA,
 };
 
-/* l4_per3 -> timer5 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer5 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer5_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer6 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer6 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer6_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer7 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer7 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer7_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer8 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer8 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer8_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per1 -> timer9 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer9 = {
-	.master		= &dra7xx_l4_per1_hwmod,
-	.slave		= &dra7xx_timer9_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per1 -> timer10 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer10 = {
-	.master		= &dra7xx_l4_per1_hwmod,
-	.slave		= &dra7xx_timer10_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per1 -> timer11 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer11 = {
-	.master		= &dra7xx_l4_per1_hwmod,
-	.slave		= &dra7xx_timer11_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_wkup -> timer12 */
-static struct omap_hwmod_ocp_if dra7xx_l4_wkup__timer12 = {
-	.master		= &dra7xx_l4_wkup_hwmod,
-	.slave		= &dra7xx_timer12_hwmod,
-	.clk		= "wkupaon_iclk_mux",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer13 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer13 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer13_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer14 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer14 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer14_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer15 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer15 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer15_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
-/* l4_per3 -> timer16 */
-static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer16 = {
-	.master		= &dra7xx_l4_per3_hwmod,
-	.slave		= &dra7xx_timer16_hwmod,
-	.clk		= "l3_iclk_div",
-	.user		= OCP_USER_MPU | OCP_USER_SDMA,
-};
-
 /* l4_per3 -> usb_otg_ss1 */
 static struct omap_hwmod_ocp_if dra7xx_l4_per3__usb_otg_ss1 = {
 	.master		= &dra7xx_l4_per3_hwmod,
@@ -2045,17 +1770,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_per1__timer2,
 	&dra7xx_l4_per1__timer3,
 	&dra7xx_l4_per1__timer4,
-	&dra7xx_l4_per3__timer5,
-	&dra7xx_l4_per3__timer6,
-	&dra7xx_l4_per3__timer7,
-	&dra7xx_l4_per3__timer8,
-	&dra7xx_l4_per1__timer9,
-	&dra7xx_l4_per1__timer10,
-	&dra7xx_l4_per1__timer11,
-	&dra7xx_l4_per3__timer13,
-	&dra7xx_l4_per3__timer14,
-	&dra7xx_l4_per3__timer15,
-	&dra7xx_l4_per3__timer16,
 	&dra7xx_l4_per3__usb_otg_ss1,
 	&dra7xx_l4_per3__usb_otg_ss2,
 	&dra7xx_l4_per3__usb_otg_ss3,
@@ -2069,12 +1783,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
 	NULL,
 };
 
-/* GP-only hwmod links */
-static struct omap_hwmod_ocp_if *dra7xx_gp_hwmod_ocp_ifs[] __initdata = {
-	&dra7xx_l4_wkup__timer12,
-	NULL,
-};
-
 /* SoC variant specific hwmod links */
 static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
 	&dra7xx_l4_per3__usb_otg_ss4,
@@ -2124,8 +1832,5 @@ int __init dra7xx_hwmod_init(void)
 		}
 	}
 
-	if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
-		ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
-
 	return ret;
 }
-- 
2.24.0

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

* Re: [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4
  2019-12-10 23:35 ` [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4 Tony Lindgren
@ 2019-12-11  2:10   ` Andrew F. Davis
  2019-12-11 12:59     ` Tero Kristo
  0 siblings, 1 reply; 14+ messages in thread
From: Andrew F. Davis @ 2019-12-11  2:10 UTC (permalink / raw)
  To: Tony Lindgren, linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Tero Kristo, Peter Ujfalusi

On 12/10/19 6:35 PM, Tony Lindgren wrote:
> 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: Keerthy <j-keerthy@ti.com>
> Cc: Tero Kristo <t-kristo@ti.com>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> ---
>  arch/arm/boot/dts/dra7-l4.dtsi            |  12 -
>  arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 295 ----------------------
>  2 files changed, 307 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
> @@ -1233,7 +1233,6 @@ timer4: timer@0 {
>  
>  		target-module@3e000 {			/* 0x4803e000, ap 11 56.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer9";
>  			reg = <0x3e000 0x4>,
>  			      <0x3e010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -1842,7 +1841,6 @@ i2c5: i2c@0 {
>  
>  		target-module@86000 {			/* 0x48086000, ap 41 5e.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer10";
>  			reg = <0x86000 0x4>,
>  			      <0x86010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -1870,7 +1868,6 @@ timer10: timer@0 {
>  
>  		target-module@88000 {			/* 0x48088000, ap 43 66.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer11";
>  			reg = <0x88000 0x4>,
>  			      <0x88010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3357,7 +3354,6 @@ target-module@1e000 {			/* 0x4881e000, ap 93 2c.0 */
>  
>  		target-module@20000 {			/* 0x48820000, ap 5 08.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer5";
>  			reg = <0x20000 0x4>,
>  			      <0x20010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3385,7 +3381,6 @@ timer5: timer@0 {
>  
>  		target-module@22000 {			/* 0x48822000, ap 7 24.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer6";
>  			reg = <0x22000 0x4>,
>  			      <0x22010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3413,7 +3408,6 @@ timer6: timer@0 {
>  
>  		target-module@24000 {			/* 0x48824000, ap 9 26.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer7";
>  			reg = <0x24000 0x4>,
>  			      <0x24010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3441,7 +3435,6 @@ timer7: timer@0 {
>  
>  		target-module@26000 {			/* 0x48826000, ap 11 0c.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer8";
>  			reg = <0x26000 0x4>,
>  			      <0x26010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3469,7 +3462,6 @@ timer8: timer@0 {
>  
>  		target-module@28000 {			/* 0x48828000, ap 13 16.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer13";
>  			reg = <0x28000 0x4>,
>  			      <0x28010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3497,7 +3489,6 @@ timer13: timer@0 {
>  
>  		target-module@2a000 {			/* 0x4882a000, ap 15 10.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer14";
>  			reg = <0x2a000 0x4>,
>  			      <0x2a010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3525,7 +3516,6 @@ timer14: timer@0 {
>  
>  		target-module@2c000 {			/* 0x4882c000, ap 17 02.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer15";
>  			reg = <0x2c000 0x4>,
>  			      <0x2c010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -3553,7 +3543,6 @@ timer15: timer@0 {
>  
>  		target-module@2e000 {			/* 0x4882e000, ap 19 14.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer16";
>  			reg = <0x2e000 0x4>,
>  			      <0x2e010 0x4>;
>  			reg-names = "rev", "sysc";
> @@ -4453,7 +4442,6 @@ segment@20000 {					/* 0x4ae20000 */
>  
>  		target-module@0 {			/* 0x4ae20000, ap 19 08.0 */
>  			compatible = "ti,sysc-omap4-timer", "ti,sysc";
> -			ti,hwmods = "timer12";
>  			reg = <0x0 0x4>,
>  			      <0x10 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
> @@ -1157,185 +1157,6 @@ static struct omap_hwmod dra7xx_timer4_hwmod = {
>  	},
>  };
>  
> -/* timer5 */
> -static struct omap_hwmod dra7xx_timer5_hwmod = {
> -	.name		= "timer5",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "ipu_clkdm",
> -	.main_clk	= "timer5_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER5_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_IPU_TIMER5_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer6 */
> -static struct omap_hwmod dra7xx_timer6_hwmod = {
> -	.name		= "timer6",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "ipu_clkdm",
> -	.main_clk	= "timer6_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER6_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_IPU_TIMER6_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer7 */
> -static struct omap_hwmod dra7xx_timer7_hwmod = {
> -	.name		= "timer7",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "ipu_clkdm",
> -	.main_clk	= "timer7_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER7_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_IPU_TIMER7_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer8 */
> -static struct omap_hwmod dra7xx_timer8_hwmod = {
> -	.name		= "timer8",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "ipu_clkdm",
> -	.main_clk	= "timer8_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER8_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_IPU_TIMER8_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer9 */
> -static struct omap_hwmod dra7xx_timer9_hwmod = {
> -	.name		= "timer9",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per_clkdm",
> -	.main_clk	= "timer9_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER9_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER_TIMER9_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer10 */
> -static struct omap_hwmod dra7xx_timer10_hwmod = {
> -	.name		= "timer10",
> -	.class		= &dra7xx_timer_1ms_hwmod_class,
> -	.clkdm_name	= "l4per_clkdm",
> -	.main_clk	= "timer10_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER10_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER_TIMER10_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer11 */
> -static struct omap_hwmod dra7xx_timer11_hwmod = {
> -	.name		= "timer11",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per_clkdm",
> -	.main_clk	= "timer11_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER11_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER_TIMER11_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer12 */
> -static struct omap_hwmod dra7xx_timer12_hwmod = {
> -	.name		= "timer12",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "wkupaon_clkdm",
> -	.main_clk	= "secure_32k_clk_src_ck",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_WKUPAON_TIMER12_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_WKUPAON_TIMER12_CONTEXT_OFFSET,
> -		},
> -	},
> -};
> -
> -/* timer13 */
> -static struct omap_hwmod dra7xx_timer13_hwmod = {
> -	.name		= "timer13",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per3_clkdm",
> -	.main_clk	= "timer13_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER13_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER3_TIMER13_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer14 */
> -static struct omap_hwmod dra7xx_timer14_hwmod = {
> -	.name		= "timer14",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per3_clkdm",
> -	.main_clk	= "timer14_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER14_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER3_TIMER14_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer15 */
> -static struct omap_hwmod dra7xx_timer15_hwmod = {
> -	.name		= "timer15",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per3_clkdm",
> -	.main_clk	= "timer15_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER15_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER3_TIMER15_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
> -/* timer16 */
> -static struct omap_hwmod dra7xx_timer16_hwmod = {
> -	.name		= "timer16",
> -	.class		= &dra7xx_timer_hwmod_class,
> -	.clkdm_name	= "l4per3_clkdm",
> -	.main_clk	= "timer16_gfclk_mux",
> -	.prcm = {
> -		.omap4 = {
> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER16_CLKCTRL_OFFSET,
> -			.context_offs = DRA7XX_RM_L4PER3_TIMER16_CONTEXT_OFFSET,
> -			.modulemode   = MODULEMODE_SWCTRL,
> -		},
> -	},
> -};
> -
>  /*
>   * 'usb_otg_ss' class
>   *
> @@ -1818,102 +1639,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer4 = {
>  	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>  };
>  
> -/* l4_per3 -> timer5 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer5 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer5_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer6 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer6 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer6_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer7 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer7 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer7_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer8 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer8 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer8_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per1 -> timer9 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer9 = {
> -	.master		= &dra7xx_l4_per1_hwmod,
> -	.slave		= &dra7xx_timer9_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per1 -> timer10 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer10 = {
> -	.master		= &dra7xx_l4_per1_hwmod,
> -	.slave		= &dra7xx_timer10_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per1 -> timer11 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer11 = {
> -	.master		= &dra7xx_l4_per1_hwmod,
> -	.slave		= &dra7xx_timer11_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_wkup -> timer12 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_wkup__timer12 = {
> -	.master		= &dra7xx_l4_wkup_hwmod,
> -	.slave		= &dra7xx_timer12_hwmod,
> -	.clk		= "wkupaon_iclk_mux",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer13 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer13 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer13_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer14 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer14 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer14_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer15 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer15 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer15_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
> -/* l4_per3 -> timer16 */
> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer16 = {
> -	.master		= &dra7xx_l4_per3_hwmod,
> -	.slave		= &dra7xx_timer16_hwmod,
> -	.clk		= "l3_iclk_div",
> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
> -};
> -
>  /* l4_per3 -> usb_otg_ss1 */
>  static struct omap_hwmod_ocp_if dra7xx_l4_per3__usb_otg_ss1 = {
>  	.master		= &dra7xx_l4_per3_hwmod,
> @@ -2045,17 +1770,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>  	&dra7xx_l4_per1__timer2,
>  	&dra7xx_l4_per1__timer3,
>  	&dra7xx_l4_per1__timer4,
> -	&dra7xx_l4_per3__timer5,
> -	&dra7xx_l4_per3__timer6,
> -	&dra7xx_l4_per3__timer7,
> -	&dra7xx_l4_per3__timer8,
> -	&dra7xx_l4_per1__timer9,
> -	&dra7xx_l4_per1__timer10,
> -	&dra7xx_l4_per1__timer11,
> -	&dra7xx_l4_per3__timer13,
> -	&dra7xx_l4_per3__timer14,
> -	&dra7xx_l4_per3__timer15,
> -	&dra7xx_l4_per3__timer16,
>  	&dra7xx_l4_per3__usb_otg_ss1,
>  	&dra7xx_l4_per3__usb_otg_ss2,
>  	&dra7xx_l4_per3__usb_otg_ss3,
> @@ -2069,12 +1783,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>  	NULL,
>  };
>  
> -/* GP-only hwmod links */
> -static struct omap_hwmod_ocp_if *dra7xx_gp_hwmod_ocp_ifs[] __initdata = {
> -	&dra7xx_l4_wkup__timer12,
> -	NULL,
> -};
> -
>  /* SoC variant specific hwmod links */
>  static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
>  	&dra7xx_l4_per3__usb_otg_ss4,
> @@ -2124,8 +1832,5 @@ int __init dra7xx_hwmod_init(void)
>  		}
>  	}
>  
> -	if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
> -		ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
> -


Maybe I'm missing it but how is this logic getting replicated when using
ti,sync? We runtime detect here if we are on an HS device and if so let
the secure world manage these device's pm/clocks, without this the
non-secure side managment will be unconditional.

Andrew


>  	return ret;
>  }
> 

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

* Re: [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4
  2019-12-11  2:10   ` Andrew F. Davis
@ 2019-12-11 12:59     ` Tero Kristo
  2019-12-11 14:55       ` Tony Lindgren
  0 siblings, 1 reply; 14+ messages in thread
From: Tero Kristo @ 2019-12-11 12:59 UTC (permalink / raw)
  To: Andrew F. Davis, Tony Lindgren, linux-omap
  Cc: Benoît Cousson, devicetree, Keerthy, Peter Ujfalusi

On 11/12/2019 04:10, Andrew F. Davis wrote:
> On 12/10/19 6:35 PM, Tony Lindgren wrote:
>> 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: Keerthy <j-keerthy@ti.com>
>> Cc: Tero Kristo <t-kristo@ti.com>
>> Signed-off-by: Tony Lindgren <tony@atomide.com>
>> ---
>>   arch/arm/boot/dts/dra7-l4.dtsi            |  12 -
>>   arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 295 ----------------------
>>   2 files changed, 307 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
>> @@ -1233,7 +1233,6 @@ timer4: timer@0 {
>>   
>>   		target-module@3e000 {			/* 0x4803e000, ap 11 56.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer9";
>>   			reg = <0x3e000 0x4>,
>>   			      <0x3e010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -1842,7 +1841,6 @@ i2c5: i2c@0 {
>>   
>>   		target-module@86000 {			/* 0x48086000, ap 41 5e.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer10";
>>   			reg = <0x86000 0x4>,
>>   			      <0x86010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -1870,7 +1868,6 @@ timer10: timer@0 {
>>   
>>   		target-module@88000 {			/* 0x48088000, ap 43 66.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer11";
>>   			reg = <0x88000 0x4>,
>>   			      <0x88010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3357,7 +3354,6 @@ target-module@1e000 {			/* 0x4881e000, ap 93 2c.0 */
>>   
>>   		target-module@20000 {			/* 0x48820000, ap 5 08.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer5";
>>   			reg = <0x20000 0x4>,
>>   			      <0x20010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3385,7 +3381,6 @@ timer5: timer@0 {
>>   
>>   		target-module@22000 {			/* 0x48822000, ap 7 24.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer6";
>>   			reg = <0x22000 0x4>,
>>   			      <0x22010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3413,7 +3408,6 @@ timer6: timer@0 {
>>   
>>   		target-module@24000 {			/* 0x48824000, ap 9 26.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer7";
>>   			reg = <0x24000 0x4>,
>>   			      <0x24010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3441,7 +3435,6 @@ timer7: timer@0 {
>>   
>>   		target-module@26000 {			/* 0x48826000, ap 11 0c.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer8";
>>   			reg = <0x26000 0x4>,
>>   			      <0x26010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3469,7 +3462,6 @@ timer8: timer@0 {
>>   
>>   		target-module@28000 {			/* 0x48828000, ap 13 16.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer13";
>>   			reg = <0x28000 0x4>,
>>   			      <0x28010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3497,7 +3489,6 @@ timer13: timer@0 {
>>   
>>   		target-module@2a000 {			/* 0x4882a000, ap 15 10.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer14";
>>   			reg = <0x2a000 0x4>,
>>   			      <0x2a010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3525,7 +3516,6 @@ timer14: timer@0 {
>>   
>>   		target-module@2c000 {			/* 0x4882c000, ap 17 02.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer15";
>>   			reg = <0x2c000 0x4>,
>>   			      <0x2c010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -3553,7 +3543,6 @@ timer15: timer@0 {
>>   
>>   		target-module@2e000 {			/* 0x4882e000, ap 19 14.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer16";
>>   			reg = <0x2e000 0x4>,
>>   			      <0x2e010 0x4>;
>>   			reg-names = "rev", "sysc";
>> @@ -4453,7 +4442,6 @@ segment@20000 {					/* 0x4ae20000 */
>>   
>>   		target-module@0 {			/* 0x4ae20000, ap 19 08.0 */
>>   			compatible = "ti,sysc-omap4-timer", "ti,sysc";
>> -			ti,hwmods = "timer12";
>>   			reg = <0x0 0x4>,
>>   			      <0x10 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
>> @@ -1157,185 +1157,6 @@ static struct omap_hwmod dra7xx_timer4_hwmod = {
>>   	},
>>   };
>>   
>> -/* timer5 */
>> -static struct omap_hwmod dra7xx_timer5_hwmod = {
>> -	.name		= "timer5",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "ipu_clkdm",
>> -	.main_clk	= "timer5_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER5_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_IPU_TIMER5_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer6 */
>> -static struct omap_hwmod dra7xx_timer6_hwmod = {
>> -	.name		= "timer6",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "ipu_clkdm",
>> -	.main_clk	= "timer6_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER6_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_IPU_TIMER6_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer7 */
>> -static struct omap_hwmod dra7xx_timer7_hwmod = {
>> -	.name		= "timer7",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "ipu_clkdm",
>> -	.main_clk	= "timer7_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER7_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_IPU_TIMER7_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer8 */
>> -static struct omap_hwmod dra7xx_timer8_hwmod = {
>> -	.name		= "timer8",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "ipu_clkdm",
>> -	.main_clk	= "timer8_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_IPU_TIMER8_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_IPU_TIMER8_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer9 */
>> -static struct omap_hwmod dra7xx_timer9_hwmod = {
>> -	.name		= "timer9",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per_clkdm",
>> -	.main_clk	= "timer9_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER9_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER_TIMER9_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer10 */
>> -static struct omap_hwmod dra7xx_timer10_hwmod = {
>> -	.name		= "timer10",
>> -	.class		= &dra7xx_timer_1ms_hwmod_class,
>> -	.clkdm_name	= "l4per_clkdm",
>> -	.main_clk	= "timer10_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER10_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER_TIMER10_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer11 */
>> -static struct omap_hwmod dra7xx_timer11_hwmod = {
>> -	.name		= "timer11",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per_clkdm",
>> -	.main_clk	= "timer11_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER_TIMER11_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER_TIMER11_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer12 */
>> -static struct omap_hwmod dra7xx_timer12_hwmod = {
>> -	.name		= "timer12",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "wkupaon_clkdm",
>> -	.main_clk	= "secure_32k_clk_src_ck",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_WKUPAON_TIMER12_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_WKUPAON_TIMER12_CONTEXT_OFFSET,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer13 */
>> -static struct omap_hwmod dra7xx_timer13_hwmod = {
>> -	.name		= "timer13",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per3_clkdm",
>> -	.main_clk	= "timer13_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER13_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER3_TIMER13_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer14 */
>> -static struct omap_hwmod dra7xx_timer14_hwmod = {
>> -	.name		= "timer14",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per3_clkdm",
>> -	.main_clk	= "timer14_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER14_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER3_TIMER14_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer15 */
>> -static struct omap_hwmod dra7xx_timer15_hwmod = {
>> -	.name		= "timer15",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per3_clkdm",
>> -	.main_clk	= "timer15_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER15_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER3_TIMER15_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>> -/* timer16 */
>> -static struct omap_hwmod dra7xx_timer16_hwmod = {
>> -	.name		= "timer16",
>> -	.class		= &dra7xx_timer_hwmod_class,
>> -	.clkdm_name	= "l4per3_clkdm",
>> -	.main_clk	= "timer16_gfclk_mux",
>> -	.prcm = {
>> -		.omap4 = {
>> -			.clkctrl_offs = DRA7XX_CM_L4PER3_TIMER16_CLKCTRL_OFFSET,
>> -			.context_offs = DRA7XX_RM_L4PER3_TIMER16_CONTEXT_OFFSET,
>> -			.modulemode   = MODULEMODE_SWCTRL,
>> -		},
>> -	},
>> -};
>> -
>>   /*
>>    * 'usb_otg_ss' class
>>    *
>> @@ -1818,102 +1639,6 @@ static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer4 = {
>>   	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>>   };
>>   
>> -/* l4_per3 -> timer5 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer5 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer5_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer6 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer6 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer6_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer7 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer7 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer7_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer8 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer8 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer8_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per1 -> timer9 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer9 = {
>> -	.master		= &dra7xx_l4_per1_hwmod,
>> -	.slave		= &dra7xx_timer9_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per1 -> timer10 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer10 = {
>> -	.master		= &dra7xx_l4_per1_hwmod,
>> -	.slave		= &dra7xx_timer10_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per1 -> timer11 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per1__timer11 = {
>> -	.master		= &dra7xx_l4_per1_hwmod,
>> -	.slave		= &dra7xx_timer11_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_wkup -> timer12 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_wkup__timer12 = {
>> -	.master		= &dra7xx_l4_wkup_hwmod,
>> -	.slave		= &dra7xx_timer12_hwmod,
>> -	.clk		= "wkupaon_iclk_mux",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer13 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer13 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer13_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer14 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer14 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer14_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer15 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer15 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer15_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>> -/* l4_per3 -> timer16 */
>> -static struct omap_hwmod_ocp_if dra7xx_l4_per3__timer16 = {
>> -	.master		= &dra7xx_l4_per3_hwmod,
>> -	.slave		= &dra7xx_timer16_hwmod,
>> -	.clk		= "l3_iclk_div",
>> -	.user		= OCP_USER_MPU | OCP_USER_SDMA,
>> -};
>> -
>>   /* l4_per3 -> usb_otg_ss1 */
>>   static struct omap_hwmod_ocp_if dra7xx_l4_per3__usb_otg_ss1 = {
>>   	.master		= &dra7xx_l4_per3_hwmod,
>> @@ -2045,17 +1770,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>>   	&dra7xx_l4_per1__timer2,
>>   	&dra7xx_l4_per1__timer3,
>>   	&dra7xx_l4_per1__timer4,
>> -	&dra7xx_l4_per3__timer5,
>> -	&dra7xx_l4_per3__timer6,
>> -	&dra7xx_l4_per3__timer7,
>> -	&dra7xx_l4_per3__timer8,
>> -	&dra7xx_l4_per1__timer9,
>> -	&dra7xx_l4_per1__timer10,
>> -	&dra7xx_l4_per1__timer11,
>> -	&dra7xx_l4_per3__timer13,
>> -	&dra7xx_l4_per3__timer14,
>> -	&dra7xx_l4_per3__timer15,
>> -	&dra7xx_l4_per3__timer16,
>>   	&dra7xx_l4_per3__usb_otg_ss1,
>>   	&dra7xx_l4_per3__usb_otg_ss2,
>>   	&dra7xx_l4_per3__usb_otg_ss3,
>> @@ -2069,12 +1783,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
>>   	NULL,
>>   };
>>   
>> -/* GP-only hwmod links */
>> -static struct omap_hwmod_ocp_if *dra7xx_gp_hwmod_ocp_ifs[] __initdata = {
>> -	&dra7xx_l4_wkup__timer12,
>> -	NULL,
>> -};
>> -
>>   /* SoC variant specific hwmod links */
>>   static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
>>   	&dra7xx_l4_per3__usb_otg_ss4,
>> @@ -2124,8 +1832,5 @@ int __init dra7xx_hwmod_init(void)
>>   		}
>>   	}
>>   
>> -	if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
>> -		ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
>> -
> 
> 
> Maybe I'm missing it but how is this logic getting replicated when using
> ti,sync? We runtime detect here if we are on an HS device and if so let
> the secure world manage these device's pm/clocks, without this the
> non-secure side managment will be unconditional.

This is handled by the clkctrl driver itself. timer12 is marked as 
NON-SEC device supported only, so it doesn't get registered on HS chips.

I guess the lack of the clock fails the ti-sysc part of the registration 
logic also. Tony?

-Tero
--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

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

* Re: [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4
  2019-12-11 12:59     ` Tero Kristo
@ 2019-12-11 14:55       ` Tony Lindgren
  0 siblings, 0 replies; 14+ messages in thread
From: Tony Lindgren @ 2019-12-11 14:55 UTC (permalink / raw)
  To: Tero Kristo
  Cc: Andrew F. Davis, linux-omap, Benoît Cousson, devicetree,
	Keerthy, Peter Ujfalusi

* Tero Kristo <t-kristo@ti.com> [191211 13:00]:
> On 11/12/2019 04:10, Andrew F. Davis wrote:
> > On 12/10/19 6:35 PM, Tony Lindgren wrote:
> > > 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.
...

> > > @@ -2069,12 +1783,6 @@ static struct omap_hwmod_ocp_if *dra7xx_hwmod_ocp_ifs[] __initdata = {
> > >   	NULL,
> > >   };
> > > -/* GP-only hwmod links */
> > > -static struct omap_hwmod_ocp_if *dra7xx_gp_hwmod_ocp_ifs[] __initdata = {
> > > -	&dra7xx_l4_wkup__timer12,
> > > -	NULL,
> > > -};
> > > -
> > >   /* SoC variant specific hwmod links */
> > >   static struct omap_hwmod_ocp_if *dra76x_hwmod_ocp_ifs[] __initdata = {
> > >   	&dra7xx_l4_per3__usb_otg_ss4,
> > > @@ -2124,8 +1832,5 @@ int __init dra7xx_hwmod_init(void)
> > >   		}
> > >   	}
> > > -	if (!ret && omap_type() == OMAP2_DEVICE_TYPE_GP)
> > > -		ret = omap_hwmod_register_links(dra7xx_gp_hwmod_ocp_ifs);
> > > -
> > 
> > 
> > Maybe I'm missing it but how is this logic getting replicated when using
> > ti,sync? We runtime detect here if we are on an HS device and if so let
> > the secure world manage these device's pm/clocks, without this the
> > non-secure side managment will be unconditional.
> 
> This is handled by the clkctrl driver itself. timer12 is marked as NON-SEC
> device supported only, so it doesn't get registered on HS chips.
> 
> I guess the lack of the clock fails the ti-sysc part of the registration
> logic also. Tony?

Yes it should bail out with a clock error. To avoid an error for that
in dmesg the timer needs to be tagged with status = "disabled" though.

For drivers, we have soc_device_match() to use that should work for
detecting SoCs type on boot. Maybe cat /sys/bus/soc/devices/soc0/type
to confirm this as I don't think we're currently using it for
detecting HS SoCs anywhere.

Regards,

Tony



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

* Re: [PATCH 0/9] Probe l4 abe and most timers with ti-sysc
  2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
                   ` (8 preceding siblings ...)
  2019-12-10 23:35 ` [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4 Tony Lindgren
@ 2019-12-13  6:14 ` Keerthy
  9 siblings, 0 replies; 14+ messages in thread
From: Keerthy @ 2019-12-13  6:14 UTC (permalink / raw)
  To: Tony Lindgren, linux-omap
  Cc: Benoît Cousson, devicetree, Peter Ujfalusi, Tero Kristo

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



On 11/12/19 5:05 am, Tony Lindgren wrote:
> Hi all,
> 
> This series updates l4-abe devices and non-system timers to probe with
> ti-sysc.
> 
> After this series we now have l4-abe instances with all devices probing
> with dts data and ti-sysc driver. So for omap4 and 5, l4-abe can now be
> used to experiment with adding genpd support to drivers/soc/ti/omap_prm.c
> to power down the abe domain when not in use :)
> 
> Note that we cannot yet probe system timers with ti-sysc.

Hi Tony,

Boot tested on DRA72 & DRA76.

I believe this series does not impact am4/3 but still
Tested for RTC+DDR mode and DS0 mode on AM437x.
Tested for DS0 on am335x-evm & am335x-beagle-bone-black.

FWIW

Tested-by: Keerthy <j-keerthy@ti.com>

- Keerthy

> 
> Regards,
> 
> Tony
> 
> 
> Tony Lindgren (9):
>   ARM: OMAP2+: Drop legacy platform data for omap4 aess
>   ARM: OMAP2+: Drop legacy platform data for omap4 dmic
>   ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm
>   ARM: OMAP2+: Drop legacy platform data for omap5 dmic
>   ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm
>   ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1
>   ARM: OMAP2+: Drop legacy platform data for omap5 timers except timer1
>   ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except
>     timer1 and 2
>   ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1
>     to 4
> 
>  arch/arm/boot/dts/am33xx-l4.dtsi              |   5 -
>  arch/arm/boot/dts/am437x-l4.dtsi              |   9 -
>  arch/arm/boot/dts/dra7-l4.dtsi                |  12 -
>  arch/arm/boot/dts/omap4-l4-abe.dtsi           |   7 -
>  arch/arm/boot/dts/omap4-l4.dtsi               |   6 -
>  arch/arm/boot/dts/omap5-l4-abe.dtsi           |   6 -
>  arch/arm/boot/dts/omap5-l4.dtsi               |   6 -
>  arch/arm/mach-omap2/omap_hwmod.c              |  18 -
>  arch/arm/mach-omap2/omap_hwmod.h              |   3 -
>  .../omap_hwmod_33xx_43xx_common_data.h        |  10 -
>  .../omap_hwmod_33xx_43xx_interconnect_data.c  |  40 --
>  .../omap_hwmod_33xx_43xx_ipblock_data.c       |  70 ---
>  arch/arm/mach-omap2/omap_hwmod_33xx_data.c    |   5 -
>  arch/arm/mach-omap2/omap_hwmod_43xx_data.c    |  89 ----
>  arch/arm/mach-omap2/omap_hwmod_44xx_data.c    | 421 ------------------
>  arch/arm/mach-omap2/omap_hwmod_54xx_data.c    | 357 ---------------
>  arch/arm/mach-omap2/omap_hwmod_7xx_data.c     | 295 ------------
>  arch/arm/mach-omap2/omap_hwmod_reset.c        |  24 -
>  include/sound/aess.h                          |  53 ---
>  19 files changed, 1436 deletions(-)
>  delete mode 100644 include/sound/aess.h
> 

[-- Attachment #2: pEpkey.asc --]
[-- Type: application/pgp-keys, Size: 9065 bytes --]

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

end of thread, other threads:[~2019-12-13  6:14 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-10 23:35 [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Tony Lindgren
2019-12-10 23:35 ` [PATCH 1/9] ARM: OMAP2+: Drop legacy platform data for omap4 aess Tony Lindgren
2019-12-10 23:35 ` [PATCH 2/9] ARM: OMAP2+: Drop legacy platform data for omap4 dmic Tony Lindgren
2019-12-10 23:35 ` [PATCH 3/9] ARM: OMAP2+: Drop legacy platform data for omap4 mcpdm Tony Lindgren
2019-12-10 23:35 ` [PATCH 4/9] ARM: OMAP2+: Drop legacy platform data for omap5 dmic Tony Lindgren
2019-12-10 23:35 ` [PATCH 5/9] ARM: OMAP2+: Drop legacy platform data for omap5 mcpdm Tony Lindgren
2019-12-10 23:35 ` [PATCH 6/9] ARM: OMAP2+: Drop legacy platform data for omap4 timers except timer1 Tony Lindgren
2019-12-10 23:35 ` [PATCH 7/9] ARM: OMAP2+: Drop legacy platform data for omap5 " Tony Lindgren
2019-12-10 23:35 ` [PATCH 8/9] ARM: OMAP2+: Drop legacy platform data for am3 and am4 timers except timer1 and 2 Tony Lindgren
2019-12-10 23:35 ` [PATCH 9/9] ARM: OMAP2+: Drop legacy platform data for dra7 timers except timer1 to 4 Tony Lindgren
2019-12-11  2:10   ` Andrew F. Davis
2019-12-11 12:59     ` Tero Kristo
2019-12-11 14:55       ` Tony Lindgren
2019-12-13  6:14 ` [PATCH 0/9] Probe l4 abe and most timers with ti-sysc Keerthy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.