[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
On 26/06/12 11:39, lryylryylryy wrote: > Hi, > > I'm using redboot to launch ecos application,but I found that loading file > via tftp lags randomly. I traced in, and found the root cause is that UDP > checksum error. I assume you mean when receiving packets, rather than when sending ACKs. > My platform is STM32 with DM9000. The ecos package version is original > V3.0. I adapted the bus timing, DM9000 works fine. > > Who encounter the same problem? I haven't noticed any problem with TFTP in RedBoot before in general. Assuming the host resends and you receive it correctly, I'd suggest editing redboot/v3_0/src/net/udp.c:__udp_handler, and saving the erroneous packet, and then in tftp_client.c, when acking a packet, check its block number, and if it matches one saved in udp_handler, then save the correct form of the packet. Comparing the two saved packets will give you an idea where the corruption is occurring - at the beginning, end or just randomly anywhere. That may give you a better idea of where to look for a problem. Alternatively to avoid the hassle of dealing with TFTP, you could instead look at using the 'ping' command. Set it to a higher rate using -r (I think the units are milliseconds) and a large -n, and then use ping to see how reliable things are there. Personally I suspect some sort of hardware noise issues in the lines connecting the STM32 with the DM9000. Jifl -- eCosCentric Limited http://www.eCosCentric.com/ The eCos experts Barnwell House, Barnwell Drive, Cambridge, UK. Tel: +44 1223 245571 Registered in England and Wales: Reg No 4422071. ------["Si fractum non sit, noli id reficere"]------ Opinions==mine -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss