This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Net crasch on mpc850


> From: Daniel Lidsten [mailto:Daniel.Lidsten@combitechsystems.com]
> Sent: Wednesday, August 07, 2002 2:50 AM
> To: ecos-discuss@sources.redhat.com
> Subject: [ECOS] Net crasch on mpc850
> 
> 
> Hi,
> 
> I am having some net trouble with my mpc850. Every time i 
> download a large amount of data (100-200kb) to the board then 
> it crasches, sometime at the beginning of the download and 
> sometimes later on, but always during download. It is always 
> the same address that gets the TLB miss (0xC800 0000). My 
> first thought was that my buffers was to small so i increased 
> them to be 16 (instead of 4) but it didnt help. It is also 
> very hard to see which function that causes the crasch. At 
> crasch time LR points to a function called "copyin" that is 
> located in "support.c". However, i cannot figure out how to 
> see who called that function.
> 
> A thing worth mentioning is that i have created a section 
> called ioRAM that is noncached and lies outside the ordinary 
> cached RAM area. All ethernet buffers are located on this 
> area. The reason for this is that neighter the serial port or 
> the ethernet driver will work on a area that is cached.
> 
There was a bug in SCC ethernet driver that mistakenly
invalidated data cache for the transmit buffer instead of
flushing it: search for line
	HAL_DCACHE_INVALIDATE(txbd->buffer, txbd->length);
in file devs/eth/powerpc/quicc/current/src/if_quicc.c,
it should be replaced with
	HAL_DCACHE_FLUSH(txbd->buffer, txbd->length);
I'm not sure if this has been fixed in the CVS repository
lately.

The SMC serial driver handles the cache correctly.

-lq

--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]