Hi,
it looks like a memory interface problem. This is a typical issue with
FPGA-based PPC systems.
You should check/monitor carefully the hardware :
- power supplies
- memory controller configuration (RAS, CAS, banks...)
- timing of pins connected to external memory
Prior to boot a linux kernel, you should test your board with an
exhaustive standalone test program running from internal BRAM. In
particular, you should run an intensive test of your external memory
with cache enabled. Cache must be configured in copy back mode and test
code must be written so that it causes a lot of cache misses.
Hope this helps.
Manu
Le 31/12/2011 05:15, Wang, Junhua H. (NSN - CN/Hangzhou) a écrit :
HI, all:
Sorry to disturb all of you in the linuxppc-dev mail group. I am a new
member from linuxppc-dev from China, and I have a very weird problem,
it have been bothering me for a long time. I will be very grateful if
you can help me to analyse it.
1) Problem description:
a) FRIU(a circuit board) unit is a ppc(powerpc) unit, 256 M bytes Ram,
bootloader is uboot, kernel linux-2.6.21 filesystem: initramfs
The main problem is that when kernel start up and mount initramfs, run
the init process(pid 1), when the process(init) write file(20 M bytes)
to filesystem(initramfs),
sometimes it will find some data modified when check the file's
contents by read it.
b) I have write a test init process which will write 20 Mbytes
data(0xFF) to "/TEST0.IMG" and check it's contents. Sometimes, the
contents will by modified.
c) Here is the test procedure:
Uboot download linux kernel and initramfs --> cmd "bootm" to start
linux -->after kernel start complete, mount initramfs, run init
process(pid 1)
--> It will write 20 Mbytes data(0XFF) to 'TEST0.IMG' and check it's
contents, If there is error, the error data will be printed.
2) Error data:
a) Every time the error happened, a pair of data modified:
first place: 1C 00 FF FF FF FF FF FF 00 00 00 040 80 ...
Second place:FF FF FF FF FF FF 00 A0 ....
Sometimes, there will be 2 pair of data modified.
b) The error happens not very often, but it happens sometime.
3)
Could you give me some advice on how to investigate it or which part
you think will have problem?
Thanks very much!
Usedkernel: linux-2.6.21<<init process write_read file(20Mbytes)
error2.txt>> <<init process write_read file(20Mbytes) error.txt>>
Br,
Wang Junhua
*Wang Junhua (Jonny)*//
/-----------------------------------------/
/LINDX/
/DX 200 R&D HZ Area E /
/MP: +8615967154143/
/Seat:4076/
_______________________________________________
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