[U-Boot-Users] RPXlite_DW problem/solution U-boot CVS

Wolfgang Denk wd at denx.de
Tue Nov 30 09:41:41 CET 2004


In message <200411292219.25317.ccool at ninjatech.biz> you wrote:
> 
> I found out a little something in the CVS version of U-boot about the 
> RPXlite_DW addapted by Sam Song.
> 
> In the file 
> include/configs/RPXlite_DW.h
> at line 324
> I had to replace
> #define CFG_OR1_PRELIM	( CFG_OR_AM_SDRAM | CFG_OR_TIMING_SDRAM )
> for
> #define CFG_OR1_PRELIM          0xFF000E00
> 
> and at line 353-354
> I had to replace
> #define CFG_MAMR_9COL  ((CFG_MAMR_PTA << MAMR_PTA_SHIFT)  | MAMR_PTAE | \
> 			MAMR_AMA_TYPE_1 | MAMR_DSA_1_CYCL | MAMR_G0CLA_A10)
> by
>  #define CFG_MAMR_9COL 0x20802000

Argh... Is it too much to ask you to provide the information  in  the
same  readable  format  as  used  in the original coinfig file, i. e.
broken down into separate, readable parts, instead of just throwing a
hard-coded hex number on us?

> If I did not change those two register, U-boot would get stuck at the DRAM
> detection and would only find 1K (instead of the 16M on my board).

So let's have a look what you did.

You changed the OR setting from  0xF800....  into  0xFF00....,  which
means  that instead oif the previously used mapping of 128 MB you now
only map 64 MB. [I really wonder why you not redefined SDRAM_MAX_SIZE
as 0x04000000 - was too much work or what?]

And you changed MAMR_AMA_TYPE_1 into MAMR_AMA_TYPE_0  (Addess  Multi-
plexing Type 0), and MAMR_G0CLA_A10 into MAMR_G0CLA_A11 (General Line
0 : A10).

And you still use the name CFG_MAMR_9COL for this  definition,  which
is  misleading at best, because what you changed means that you don't
have a 9 column SDRAM on your board, but are using a 8 column SDRAM.

> I`m sending this as a simple information.  I know my method is not the best
> way to define thoses register, but I though that maybe the other ways to 

Indeed, it is not the best way. Actually it is a quick and ugly  hack
and  not  usable,  as  it breaks U-Boot for all the other boards that
worked fine so far.



What we learned is that there seems to be RPXlite_DW boards out there
that use 8 column SDRAM, and others (most?) that use 9 column  SDRAM.
The  correct  fix  to  this would be to make the SDRAM initialization
code automatically detect if 8 or 9 column SDRAM is used  and  adjust
the  settings  as  needed. Example code for doing exactly this can be
found in the TQM8xxL configurations (i. e. in board/tqm8xx/tqm8xx.c).

Best regards,

Wolfgang Denk

-- 
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Monday is an awful way to spend one seventh of your life.




More information about the U-Boot mailing list