* [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support
@ 2010-05-26 23:05 Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 1/4] OMAP3: hwmod: UART: add module offs Kevin Hilman
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-26 23:05 UTC (permalink / raw)
To: linux-omap
This series on top of my pm-wip/uart branch fixes up various issues
with UART hwmods for 24xx as well as IDLEST issues after Benoit's
fixes/cleanup series.
Tested on OMAP3 (omap3evm) and OMAP2 (n810/2420).
Note that for OMAP2, this recently posted patch is required as well:
[PATCH] OMAP24xx: CM: fix mask used for checking IDLEST status
These ares posted as FYI, and will be folded into the original hwmod
data for OMAP2+ UARTs.
Kevin
Kevin Hilman (4):
OMAP3: hwmod: UART: add module offs
OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST
OMAP2420: hwmod: UART3 needs prcm_reg_id = 2
24xx: need .module_offs = CORE_MOD
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 14 ++++++++++----
arch/arm/mach-omap2/omap_hwmod_2430_data.c | 9 ++++++---
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 15 +++++++++++----
3 files changed, 27 insertions(+), 11 deletions(-)
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH pm-wip/uart 1/4] OMAP3: hwmod: UART: add module offs
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
@ 2010-05-26 23:05 ` Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 2/4] OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST Kevin Hilman
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-26 23:05 UTC (permalink / raw)
To: linux-omap
fold into OMAP3 hwmod patch
---
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index f88bfff..5bf8690 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -287,6 +287,7 @@ static struct omap_hwmod omap3xxx_uart1_hwmod = {
.main_clk = "uart1_fck",
.prcm = {
.omap2 = {
+ .module_offs = CORE_MOD,
.prcm_reg_id = 1,
.module_bit = OMAP3430_EN_UART1_SHIFT,
},
@@ -321,6 +322,7 @@ static struct omap_hwmod omap3xxx_uart2_hwmod = {
.main_clk = "uart2_fck",
.prcm = {
.omap2 = {
+ .module_offs = CORE_MOD,
.prcm_reg_id = 1,
.module_bit = OMAP3430_EN_UART2_SHIFT,
},
@@ -355,6 +357,7 @@ static struct omap_hwmod omap3xxx_uart3_hwmod = {
.main_clk = "uart3_fck",
.prcm = {
.omap2 = {
+ .module_offs = OMAP3430_PER_MOD,
.prcm_reg_id = 1,
.module_bit = OMAP3430_EN_UART3_SHIFT,
},
--
1.7.0.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH pm-wip/uart 2/4] OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 1/4] OMAP3: hwmod: UART: add module offs Kevin Hilman
@ 2010-05-26 23:05 ` Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 3/4] OMAP2420: hwmod: UART3 needs prcm_reg_id = 2 Kevin Hilman
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-26 23:05 UTC (permalink / raw)
To: linux-omap
Since these hwmods do not have IDLEST, set the HWMOD_NO_IDLEST flag,
otherwise _enable() will fail due to failing _wait_target_ready().
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
---
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 9 ++++++---
arch/arm/mach-omap2/omap_hwmod_2430_data.c | 9 ++++++---
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 12 ++++++++----
3 files changed, 20 insertions(+), 10 deletions(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index bbe3006..b9a957d 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -66,7 +66,8 @@ static struct omap_hwmod omap2420_l3_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2420_l3_masters),
.slaves = omap2420_l3_slaves,
.slaves_cnt = ARRAY_SIZE(omap2420_l3_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420),
+ .flags = HWMOD_NO_IDLEST,
};
static struct omap_hwmod omap2420_l4_wkup_hwmod;
@@ -156,7 +157,8 @@ static struct omap_hwmod omap2420_l4_core_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2420_l4_core_masters),
.slaves = omap2420_l4_core_slaves,
.slaves_cnt = ARRAY_SIZE(omap2420_l4_core_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420),
+ .flags = HWMOD_NO_IDLEST,
};
/* Slave interfaces on the L4_WKUP interconnect */
@@ -176,7 +178,8 @@ static struct omap_hwmod omap2420_l4_wkup_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2420_l4_wkup_masters),
.slaves = omap2420_l4_wkup_slaves,
.slaves_cnt = ARRAY_SIZE(omap2420_l4_wkup_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2420),
+ .flags = HWMOD_NO_IDLEST,
};
/* Master interfaces on the MPU device */
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index 45767b1..d7faef2 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -66,7 +66,8 @@ static struct omap_hwmod omap2430_l3_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2430_l3_masters),
.slaves = omap2430_l3_slaves,
.slaves_cnt = ARRAY_SIZE(omap2430_l3_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430),
+ .flags = HWMOD_NO_IDLEST,
};
static struct omap_hwmod omap2430_l4_wkup_hwmod;
@@ -155,7 +156,8 @@ static struct omap_hwmod omap2430_l4_core_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2430_l4_core_masters),
.slaves = omap2430_l4_core_slaves,
.slaves_cnt = ARRAY_SIZE(omap2430_l4_core_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430),
+ .flags = HWMOD_NO_IDLEST,
};
/* Slave interfaces on the L4_WKUP interconnect */
@@ -178,7 +180,8 @@ static struct omap_hwmod omap2430_l4_wkup_hwmod = {
.masters_cnt = ARRAY_SIZE(omap2430_l4_wkup_masters),
.slaves = omap2430_l4_wkup_slaves,
.slaves_cnt = ARRAY_SIZE(omap2430_l4_wkup_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP2430),
+ .flags = HWMOD_NO_IDLEST,
};
/* Master interfaces on the MPU device */
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 5bf8690..6bc1173 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -77,7 +77,8 @@ static struct omap_hwmod omap3xxx_l3_hwmod = {
.masters_cnt = ARRAY_SIZE(omap3xxx_l3_masters),
.slaves = omap3xxx_l3_slaves,
.slaves_cnt = ARRAY_SIZE(omap3xxx_l3_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
+ .flags = HWMOD_NO_IDLEST,
};
static struct omap_hwmod omap3xxx_l4_wkup_hwmod;
@@ -185,7 +186,8 @@ static struct omap_hwmod omap3xxx_l4_core_hwmod = {
.masters_cnt = ARRAY_SIZE(omap3xxx_l4_core_masters),
.slaves = omap3xxx_l4_core_slaves,
.slaves_cnt = ARRAY_SIZE(omap3xxx_l4_core_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
+ .flags = HWMOD_NO_IDLEST,
};
/* Slave interfaces on the L4_PER interconnect */
@@ -207,7 +209,8 @@ static struct omap_hwmod omap3xxx_l4_per_hwmod = {
.masters_cnt = ARRAY_SIZE(omap3xxx_l4_per_masters),
.slaves = omap3xxx_l4_per_slaves,
.slaves_cnt = ARRAY_SIZE(omap3xxx_l4_per_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
+ .flags = HWMOD_NO_IDLEST,
};
/* Slave interfaces on the L4_WKUP interconnect */
@@ -227,7 +230,8 @@ static struct omap_hwmod omap3xxx_l4_wkup_hwmod = {
.masters_cnt = ARRAY_SIZE(omap3xxx_l4_wkup_masters),
.slaves = omap3xxx_l4_wkup_slaves,
.slaves_cnt = ARRAY_SIZE(omap3xxx_l4_wkup_slaves),
- .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
+ .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
+ .flags = HWMOD_NO_IDLEST,
};
/* Master interfaces on the MPU device */
--
1.7.0.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH pm-wip/uart 3/4] OMAP2420: hwmod: UART3 needs prcm_reg_id = 2
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 1/4] OMAP3: hwmod: UART: add module offs Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 2/4] OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST Kevin Hilman
@ 2010-05-26 23:05 ` Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 4/4] 24xx: need .module_offs = CORE_MOD Kevin Hilman
2010-05-27 21:06 ` [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-26 23:05 UTC (permalink / raw)
To: linux-omap
PRCM bits for UART3 are in PRCM reg id 2 (CM_IDLEST2_CORE, etc.)
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
---
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index b9a957d..c1618a5 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -307,7 +307,7 @@ static struct omap_hwmod omap2420_uart3_hwmod = {
.main_clk = "uart3_fck",
.prcm = {
.omap2 = {
- .prcm_reg_id = 1,
+ .prcm_reg_id = 2,
.module_bit = OMAP24XX_EN_UART3_SHIFT,
},
},
--
1.7.0.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH pm-wip/uart 4/4] 24xx: need .module_offs = CORE_MOD
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
` (2 preceding siblings ...)
2010-05-26 23:05 ` [PATCH pm-wip/uart 3/4] OMAP2420: hwmod: UART3 needs prcm_reg_id = 2 Kevin Hilman
@ 2010-05-26 23:05 ` Kevin Hilman
2010-05-27 21:06 ` [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-26 23:05 UTC (permalink / raw)
To: linux-omap
---
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index c1618a5..682eecd 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -239,6 +239,7 @@ static struct omap_hwmod omap2420_uart1_hwmod = {
.main_clk = "uart1_fck",
.prcm = {
.omap2 = {
+ .module_offs = CORE_MOD,
.prcm_reg_id = 1,
.module_bit = OMAP24XX_EN_UART1_SHIFT,
},
@@ -273,6 +274,7 @@ static struct omap_hwmod omap2420_uart2_hwmod = {
.main_clk = "uart2_fck",
.prcm = {
.omap2 = {
+ .module_offs = CORE_MOD,
.prcm_reg_id = 1,
.module_bit = OMAP24XX_EN_UART2_SHIFT,
},
@@ -307,6 +309,7 @@ static struct omap_hwmod omap2420_uart3_hwmod = {
.main_clk = "uart3_fck",
.prcm = {
.omap2 = {
+ .module_offs = CORE_MOD,
.prcm_reg_id = 2,
.module_bit = OMAP24XX_EN_UART3_SHIFT,
},
--
1.7.0.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
` (3 preceding siblings ...)
2010-05-26 23:05 ` [PATCH pm-wip/uart 4/4] 24xx: need .module_offs = CORE_MOD Kevin Hilman
@ 2010-05-27 21:06 ` Kevin Hilman
4 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-05-27 21:06 UTC (permalink / raw)
To: linux-omap
Kevin Hilman <khilman@deeprootsystems.com> writes:
> This series on top of my pm-wip/uart branch fixes up various issues
> with UART hwmods for 24xx as well as IDLEST issues after Benoit's
> fixes/cleanup series.
>
> Tested on OMAP3 (omap3evm) and OMAP2 (n810/2420).
>
> Note that for OMAP2, this recently posted patch is required as well:
>
> [PATCH] OMAP24xx: CM: fix mask used for checking IDLEST status
>
> These ares posted as FYI, and will be folded into the original hwmod
> data for OMAP2+ UARTs.
>
> Kevin
>
>
> Kevin Hilman (4):
> OMAP3: hwmod: UART: add module offs
> OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST
> OMAP2420: hwmod: UART3 needs prcm_reg_id = 2
> 24xx: need .module_offs = CORE_MOD
FYI.
This series has been folded into the original UART hwmod conversion
patch in an updated pm-wip/uart branch.
Kevin
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-05-27 21:06 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-26 23:05 [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 1/4] OMAP3: hwmod: UART: add module offs Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 2/4] OMAP2/3: hwmod: L3 and L4 CORE/PER/WKUP hwmods don't have IDLEST Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 3/4] OMAP2420: hwmod: UART3 needs prcm_reg_id = 2 Kevin Hilman
2010-05-26 23:05 ` [PATCH pm-wip/uart 4/4] 24xx: need .module_offs = CORE_MOD Kevin Hilman
2010-05-27 21:06 ` [PATCH pm-wip/uart 0/4] misc. fixes for IDLEST and OMAP24xx support Kevin Hilman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).