All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC][PATCH 0/3] OMAP3630: UART4 startup
@ 2010-02-25 14:41 Sergio Aguirre
  2010-02-25 14:41 ` [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits Sergio Aguirre
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Sergio Aguirre @ 2010-02-25 14:41 UTC (permalink / raw)
  To: linux-omap; +Cc: Sergio Aguirre

Hi,

This small RFC patchlist is intending to add initial UART4 support
for omap36xx chips.

VERY IMPORTANT:
 - This is currently untested. I don't have the HW to test this.
 - I don't consider myself an omap-serial expert, so please review
   carefully.

Regards,
Sergio

Detailed changeset:

Sergio Aguirre (3):
  ARM: OMAP3630: PRCM: Add UART4 control bits
  OMAP clock: Add uart4_ick/fck definitions for 3630
  omap3: serial: Add uart4 wakeup handling

 arch/arm/mach-omap2/clock34xx_data.c |   22 ++++++++++++++++++++++
 arch/arm/mach-omap2/prcm-common.h    |    4 ++++
 arch/arm/mach-omap2/serial.c         |    4 ++++
 3 files changed, 30 insertions(+), 0 deletions(-)


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

* [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits
  2010-02-25 14:41 [RFC][PATCH 0/3] OMAP3630: UART4 startup Sergio Aguirre
@ 2010-02-25 14:41 ` Sergio Aguirre
  2010-02-25 21:03   ` Paul Walmsley
  2010-02-25 14:41 ` [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630 Sergio Aguirre
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 7+ messages in thread
From: Sergio Aguirre @ 2010-02-25 14:41 UTC (permalink / raw)
  To: linux-omap; +Cc: Sergio Aguirre

This bits are exclusive of omap 36xx family of chips.

Signed-off-by: Sergio Aguirre <saaguirre@ti.com>
---
 arch/arm/mach-omap2/prcm-common.h |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/prcm-common.h b/arch/arm/mach-omap2/prcm-common.h
index 90f603d..c4e7bcb 100644
--- a/arch/arm/mach-omap2/prcm-common.h
+++ b/arch/arm/mach-omap2/prcm-common.h
@@ -390,6 +390,8 @@
 #define OMAP3430_EN_MPU_SHIFT				1
 
 /* CM_FCLKEN_PER, CM_ICLKEN_PER, PM_WKEN_PER shared bits */
+#define OMAP3630_EN_UART4				(1 << 18)
+#define OMAP3630_EN_UART4_SHIFT				18
 #define OMAP3430_EN_GPIO6				(1 << 17)
 #define OMAP3430_EN_GPIO6_SHIFT				17
 #define OMAP3430_EN_GPIO5				(1 << 16)
@@ -430,6 +432,8 @@
 #define OMAP3430_EN_MCBSP2_SHIFT			0
 
 /* CM_IDLEST_PER, PM_WKST_PER shared bits */
+#define OMAP3630_ST_UART4_SHIFT				18
+#define OMAP3630_ST_UART4_MASK				(1 << 18)
 #define OMAP3430_ST_GPIO6_SHIFT				17
 #define OMAP3430_ST_GPIO6_MASK				(1 << 17)
 #define OMAP3430_ST_GPIO5_SHIFT				16
-- 
1.6.3.3


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

* [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630
  2010-02-25 14:41 [RFC][PATCH 0/3] OMAP3630: UART4 startup Sergio Aguirre
  2010-02-25 14:41 ` [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits Sergio Aguirre
@ 2010-02-25 14:41 ` Sergio Aguirre
  2010-02-25 21:04   ` Paul Walmsley
  2010-02-25 14:41 ` [RFC][PATCH 3/3] omap3: serial: Add uart4 wakeup handling Sergio Aguirre
  2010-02-25 21:08 ` [RFC][PATCH 0/3] OMAP3630: UART4 startup Paul Walmsley
  3 siblings, 1 reply; 7+ messages in thread
From: Sergio Aguirre @ 2010-02-25 14:41 UTC (permalink / raw)
  To: linux-omap; +Cc: Sergio Aguirre

This is only valid for omap 36xx family of chips.

Signed-off-by: Sergio Aguirre <saaguirre@ti.com>
---
 arch/arm/mach-omap2/clock34xx_data.c |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/clock34xx_data.c b/arch/arm/mach-omap2/clock34xx_data.c
index 8728f1f..5d783bd 100644
--- a/arch/arm/mach-omap2/clock34xx_data.c
+++ b/arch/arm/mach-omap2/clock34xx_data.c
@@ -2381,6 +2381,16 @@ static struct clk uart3_fck = {
 	.recalc		= &followparent_recalc,
 };
 
+static struct clk uart4_fck = {
+	.name		= "uart4_fck",
+	.ops		= &clkops_omap2_dflt_wait,
+	.parent		= &per_48m_fck,
+	.enable_reg	= OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
+	.enable_bit	= OMAP3630_EN_UART4_SHIFT,
+	.clkdm_name	= "per_clkdm",
+	.recalc		= &followparent_recalc,
+};
+
 static struct clk gpt2_fck = {
 	.name		= "gpt2_fck",
 	.ops		= &clkops_omap2_dflt_wait,
@@ -2631,6 +2641,16 @@ static struct clk uart3_ick = {
 	.recalc		= &followparent_recalc,
 };
 
+static struct clk uart4_ick = {
+	.name		= "uart4_ick",
+	.ops		= &clkops_omap2_dflt_wait,
+	.parent		= &per_l4_ick,
+	.enable_reg	= OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_ICLKEN),
+	.enable_bit	= OMAP3630_EN_UART4_SHIFT,
+	.clkdm_name	= "per_clkdm",
+	.recalc		= &followparent_recalc,
+};
+
 static struct clk gpt9_ick = {
 	.name		= "gpt9_ick",
 	.ops		= &clkops_omap2_dflt_wait,
@@ -3160,6 +3180,7 @@ static struct omap_clk omap3xxx_clks[] = {
 	CLK(NULL,	"per_96m_fck",	&per_96m_fck,	CK_3XXX),
 	CLK(NULL,	"per_48m_fck",	&per_48m_fck,	CK_3XXX),
 	CLK(NULL,	"uart3_fck",	&uart3_fck,	CK_3XXX),
+	CLK(NULL,	"uart4_fck",	&uart4_fck,	CK_36XX),
 	CLK(NULL,	"gpt2_fck",	&gpt2_fck,	CK_3XXX),
 	CLK(NULL,	"gpt3_fck",	&gpt3_fck,	CK_3XXX),
 	CLK(NULL,	"gpt4_fck",	&gpt4_fck,	CK_3XXX),
@@ -3183,6 +3204,7 @@ static struct omap_clk omap3xxx_clks[] = {
 	CLK(NULL,	"gpio2_ick",	&gpio2_ick,	CK_3XXX),
 	CLK(NULL,	"wdt3_ick",	&wdt3_ick,	CK_3XXX),
 	CLK(NULL,	"uart3_ick",	&uart3_ick,	CK_3XXX),
+	CLK(NULL,	"uart4_ick",	&uart4_ick,	CK_36XX),
 	CLK(NULL,	"gpt9_ick",	&gpt9_ick,	CK_3XXX),
 	CLK(NULL,	"gpt8_ick",	&gpt8_ick,	CK_3XXX),
 	CLK(NULL,	"gpt7_ick",	&gpt7_ick,	CK_3XXX),
-- 
1.6.3.3


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

* [RFC][PATCH 3/3] omap3: serial: Add uart4 wakeup handling
  2010-02-25 14:41 [RFC][PATCH 0/3] OMAP3630: UART4 startup Sergio Aguirre
  2010-02-25 14:41 ` [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits Sergio Aguirre
  2010-02-25 14:41 ` [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630 Sergio Aguirre
@ 2010-02-25 14:41 ` Sergio Aguirre
  2010-02-25 21:08 ` [RFC][PATCH 0/3] OMAP3630: UART4 startup Paul Walmsley
  3 siblings, 0 replies; 7+ messages in thread
From: Sergio Aguirre @ 2010-02-25 14:41 UTC (permalink / raw)
  To: linux-omap; +Cc: Sergio Aguirre

Signed-off-by: Sergio Aguirre <saaguirre@ti.com>
---
 arch/arm/mach-omap2/serial.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c
index c4a810b..1942cc8 100644
--- a/arch/arm/mach-omap2/serial.c
+++ b/arch/arm/mach-omap2/serial.c
@@ -475,6 +475,10 @@ static void omap_uart_idle_init(struct omap_uart_state *uart)
 			wk_mask = OMAP3430_ST_UART3_MASK;
 			padconf = 0x19e;
 			break;
+		case 3:
+			wk_mask = OMAP3630_ST_UART4_MASK;
+			padconf = 0x0d2;
+			break;
 		}
 		uart->wk_mask = wk_mask;
 		uart->padconf = padconf;
-- 
1.6.3.3


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

* Re: [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits
  2010-02-25 14:41 ` [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits Sergio Aguirre
@ 2010-02-25 21:03   ` Paul Walmsley
  0 siblings, 0 replies; 7+ messages in thread
From: Paul Walmsley @ 2010-02-25 21:03 UTC (permalink / raw)
  To: Sergio Aguirre; +Cc: linux-omap

On Thu, 25 Feb 2010, Sergio Aguirre wrote:

> This bits are exclusive of omap 36xx family of chips.

Verified against the Rev C TRM.

Reviewed-by: Paul Walmsley <paul@pwsan.com>


> 
> Signed-off-by: Sergio Aguirre <saaguirre@ti.com>
> ---
>  arch/arm/mach-omap2/prcm-common.h |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/prcm-common.h b/arch/arm/mach-omap2/prcm-common.h
> index 90f603d..c4e7bcb 100644
> --- a/arch/arm/mach-omap2/prcm-common.h
> +++ b/arch/arm/mach-omap2/prcm-common.h
> @@ -390,6 +390,8 @@
>  #define OMAP3430_EN_MPU_SHIFT				1
>  
>  /* CM_FCLKEN_PER, CM_ICLKEN_PER, PM_WKEN_PER shared bits */
> +#define OMAP3630_EN_UART4				(1 << 18)
> +#define OMAP3630_EN_UART4_SHIFT				18
>  #define OMAP3430_EN_GPIO6				(1 << 17)
>  #define OMAP3430_EN_GPIO6_SHIFT				17
>  #define OMAP3430_EN_GPIO5				(1 << 16)
> @@ -430,6 +432,8 @@
>  #define OMAP3430_EN_MCBSP2_SHIFT			0
>  
>  /* CM_IDLEST_PER, PM_WKST_PER shared bits */
> +#define OMAP3630_ST_UART4_SHIFT				18
> +#define OMAP3630_ST_UART4_MASK				(1 << 18)
>  #define OMAP3430_ST_GPIO6_SHIFT				17
>  #define OMAP3430_ST_GPIO6_MASK				(1 << 17)
>  #define OMAP3430_ST_GPIO5_SHIFT				16
> -- 
> 1.6.3.3
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


- Paul

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

* Re: [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630
  2010-02-25 14:41 ` [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630 Sergio Aguirre
@ 2010-02-25 21:04   ` Paul Walmsley
  0 siblings, 0 replies; 7+ messages in thread
From: Paul Walmsley @ 2010-02-25 21:04 UTC (permalink / raw)
  To: Sergio Aguirre; +Cc: linux-omap

On Thu, 25 Feb 2010, Sergio Aguirre wrote:

> This is only valid for omap 36xx family of chips.
> 
> Signed-off-by: Sergio Aguirre <saaguirre@ti.com>

Reviewed-by: Paul Walmsley <paul@pwsan.com>

Nice work Sergio.

> ---
>  arch/arm/mach-omap2/clock34xx_data.c |   22 ++++++++++++++++++++++
>  1 files changed, 22 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/clock34xx_data.c b/arch/arm/mach-omap2/clock34xx_data.c
> index 8728f1f..5d783bd 100644
> --- a/arch/arm/mach-omap2/clock34xx_data.c
> +++ b/arch/arm/mach-omap2/clock34xx_data.c
> @@ -2381,6 +2381,16 @@ static struct clk uart3_fck = {
>  	.recalc		= &followparent_recalc,
>  };
>  
> +static struct clk uart4_fck = {
> +	.name		= "uart4_fck",
> +	.ops		= &clkops_omap2_dflt_wait,
> +	.parent		= &per_48m_fck,
> +	.enable_reg	= OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_FCLKEN),
> +	.enable_bit	= OMAP3630_EN_UART4_SHIFT,
> +	.clkdm_name	= "per_clkdm",
> +	.recalc		= &followparent_recalc,
> +};
> +
>  static struct clk gpt2_fck = {
>  	.name		= "gpt2_fck",
>  	.ops		= &clkops_omap2_dflt_wait,
> @@ -2631,6 +2641,16 @@ static struct clk uart3_ick = {
>  	.recalc		= &followparent_recalc,
>  };
>  
> +static struct clk uart4_ick = {
> +	.name		= "uart4_ick",
> +	.ops		= &clkops_omap2_dflt_wait,
> +	.parent		= &per_l4_ick,
> +	.enable_reg	= OMAP_CM_REGADDR(OMAP3430_PER_MOD, CM_ICLKEN),
> +	.enable_bit	= OMAP3630_EN_UART4_SHIFT,
> +	.clkdm_name	= "per_clkdm",
> +	.recalc		= &followparent_recalc,
> +};
> +
>  static struct clk gpt9_ick = {
>  	.name		= "gpt9_ick",
>  	.ops		= &clkops_omap2_dflt_wait,
> @@ -3160,6 +3180,7 @@ static struct omap_clk omap3xxx_clks[] = {
>  	CLK(NULL,	"per_96m_fck",	&per_96m_fck,	CK_3XXX),
>  	CLK(NULL,	"per_48m_fck",	&per_48m_fck,	CK_3XXX),
>  	CLK(NULL,	"uart3_fck",	&uart3_fck,	CK_3XXX),
> +	CLK(NULL,	"uart4_fck",	&uart4_fck,	CK_36XX),
>  	CLK(NULL,	"gpt2_fck",	&gpt2_fck,	CK_3XXX),
>  	CLK(NULL,	"gpt3_fck",	&gpt3_fck,	CK_3XXX),
>  	CLK(NULL,	"gpt4_fck",	&gpt4_fck,	CK_3XXX),
> @@ -3183,6 +3204,7 @@ static struct omap_clk omap3xxx_clks[] = {
>  	CLK(NULL,	"gpio2_ick",	&gpio2_ick,	CK_3XXX),
>  	CLK(NULL,	"wdt3_ick",	&wdt3_ick,	CK_3XXX),
>  	CLK(NULL,	"uart3_ick",	&uart3_ick,	CK_3XXX),
> +	CLK(NULL,	"uart4_ick",	&uart4_ick,	CK_36XX),
>  	CLK(NULL,	"gpt9_ick",	&gpt9_ick,	CK_3XXX),
>  	CLK(NULL,	"gpt8_ick",	&gpt8_ick,	CK_3XXX),
>  	CLK(NULL,	"gpt7_ick",	&gpt7_ick,	CK_3XXX),
> -- 
> 1.6.3.3
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 


- Paul

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

* Re: [RFC][PATCH 0/3] OMAP3630: UART4 startup
  2010-02-25 14:41 [RFC][PATCH 0/3] OMAP3630: UART4 startup Sergio Aguirre
                   ` (2 preceding siblings ...)
  2010-02-25 14:41 ` [RFC][PATCH 3/3] omap3: serial: Add uart4 wakeup handling Sergio Aguirre
@ 2010-02-25 21:08 ` Paul Walmsley
  3 siblings, 0 replies; 7+ messages in thread
From: Paul Walmsley @ 2010-02-25 21:08 UTC (permalink / raw)
  To: Sergio Aguirre; +Cc: linux-omap, tony

Hi,

On Thu, 25 Feb 2010, Sergio Aguirre wrote:

> This small RFC patchlist is intending to add initial UART4 support
> for omap36xx chips.
> 
> VERY IMPORTANT:
>  - This is currently untested. I don't have the HW to test this.
>  - I don't consider myself an omap-serial expert, so please review
>    carefully.

Tony and I corresponded about this series; we decided that I'll handle 
this one because most of the changes are clock/PRCM related.  Will you get 
hardware to test this series soon?  None of us have OMAP3630 hardware, 
unfortunately.


- Paul

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

end of thread, other threads:[~2010-02-25 21:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-25 14:41 [RFC][PATCH 0/3] OMAP3630: UART4 startup Sergio Aguirre
2010-02-25 14:41 ` [RFC][PATCH 1/3] ARM: OMAP3630: PRCM: Add UART4 control bits Sergio Aguirre
2010-02-25 21:03   ` Paul Walmsley
2010-02-25 14:41 ` [RFC][PATCH 2/3] OMAP clock: Add uart4_ick/fck definitions for 3630 Sergio Aguirre
2010-02-25 21:04   ` Paul Walmsley
2010-02-25 14:41 ` [RFC][PATCH 3/3] omap3: serial: Add uart4 wakeup handling Sergio Aguirre
2010-02-25 21:08 ` [RFC][PATCH 0/3] OMAP3630: UART4 startup Paul Walmsley

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.