Inconsistent accesses to SDRAM on a PCI card

From: Amit Shah
Date: Thu Aug 26 2004 - 17:03:30 EST


Hi all,

I have a custom board that has the Marvell 64360 bridge. It has a powerpc
750GX processor on it and 256MB of SDRAM.

I wrote a host driver that could access the RAM via a /dev interface (I'm
using kernel 2.6.6 on the host). I can read / write from the device to the
sdram on the board. I also have u-boot running on the board, so I can
read / write from / to SDRAM on the board via u-boot. Basically, I can dump
a Linux kernel to the board via the host PCI interface and jump to the
kernel on the board via u-boot.

This worked fine while I worked with this setup on an IBM pserver machine.
However, when I switched to a locally assembled machine based on the intel
SE7210TP1-E [1] chipset, u-boot's and PCI's view of SDRAM on the board
changed completely.

If I dump the kernel to an offset of 5 MB on the board via the PCI
interface, u-boot doesn't see it. The contents before and after dumping the
kernel remain the same. Ditto over the PCI interface. If I do any writes
via u-boot to the SDRAM, the PCI can't see the newly written contents.

This is very strange, I couldn't find an answer anywhere in the BIOS
settings or any kernel settings. Since the kernel, u-boot, host tools, etc,
haven't changed, and it's just the machine that has changed, I'm guessing
it's the PCI interface or the BIOS initializations that are causing some
funny things to happen.

Any clue why this should be happening?

Thanks,
Amit.


[1] http://www.intel.com/design/servers/boards/SE7210TP1-E/
--
Amit Shah
http://amitshah.nav.to/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/