Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[media] redrat3: ensure dma is setup properly

This fixes the driver on arm.

Reported-by: Steven Guitton <keltiek@gmail.com>
Tested-by: Steven Guitton <keltiek@gmail.com>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>

authored by

Sean Young and committed by
Mauro Carvalho Chehab
d0a0a65e ddc0085e

+3 -1
+3 -1
drivers/media/rc/redrat3.c
··· 966 966 967 967 rr3->ep_in = ep_in; 968 968 rr3->bulk_in_buf = usb_alloc_coherent(udev, 969 - le16_to_cpu(ep_in->wMaxPacketSize), GFP_ATOMIC, &rr3->dma_in); 969 + le16_to_cpu(ep_in->wMaxPacketSize), GFP_KERNEL, &rr3->dma_in); 970 970 if (!rr3->bulk_in_buf) { 971 971 dev_err(dev, "Read buffer allocation failure\n"); 972 972 goto error; ··· 975 975 pipe = usb_rcvbulkpipe(udev, ep_in->bEndpointAddress); 976 976 usb_fill_bulk_urb(rr3->read_urb, udev, pipe, rr3->bulk_in_buf, 977 977 le16_to_cpu(ep_in->wMaxPacketSize), redrat3_handle_async, rr3); 978 + rr3->read_urb->transfer_dma = rr3->dma_in; 979 + rr3->read_urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP; 978 980 979 981 rr3->ep_out = ep_out; 980 982 rr3->udev = udev;