Re: Regression detecting memory size on PPC440EPx
From: Valentine <hidden>
Date: 2009-10-05 16:03:50
AFAIK, u-boot just writes pre-defined values to the memory controller registers. It doesn't do any chiptype/memsize detection. These values are set for Sequoia and may not suite your board. So you probably need to adjust the u-boot to make linux detect the memory size correctly. Thanks, Val. Mikhail Zolotaryov wrote:
Hi Mike, Address width calculation is based on the DDR-controller configuration set by the bootloader. It would be helpful for further discussion if you could send DDR0_00..DDR0_44 register values and memory configuration used (no of banks, bank size, I/O width) to check calculations. Thanks. P.S. Sequoia board also has DDR2 SDRAM from Micron. Best regards, Mikhail Zolotaryov Mike Nuss wrote:quoted
There was a fix a while back called "Correct memory size calculation for Denali based boards" that corrected the data width detection in the 4xx bootwrapper. This seems to have had the unintended consequence of exposing another bug in the same code. I have a board very similar to Sequoia, except that it uses a DDR2 DIMM module. It uses a single 256MB DIMM. After upgrading to the latest kernel, which includes the previously mentioned fix, U-Boot works fine, but the kernel detects 512MB instead, and of course, the kernel panics. The error seems to be in the calculation of row bits. U-Boot's SPD detection says that the DIMM uses 13 bits, but I added some printf()s to the bootwrapper, and it is setting row to 14 instead. I'm not too clear on how this code works; it calculates the row bits by subtracting the row from max_row, and maybe max_row is wrong? It looks like the data width bug canceled out this bug before, since these values end up changing the memory size by a factor of 2 (in opposite directions). Could someone with a better understanding of this code take a look? Thanks, Mike _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev_______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev