AW: How to set DDR data bus width to 16Bit

Frank Prepelica Frank.Prepelica at ubidyne.com
Thu Jul 2 19:45:04 EST 2009


> you have to do it via your bootloader (u-boot) which sets up
> the DDR memory controller.
> Linux (already) assumes memory is available.
> Are you sure linux kernel is changing DDR_SDRAM_CFG ?
> When our linux-2.6.28 kernel is up, it's still 0xc3080000 when I read
> physical address 0xe0002110.


Hi Norbert, thank you for your fast reply!

You are absolutly right! I made a silly mistake. I've read the value of
the 0xe0002110 with a 8bit pointer.

The value is actually 0xC3100000 which means the 16bit bus width is set.

Just to be sure. Is this the only change (in the bootloader) I have to
make that all data accesses are 16bit wide?

> Btw. We did some performance tests with 16 bit bus-width (DDR2 memory)
> and surprisingly performance was almost as good as 32 bit bus-width

This is exactly our intention to test. Thanks for that hint. Very good
to
know!

Thank you.

Best regards
Frank



More information about the Linuxppc-dev mailing list