Messages in this thread Patch in this message |  | | | Date | Mon, 09 Mar 2009 18:21:36 +0200 | | From | Mikhail Zolotaryov <> | | Subject | [PATCH] powerpc 4xx: DDR0_14[REDUC] decoded incorrectly |
| |
Hi,
according to the PPC440EPx Embedded Processor User Manual (rev 1.14) DDR0_14[REDUC] bit has the following meaning:
REDUC - Enable the half data path feature of the controller 0 = Standard operation using full 64/72-bit memory bus 1 = Memory data path width is 32/40 bits
However, "1" is decoded as 64 bit (8 byte), "0" - as 32 bit (4 byte) bus by the kernel code. My understanding is this is not correct - patch attached.
--- linux.orig/arch/powerpc/boot/4xx.c 2009-03-09 17:55:01.000000000 +0200 +++ linux/arch/powerpc/boot/4xx.c 2009-03-09 17:58:07.000000000 +0200 @@ -193,9 +193,9 @@ val = SDRAM0_READ(DDR0_14); if (DDR_GET_VAL(val, DDR_REDUC, DDR_REDUC_SHIFT)) - dpath = 8; /* 64 bits */ - else dpath = 4; /* 32 bits */ + else + dpath = 8; /* 64 bits */ /* get address pins (rows) */ val = SDRAM0_READ(DDR0_42); |  |