
There is an error in the spd_sdram.c in cpu/ppc4xx/, file in a loop statement that is wrong if you are using two Dimms.
It missing initializing a part of the second dimm. So if you have a 1gig of memory it will show up as 768Megs.
Without the patch it initializing like this:
0 = 256M
1 = 256M
1= 256M
2= 256M
Total 768M
With the patch:
0= 256M
1=256M
2=256M
3=256M
Total 1024M
Gerald
________________________________
From: u-boot-users-bounces@lists.sourceforge.net on behalf of Gerald Jackson Sent: Sun 10/1/2006 3:17 PM To: Stefan Roese; u-boot-users@lists.sourceforge.net Subject: Re: [U-Boot-Users] (no subject)
Stefan,
Thank you for the init.S file. But the problem still persists.
Here is what I get: U-Boot 1.1.4 (Oct 1 2006 - 02:58:55)
CPU: AMCC PowerPC 440GX Rev. F at 800 MHz (PLB=160, OPB=80, EBC=40 MHz) I2C boot EEPROM enabled Internal PCI arbiter enabled 32 kB I-Cache 32 kB D-Cache Board: Ocotea - AMCC PPC440GX Evaluation Board I2C: ready DRAM: DIMM slot 0: populated DIMM slot 1: populated DIMM slot 0: DDR SDRAM detected DIMM slot 1: DDR SDRAM detected DIMM 0 voltage level supported. Finish program_cfg0 Finish program_cfg1 Finish program_rtr tr0: 410b401a Finish program_tr0 Finish program_bxcr Total_Size 805306368 <---- Here is part of the problem this should return about a 1Gig of memory but it only returns 805Megs.
If I try only one dimm and move it to either slot it shows the correct amount but with two dimms the calculation is wrong.
It seems like I am miss about two (or one) banks from the Dimm which I assume equals 256M.
I am still working on what is causing the wrong amount.
Gerald
-----Original Message----- From: Stefan Roese [mailto:sr@denx.de] Sent: Sunday, October 01, 2006 2:00 PM To: u-boot-users@lists.sourceforge.net Cc: Gerald Jackson Subject: Re: [U-Boot-Users] (no subject)
Hi Gerald,
On Sunday 01 October 2006 19:15, Gerald Jackson wrote:
I look more into using both dimms issue and I see two interesting things.
- With two dimms it never get pass line 1478 - 1500 in spd_sdram.c.
It
loops once then hangs.
- If I disable this part (ie break) I get the ERROR: Cannot determine
a
common read delay. If I comment out the hang() It returns but it only calculated 768MB of memory.
Only 768MB? Does this mean you are using more than 512MB? As I mentioned
earlier, this can't work right now. The TLB setup is for a max. of 512MB.
Please try the attached init.S file. It fixes the issue mentioned by Marc Howard _and_ adds TLB entries for a max. of 1GB of DDR. It will be checked into the official git tree in a few days.
Please let me know if this changes anything.
Best regards, Stefan
------------------------------------------------------------------------ - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=D... V _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users