Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[firefly-linux-kernel-4.4.55.git] / drivers / dma / pl330.c
index bc5878a5c09ec3e05951fee6cb22027950f9408d..d5149aacd2feefdb9a3d516187e6f5b03f084ada 100644 (file)
@@ -1441,9 +1441,14 @@ xfer_exit:
 
 static void dma_pl330_rqcb(struct dma_pl330_desc *desc, enum pl330_op_err err)
 {
-       struct dma_pl330_chan *pch = desc->pchan;
+       struct dma_pl330_chan *pch;
        unsigned long flags;
 
+       if (!desc)
+               return;
+
+       pch = desc->pchan;
+
        /* If desc aborted */
        if (!pch)
                return;
@@ -2357,7 +2362,7 @@ static inline int get_burst_len(struct dma_pl330_desc *desc, size_t len)
 static struct dma_async_tx_descriptor *pl330_prep_dma_cyclic(
                struct dma_chan *chan, dma_addr_t dma_addr, size_t len,
                size_t period_len, enum dma_transfer_direction direction,
-               unsigned long flags, void *context)
+               unsigned long flags)
 {
        struct dma_pl330_desc *desc = NULL, *first = NULL;
        struct dma_pl330_chan *pch = to_pchan(chan);