<HTML dir=ltr><HEAD><TITLE>Re: [U-Boot-Users] (no subject)</TITLE>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.2900.2963" name=GENERATOR></HEAD>
<BODY>
<DIV id=idOWAReplyText41248 dir=ltr>
<DIV dir=ltr>There is an error&nbsp;in &nbsp;the spd_sdram.c file in a loop statement that is wrong if you are using two Dimms.</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>It missing initializing a part of the second dimm.&nbsp; So if you have a 1gig of memory it will show up as 768Megs.</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>I have correct this but need to know on the procedure for sending a patch?</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>&nbsp;1730&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*<BR>&nbsp;&nbsp; 1731&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * enable the bank<BR>&nbsp;&nbsp; 1732&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<BR>&nbsp;&nbsp; 1733&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cr |= SDRAM_BXCR_SDBE;<BR>&nbsp;&nbsp; 1734<BR>&nbsp;&nbsp; 1735&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for (i = 0; i &lt; num_banks; i++) {<BR>&nbsp;&nbsp; 1736&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (dimm_num == 1)<BR>&nbsp;&nbsp; 1737&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp; 1738&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bank_parms[ctrl_bank_num[dimm_num]+i+1].&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bank_size_bytes =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (4 * 1024 * 1024) * bank_size_id;<BR>&nbsp;&nbsp; 1739&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bank_parms[ctrl_bank_num[dimm_num]+i+1].&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cr = cr;<BR>&nbsp;&nbsp; 1740&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR>&nbsp;&nbsp; 1741&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<BR>&nbsp;&nbsp; 1742&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp; 1743&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bank_parms[ctrl_bank_num[dimm_num]+i].ba&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; nk_size_bytes = (4 * 1024 * 1024) * bank_size_id;<BR>&nbsp;&nbsp; 1744&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bank_parms[ctrl_bank_num[dimm_num]+i].cr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = cr;<BR>&nbsp;&nbsp; 1745&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<BR></DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>Without the patch it initializing like this:</DIV>
<DIV dir=ltr>0 = 256M</DIV>
<DIV dir=ltr>1 = 256M</DIV>
<DIV dir=ltr>1= 256M</DIV>
<DIV dir=ltr>2= 256M</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>Total 768M</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>With the patch:</DIV>
<DIV dir=ltr>0= 256M</DIV>
<DIV dir=ltr>1=256M</DIV>
<DIV dir=ltr>2=256M</DIV>
<DIV dir=ltr>3=256M</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>Total 1024M</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>&nbsp;</DIV>
<DIV dir=ltr>Gerald</DIV>
<DIV dir=ltr>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> u-boot-users-bounces@lists.sourceforge.net on behalf of Gerald Jackson<BR><B>Sent:</B> Sun 10/1/2006 3:17 PM<BR><B>To:</B> Stefan Roese; u-boot-users@lists.sourceforge.net<BR><B>Subject:</B> Re: [U-Boot-Users] (no subject)<BR></FONT><BR></DIV></DIV>
<DIV>
<P><FONT size=2>Stefan,<BR><BR>Thank you for the init.S file.&nbsp; But the problem still persists.<BR><BR>Here is what I get:<BR>U-Boot 1.1.4 (Oct&nbsp; 1 2006 - 02:58:55)<BR><BR>CPU:&nbsp;&nbsp; AMCC PowerPC 440GX Rev. F at 800 MHz (PLB=160, OPB=80, EBC=40<BR>MHz)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2C boot EEPROM enabled<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Internal PCI arbiter enabled<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 32 kB I-Cache 32 kB D-Cache<BR>Board: Ocotea - AMCC PPC440GX Evaluation Board<BR>I2C:&nbsp;&nbsp; ready<BR>DRAM:&nbsp; DIMM slot 0: populated<BR>DIMM slot 1: populated<BR>DIMM slot 0: DDR SDRAM detected<BR>DIMM slot 1: DDR SDRAM detected<BR>DIMM 0 voltage level supported.<BR>Finish program_cfg0<BR>Finish program_cfg1<BR>Finish program_rtr<BR>tr0: 410b401a<BR>Finish program_tr0<BR>Finish program_bxcr Total_Size 805306368&nbsp;&nbsp;&nbsp;&nbsp; &lt;----&nbsp; Here is part of the<BR>problem this should return&nbsp; about a 1Gig of memory but it only returns<BR>805Megs.&nbsp;&nbsp;<BR><BR>If I try only one dimm and move it to either slot it shows the correct<BR>amount but with two dimms the calculation is wrong.<BR><BR>It seems like I am miss about two (or one) banks from the Dimm which I<BR>assume equals 256M.<BR><BR>I am still working on what is causing the wrong amount.<BR><BR>Gerald<BR><BR><BR><BR><BR><BR><BR>-----Original Message-----<BR>From: Stefan Roese [<A href="mailto:sr@denx.de">mailto:sr@denx.de</A>]<BR>Sent: Sunday, October 01, 2006 2:00 PM<BR>To: u-boot-users@lists.sourceforge.net<BR>Cc: Gerald Jackson<BR>Subject: Re: [U-Boot-Users] (no subject)<BR><BR>Hi Gerald,<BR><BR>On Sunday 01 October 2006 19:15, Gerald Jackson wrote:<BR>&gt; I look more into using both dimms issue and I see two interesting<BR>&gt; things.<BR>&gt;<BR>&gt; 1. With two dimms it never get pass line 1478 - 1500 in spd_sdram.c.<BR>It<BR>&gt; loops once then hangs.<BR>&gt;<BR>&gt; 2. If I disable this part (ie break) I get the ERROR: Cannot determine<BR>a<BR>&gt; common read delay. If I comment out the hang()&nbsp; It returns but it only<BR>&gt; calculated 768MB of memory.<BR><BR>Only 768MB? Does this mean you are using more than 512MB? As I mentioned<BR><BR>earlier, this can't work right now. The TLB setup is for a max. of<BR>512MB.<BR><BR>Please try the attached init.S file. It fixes the issue mentioned by<BR>Marc<BR>Howard _and_ adds TLB entries for a max. of 1GB of DDR. It will be<BR>checked<BR>into the official git tree in a few days.<BR><BR>Please let me know if this changes anything.<BR><BR>Best regards,<BR>Stefan<BR><BR>-------------------------------------------------------------------------<BR>Take Surveys. Earn Cash. Influence the Future of IT<BR>Join SourceForge.net's Techsay panel and you'll get the chance to share your<BR>opinions on IT &amp; business topics through brief surveys -- and earn cash<BR><A href="http://www.techsay.com/default.php?page=join.php&amp;p=sourceforge&amp;CID=DEVDEV">http://www.techsay.com/default.php?page=join.php&amp;p=sourceforge&amp;CID=DEVDEV</A><BR>_______________________________________________<BR>U-Boot-Users mailing list<BR>U-Boot-Users@lists.sourceforge.net<BR><A href="https://lists.sourceforge.net/lists/listinfo/u-boot-users">https://lists.sourceforge.net/lists/listinfo/u-boot-users</A><BR></FONT></P></DIV></BODY></HTML>