From: Anton Vorontsov <[email protected]> Date: Wed, 30 Jun 2010 20:39:12 +0400
> MPC8313ECE says: > > "If MACCFG2[Huge Frame]=0 and the Ethernet controller receives frames > which are larger than MAXFRM, the controller truncates the frames to > length MAXFRM and marks RxBD[TR]=1 to indicate the error. The controller > also erroneously marks RxBD[TR]=1 if the received frame length is MAXFRM > or MAXFRM-1, even though those frames are not truncated. > No truncation or truncation error occurs if MACCFG2[Huge Frame]=1." > > There are two options to workaround the issue: > > "1. Set MACCFG2[Huge Frame]=1, so no truncation occurs for invalid large > frames. Software can determine if a frame is larger than MAXFRM by > reading RxBD[LG] or RxBD[Data Length]. > > 2. Set MAXFRM to 1538 (0x602) instead of the default 1536 (0x600), so > normal-length frames are not marked as truncated. Software can examine > RxBD[Data Length] to determine if the frame was larger than MAXFRM-2." > > This patch implements the first workaround option by setting HUGEFRAME > bit, and gfar_clean_rx_ring() already checks the RxBD[Data Length]. > > Signed-off-by: Anton Vorontsov <[email protected]> Applied. _______________________________________________ Linuxppc-dev mailing list [email protected] https://lists.ozlabs.org/listinfo/linuxppc-dev
