summaryrefslogtreecommitdiffstats
path: root/sound/core
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-03-30 22:48:54 -0400
committerFelipe Balbi <balbi@ti.com>2011-04-13 11:51:28 +0300
commit132543074af3cf1e94e3608abf162880edbdcbb3 (patch)
tree498abf639ee20de505593f776756d40fdcbe9d1c /sound/core
parent4f9edd2d7e8dd170d10780532cb76eb5890468b4 (diff)
USB: musb: blackfin: work around anomaly 05000450
DMA mode 1 data corruption anomaly on Blackfin systems. This issue is specific to the Blackfin silicon as the bug appears to be related to the connection of the musb ip to the bus/dma fabric. Data corruption when using USB DMA mode 1. (Issue manager 17-01-0105) DMA mode 1 allows large size transfers to generate a single interrupt at the end of the entire transfer. The transfer is split up in packets of length specified in the Maximum Packet Size field for that endpoint. If the transfer size is not an integer multiple of the Maximum Packet Size, a short packet will be present at the end of the transfer. Under certain conditions this packet may be corrupted in the USB FIFO. Workaround: Use DMA mode 1 to transfer (n* Maximum Packet Size) and schedule DMA mode 0 to transfer the short packet. As an example if your transfer size is 33168 bytes and Maximum Packet Size equals 512, schedule [33168 - (33168 mod 512)] in DMA mode 1 and the remainder (33168 mod 512) in DMA mode 0. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'sound/core')
0 files changed, 0 insertions, 0 deletions