Re: Ethernet fails on MPC5200 based target
From: Sylvain Munaut <hidden>
Date: 2007-01-16 12:01:03
Andrea Galbusera wrote:
quoted
Maybe some things (like xlb pipelining, cache snooping, ...) is not properly setup in you platform support code ?Following your suggestion, I started from here... Comparing the unaffected kernel (from DENX) with yours I tryed commenting out the following in mpc52xx_setup_cpu() : /* Disable XLB pipelining */ /* (cfr errate 292. We could do this only just before ATA PIO transaction and re-enable it after ...) */ out_be32(&xlb->config, in_be32(&xlb->config) | MPC52xx_XLB_CFG_PLDIS); In fact this gives much better results, but does not completely solve the problem. Network packets corruption seems to be gone, but, after massive pinging (about 1k ping packets) it comes back with about the same frequency as before the change.
And does the problem also appears on the denx kernel after 1k ping packets ? Are the fec driver the same ? Are the fec task code the same ? (in bestcomm/fec.c )
I can't figure out what is the impact of keeping XLB pipelining enabled on the eth behavior. I'm sharing this results in the hope someone have any other valuable suggestion
Well me neither, it should only affect performance, not create
corruption ...
AFAI understand it anyway.
Sylvain