[RFC] OMAP3: add support for 2 SDRAM chip selects (was: Re: Beagleboard rev C memory timings & suspend/resume)
diff mbox

Message ID 200906081102.00779.jpihet@mvista.com
State New, archived
Delegated to: Paul Walmsley
Headers show

Commit Message

Jean Pihet June 8, 2009, 9:02 a.m. UTC
Paul, Gražvydas,

Ok, thanks!

Here is a patch that addresses the Pandora's use of 2 SDRAM chip selects.
It applies on top of 'OMAP3: add support for 2 SDRAM chip selects'.

Is that OK? It has been build tested only.

Regards,
Jean

From 297a0b09267fc1a0ae4428771ff54b73b27d5bbe Mon Sep 17 00:00:00 2001
From: Jean Pihet <jpihet@mvista.com>
Date: Mon, 8 Jun 2009 10:49:53 +0200
Subject: OMAP3 Pandora: add support for 2 SDRAM chip selects

This allows the self refresh to work correctly on
Pandora.

Signed-off-by: Jean Pihet <jpihet@mvista.com>
---
 arch/arm/mach-omap2/board-omap3pandora.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

Comments

Grazvydas Ignotas June 8, 2009, 11:01 a.m. UTC | #1
On Mon, Jun 8, 2009 at 12:02 PM, Jean Pihet<jpihet@mvista.com> wrote:
> Paul, Gražvydas,
>
> Ok, thanks!
>
> Here is a patch that addresses the Pandora's use of 2 SDRAM chip selects.
> It applies on top of 'OMAP3: add support for 2 SDRAM chip selects'.
>
> Is that OK? It has been build tested only.

thanks!

>
> Regards,
> Jean
>
> From 297a0b09267fc1a0ae4428771ff54b73b27d5bbe Mon Sep 17 00:00:00 2001
> From: Jean Pihet <jpihet@mvista.com>
> Date: Mon, 8 Jun 2009 10:49:53 +0200
> Subject: OMAP3 Pandora: add support for 2 SDRAM chip selects
>
> This allows the self refresh to work correctly on
> Pandora.
>
> Signed-off-by: Jean Pihet <jpihet@mvista.com>
> ---
>  arch/arm/mach-omap2/board-omap3pandora.c |    8 +++++++-
>  1 files changed, 7 insertions(+), 1 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/board-omap3pandora.c
> b/arch/arm/mach-omap2/board-omap3pandora.c
> index 05ab99e..ba015b4 100644
> --- a/arch/arm/mach-omap2/board-omap3pandora.c
> +++ b/arch/arm/mach-omap2/board-omap3pandora.c
> @@ -44,6 +44,7 @@
>  #include <mach/gpmc.h>
>  #include <mach/hardware.h>
>  #include <mach/nand.h>
> +#include <mach/mux.h>
>  #include <mach/usb.h>
>  #include <mach/mcspi.h>
>
> @@ -220,7 +221,8 @@ static int __init omap3pandora_i2c_init(void)
>
>  static void __init omap3pandora_init_irq(void)
>  {
> -       omap2_init_common_hw(mt46h32m32lf6_sdrc_params, NULL,
> +       omap2_init_common_hw(mt46h32m32lf6_sdrc_params,
> +                            mt46h32m32lf6_sdrc_params,
>                             NULL, NULL, NULL);

Hm, since pandora uses OMAP3530, maybe it should also have
omap3_*_rate_table args passed? Could also be true for Overo, at least
for omap3_mpu_rate_table and omap3_l3_rate_table, as some models use
OMAP3503 without the DSP.

>        omap_init_irq();
>        omap_gpio_init();
> @@ -307,6 +309,10 @@ static void __init omap3pandora_init(void)
>        usb_ehci_init();
>        omap3pandora_flash_init();
>        omap3pandora_ads7846_init();
> +
> +       /* Ensure SDRC pins are mux'd for self-refresh */
> +       omap_cfg_reg(H16_34XX_SDRC_CKE0);
> +       omap_cfg_reg(H17_34XX_SDRC_CKE1);
>  }
>
>  static void __init omap3pandora_map_io(void)
> --
> 1.6.2.5.168.g3823
>
>
> On Saturday 06 June 2009 12:50:42 Grazvydas Ignotas wrote:
>> On Fri, Jun 5, 2009 at 10:14 PM, Paul Walmsley<paul@pwsan.com> wrote:
>> > Hi Jean,
>> >
>> > On Fri, 5 Jun 2009, Jean Pihet wrote:
>> >> Some notes:
>> >> - all calls to omap2_init_common_hw have been adapted in the board
>> >> files. it looks like 2430SDP and Pandora board files are broken since
>> >> they use only one param. Can that be checked on those boards?
>> >
>> > Yep, builds with those two boards are broken on the PM branch, and it
>> > looks like your patch fixes both.
>> >
>> > Gražyvdas, looks like Pandora might use 2 SDRAM chipselects also?
>>
>> Yes it does, it uses different part than Beagle rev C (256/512
>> RAM/NAND instead of 256/256), but RAM portion should be identical I
>> guess.
>>
>>
>> Gražvydas
>
>
>
--
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
Jean Pihet June 8, 2009, 5:11 p.m. UTC | #2
Hi Kevin,

On Monday 08 June 2009 13:01:18 Grazvydas Ignotas wrote:
> >  static void __init omap3pandora_init_irq(void)
> >  {
> > -       omap2_init_common_hw(mt46h32m32lf6_sdrc_params, NULL,
> > +       omap2_init_common_hw(mt46h32m32lf6_sdrc_params,
> > +                            mt46h32m32lf6_sdrc_params,
> >                             NULL, NULL, NULL);
>
> Hm, since pandora uses OMAP3530, maybe it should also have
> omap3_*_rate_table args passed? Could also be true for Overo, at least
> for omap3_mpu_rate_table and omap3_l3_rate_table, as some models use
> OMAP3503 without the DSP.
Which table rates shall we pass for Overo and Pandora?
I will update the patch set with the needed ones.

Regards,
Jean
--
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
Kevin Hilman June 8, 2009, 5:28 p.m. UTC | #3
Jean Pihet <jpihet@mvista.com> writes:

> Hi Kevin,
>
> On Monday 08 June 2009 13:01:18 Grazvydas Ignotas wrote:
>> >  static void __init omap3pandora_init_irq(void)
>> >  {
>> > -       omap2_init_common_hw(mt46h32m32lf6_sdrc_params, NULL,
>> > +       omap2_init_common_hw(mt46h32m32lf6_sdrc_params,
>> > +                            mt46h32m32lf6_sdrc_params,
>> >                             NULL, NULL, NULL);
>>
>> Hm, since pandora uses OMAP3530, maybe it should also have
>> omap3_*_rate_table args passed? Could also be true for Overo, at least
>> for omap3_mpu_rate_table and omap3_l3_rate_table, as some models use
>> OMAP3503 without the DSP.
>
> Which table rates shall we pass for Overo and Pandora?
> I will update the patch set with the needed ones.
>

Let's leave any rate table changes out of this series.  That is an
unrelated change.

The Pandora/Overo folks should do some testing with the current rate
tables and DVFS/CPUfreq to see if they work for them.

Kevin
--
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

Patch
diff mbox

diff --git a/arch/arm/mach-omap2/board-omap3pandora.c 
b/arch/arm/mach-omap2/board-omap3pandora.c
index 05ab99e..ba015b4 100644
--- a/arch/arm/mach-omap2/board-omap3pandora.c
+++ b/arch/arm/mach-omap2/board-omap3pandora.c
@@ -44,6 +44,7 @@ 
 #include <mach/gpmc.h>
 #include <mach/hardware.h>
 #include <mach/nand.h>
+#include <mach/mux.h>
 #include <mach/usb.h>
 #include <mach/mcspi.h>
 
@@ -220,7 +221,8 @@  static int __init omap3pandora_i2c_init(void)
 
 static void __init omap3pandora_init_irq(void)
 {
-	omap2_init_common_hw(mt46h32m32lf6_sdrc_params, NULL,
+	omap2_init_common_hw(mt46h32m32lf6_sdrc_params,
+			     mt46h32m32lf6_sdrc_params,
 			     NULL, NULL, NULL);
 	omap_init_irq();
 	omap_gpio_init();
@@ -307,6 +309,10 @@  static void __init omap3pandora_init(void)
 	usb_ehci_init();
 	omap3pandora_flash_init();
 	omap3pandora_ads7846_init();
+
+	/* Ensure SDRC pins are mux'd for self-refresh */
+	omap_cfg_reg(H16_34XX_SDRC_CKE0);
+	omap_cfg_reg(H17_34XX_SDRC_CKE1);
 }
 
 static void __init omap3pandora_map_io(void)