* [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 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.