| From 04471eb8c3158c0ad9df4b24da845a63b2e8f23a Mon Sep 17 00:00:00 2001 |
| From: Bin Liu <b-liu@ti.com> |
| Date: Tue, 31 May 2016 10:05:25 -0500 |
| Subject: usb: musb: host: correct cppi dma channel for isoch transfer |
| |
| From: Bin Liu <b-liu@ti.com> |
| |
| commit 04471eb8c3158c0ad9df4b24da845a63b2e8f23a upstream. |
| |
| Incorrect cppi dma channel is referenced in musb_rx_dma_iso_cppi41(), |
| which causes kernel NULL pointer reference oops later when calling |
| cppi41_dma_channel_program(). |
| |
| Fixes: 069a3fd (usb: musb: Remove ifdefs for musb_host_rx in musb_host.c |
| part1) |
| |
| Reported-by: Matwey V. Kornilov <matwey@sai.msu.ru> |
| Acked-by: Tony Lindgren <tony@atomide.com> |
| Signed-off-by: Bin Liu <b-liu@ti.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/usb/musb/musb_host.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/usb/musb/musb_host.c |
| +++ b/drivers/usb/musb/musb_host.c |
| @@ -1556,7 +1556,7 @@ static int musb_rx_dma_iso_cppi41(struct |
| struct urb *urb, |
| size_t len) |
| { |
| - struct dma_channel *channel = hw_ep->tx_channel; |
| + struct dma_channel *channel = hw_ep->rx_channel; |
| void __iomem *epio = hw_ep->regs; |
| dma_addr_t *buf; |
| u32 length, res; |