V4L/DVB (11142): au0828: fix oops on ARM platform when allocating transfer buffers
Add missing URB_NO_TRANSFER_DMA_MAP flag, since the use of consistent memory is not permitted for DMA on the ARM platform. Thanks to Paul Thomas <pthomas8589@gmail.com> for providing sample ARM hardware that was experiencing the oops (tested on the at91rm9200 based LinuxStamp). Thanks to David Brownell <david-b@pacbell.net> for providing insight into the ARM memory architecture. Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Родитель
9a4f8201a5
Коммит
fadadb7d7a
|
@ -267,7 +267,7 @@ int au0828_init_isoc(struct au0828_dev *dev, int max_packets,
|
||||||
au0828_irq_callback, dma_q, 1);
|
au0828_irq_callback, dma_q, 1);
|
||||||
|
|
||||||
urb->number_of_packets = max_packets;
|
urb->number_of_packets = max_packets;
|
||||||
urb->transfer_flags = URB_ISO_ASAP;
|
urb->transfer_flags = URB_ISO_ASAP | URB_NO_TRANSFER_DMA_MAP;
|
||||||
|
|
||||||
k = 0;
|
k = 0;
|
||||||
for (j = 0; j < max_packets; j++) {
|
for (j = 0; j < max_packets; j++) {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче