# RE: \[RFC\] \[PATCH\] usb: gadget: fix dtd dma confusion

- From: Chen Peter-B29397 \<hidden\>
- Date: 2012-05-09 02:12:04 
- List: linuxppc-dev
- Page: https://ratatoskr.run/linuxppc-dev/2012/05/9469339
- Thread: https://ratatoskr.run/linuxppc-dev/2012/05/9469338/t.md

```text

=20
> >
> > after a while of testing and searching I can come up with a patch
> > that fixes g_ether <-> iperf for fsl_udc on ARM i.MX35.
> >
> > The sad part is that this kind of fix is already implemented for
> > marvell mv_udc driver since last year but still _not_ in the ~15
> > other *udc.c drivers.
> >
=20
It is a controller limitation (bug?) for chipidea controller when using
dtd list to handle multi-dtds situation. The controller will read dtd's
next pointer after this dtd's active bit has already been cleared.

Freescale has an errata for this problem's description and solution.
http://cache.freescale.com/files/dsp/doc/errata/IMX23CE.pdf
See 2858

BR,
Peter
```
