[PATCH] usb: fsl_udc: errata - postpone freeing current dTD
Chen Peter-B29397
B29397 at freescale.com
Mon May 21 11:05:24 EST 2012
>
> USB controller may access a wrong address for the dTD (endpoint transfer
> descriptor) and then hang. This happens a lot when doing tests with
> g_ether module and iperf, a tool for measuring maximum TCP and UDP
> bandwidth.
>
> This hardware bug is explained in detail by errata number 2858 for i.MX23:
> http://cache.freescale.com/files/dsp/doc/errata/IMX23CE.pdf
>
Does this patch fix your problem?
> +#if defined CONFIG_ARCH_MX51 || defined CONFIG_SOC_IMX35
> +#define POSTPONE_FREE_LAST_DTD
> +#else
> +#undef POSTPONE_FREE_LAST_DTD
> +#endif
> +
All i.mx SoC has this problem, if PowerPC also has this problem, you can
delete #if defined. Else, you can define it for all i.mx SoC
(CONFIG_ARCH_MXC | CONFIG_ARCH_MXS)
> /* ### define USB registers here
> */
> #define USB_MAX_CTRL_PAYLOAD 64
> --
> 1.7.2.5
>
>
More information about the Linuxppc-dev
mailing list