diff mbox

[U-Boot,v2] mx28evk: Scan only first 128MB of DRAM to avoid memory wraparound

Message ID 1336843047-27479-1-git-send-email-festevam@gmail.com
State Changes Requested
Delegated to: Stefano Babic
Headers show

Commit Message

Fabio Estevam May 12, 2012, 5:17 p.m. UTC
From: Fabio Estevam <fabio.estevam@freescale.com>

Scan only first 128MB of DRAM to avoid memory wraparound.

This fixes mx28evk boot and it follows the same idea of commit
19a2066b57 (M28: Scan only first 512 MB of DRAM to avoid memory wraparound)

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
Change since v1:
- Set the RAM size as 128MB.

 include/configs/mx28evk.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Wolfgang Denk May 12, 2012, 9:24 p.m. UTC | #1
Dear Fabio Estevam,

In message <1336843047-27479-1-git-send-email-festevam@gmail.com> you wrote:
> From: Fabio Estevam <fabio.estevam@freescale.com>
> 
> Scan only first 128MB of DRAM to avoid memory wraparound.
> 
> This fixes mx28evk boot and it follows the same idea of commit
> 19a2066b57 (M28: Scan only first 512 MB of DRAM to avoid memory wraparound)
> 
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> Change since v1:
> - Set the RAM size as 128MB.

I think this is the wrong approach.  We should let get_ram_size() do
it's job.  Or can you explain why it isn't working for you?

Best regards,

Wolfgang Denk
Fabio Estevam May 12, 2012, 9:41 p.m. UTC | #2
Hi Wolfgang,

On Sat, May 12, 2012 at 6:24 PM, Wolfgang Denk <wd@denx.de> wrote:

> I think this is the wrong approach.  We should let get_ram_size() do
> it's job.  Or can you explain why it isn't working for you?

I haven't done a deeper investigation yet, but with current u-boot-imx
I cannot get mx28evk to boot.

If I revert this commit:
commit acc4959fc1b3e61beb372f686595eb2f90240c92
Author: Marek Vasut <marex@denx.de>
Date:   Thu May 3 05:47:18 2012 +0000

    Revert "i.MX28: Enable additional DRAM address bits"

,then it boots fine.

I followed then the same approach of commit:

commit 19a2066b578f826c7bcb2b96a90434382e8ec8f3
Author: Marek Vasut <marex@denx.de>
Date:   Thu May 3 05:47:19 2012 +0000

    M28: Scan only first 512 MB of DRAM to avoid memory wraparound

,that fixed the boot.

Also, on the other i.MX boards we put the total size of RAM in the
config files, and I did the same here with this patch.

If anyone has better suggestion on how to better handle this, please let know.

Regards,

Fabio Estevam
Wolfgang Denk May 29, 2012, 8:39 p.m. UTC | #3
Dear Fabio Estevam,

In message <CAOMZO5AoXTbc1ELHoPLoicuwcf9rSuZZLUcKdyzWwyRfbDHC8Q@mail.gmail.com> you wrote:
> 
> Also, on the other i.MX boards we put the total size of RAM in the
> config files, and I did the same here with this patch.

This is a really bad habit that I would like to see eradicated rather
sooner than later.

Best regards,

Wolfgang Denk
Marek Vasut May 29, 2012, 8:43 p.m. UTC | #4
Dear Wolfgang Denk,

> Dear Fabio Estevam,
> 
> In message 
<CAOMZO5AoXTbc1ELHoPLoicuwcf9rSuZZLUcKdyzWwyRfbDHC8Q@mail.gmail.com> you wrote:
> > Also, on the other i.MX boards we put the total size of RAM in the
> > config files, and I did the same here with this patch.
> 
> This is a really bad habit that I would like to see eradicated rather
> sooner than later.

I've been thinking about it, maybe you can use the memory configuration 
adjustment function -- mx28_adjust_memory_params(). You shouldn't have the 
wraparound there then and you should be able to scan whole 1 gig of DRAM :)

> Best regards,
> 
> Wolfgang Denk

Best regards,
Marek Vasut
Fabio Estevam May 29, 2012, 11:43 p.m. UTC | #5
Hi Marek,

On Tue, May 29, 2012 at 5:43 PM, Marek Vasut <marex@denx.de> wrote:

> I've been thinking about it, maybe you can use the memory configuration
> adjustment function -- mx28_adjust_memory_params(). You shouldn't have the

Care to send a patch to fix this?

As the patch in this thread will not be accepted, mx28evk does not
boot in u-boot-imx anymore.

> wraparound there then and you should be able to scan whole 1 gig of DRAM :)

Just curious: why the value of 1GB was chosen?

Regards,

Fabio Estevam
Marek Vasut May 30, 2012, 5:44 a.m. UTC | #6
Dear Fabio Estevam,

> Hi Marek,
> 
> On Tue, May 29, 2012 at 5:43 PM, Marek Vasut <marex@denx.de> wrote:
> > I've been thinking about it, maybe you can use the memory configuration
> > adjustment function -- mx28_adjust_memory_params(). You shouldn't have
> > the
> 
> Care to send a patch to fix this?

I thought I did ... lousy me, sent ;-)

> 
> As the patch in this thread will not be accepted, mx28evk does not
> boot in u-boot-imx anymore.
> 
> > wraparound there then and you should be able to scan whole 1 gig of DRAM
> > :)
> 
> Just curious: why the value of 1GB was chosen?

That's the maximum amount of DRAM MX28 can handle.

> 
> Regards,
> 
> Fabio Estevam

Best regards,
Marek Vasut
diff mbox

Patch

diff --git a/include/configs/mx28evk.h b/include/configs/mx28evk.h
index 0c18e50..41037fc 100644
--- a/include/configs/mx28evk.h
+++ b/include/configs/mx28evk.h
@@ -75,7 +75,7 @@ 
  */
 #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */
 #define PHYS_SDRAM_1			0x40000000	/* Base address */
-#define PHYS_SDRAM_1_SIZE		0x40000000	/* Max 1 GB RAM */
+#define PHYS_SDRAM_1_SIZE		0x08000000	/* 128MB RAM */
 #define CONFIG_STACKSIZE		(128 * 1024)	/* 128 KB stack */
 #define CONFIG_SYS_MALLOC_LEN		0x00400000	/* 4 MB for malloc */
 #define CONFIG_SYS_MEMTEST_START	0x40000000	/* Memtest start adr */