|
@@ -86,11 +86,6 @@ static void set_desc_cnt(struct fsldma_chan *chan,
|
|
|
hw->count = CPU_TO_DMA(chan, count, 32);
|
|
|
}
|
|
|
|
|
|
-static u32 get_desc_cnt(struct fsldma_chan *chan, struct fsl_desc_sw *desc)
|
|
|
-{
|
|
|
- return DMA_TO_CPU(chan, desc->hw.count, 32);
|
|
|
-}
|
|
|
-
|
|
|
static void set_desc_src(struct fsldma_chan *chan,
|
|
|
struct fsl_dma_ld_hw *hw, dma_addr_t src)
|
|
|
{
|
|
@@ -101,16 +96,6 @@ static void set_desc_src(struct fsldma_chan *chan,
|
|
|
hw->src_addr = CPU_TO_DMA(chan, snoop_bits | src, 64);
|
|
|
}
|
|
|
|
|
|
-static dma_addr_t get_desc_src(struct fsldma_chan *chan,
|
|
|
- struct fsl_desc_sw *desc)
|
|
|
-{
|
|
|
- u64 snoop_bits;
|
|
|
-
|
|
|
- snoop_bits = ((chan->feature & FSL_DMA_IP_MASK) == FSL_DMA_IP_85XX)
|
|
|
- ? ((u64)FSL_DMA_SATR_SREADTYPE_SNOOP_READ << 32) : 0;
|
|
|
- return DMA_TO_CPU(chan, desc->hw.src_addr, 64) & ~snoop_bits;
|
|
|
-}
|
|
|
-
|
|
|
static void set_desc_dst(struct fsldma_chan *chan,
|
|
|
struct fsl_dma_ld_hw *hw, dma_addr_t dst)
|
|
|
{
|
|
@@ -121,16 +106,6 @@ static void set_desc_dst(struct fsldma_chan *chan,
|
|
|
hw->dst_addr = CPU_TO_DMA(chan, snoop_bits | dst, 64);
|
|
|
}
|
|
|
|
|
|
-static dma_addr_t get_desc_dst(struct fsldma_chan *chan,
|
|
|
- struct fsl_desc_sw *desc)
|
|
|
-{
|
|
|
- u64 snoop_bits;
|
|
|
-
|
|
|
- snoop_bits = ((chan->feature & FSL_DMA_IP_MASK) == FSL_DMA_IP_85XX)
|
|
|
- ? ((u64)FSL_DMA_DATR_DWRITETYPE_SNOOP_WRITE << 32) : 0;
|
|
|
- return DMA_TO_CPU(chan, desc->hw.dst_addr, 64) & ~snoop_bits;
|
|
|
-}
|
|
|
-
|
|
|
static void set_desc_next(struct fsldma_chan *chan,
|
|
|
struct fsl_dma_ld_hw *hw, dma_addr_t next)
|
|
|
{
|
|
@@ -408,7 +383,7 @@ static dma_cookie_t fsl_dma_tx_submit(struct dma_async_tx_descriptor *tx)
|
|
|
struct fsl_desc_sw *desc = tx_to_fsl_desc(tx);
|
|
|
struct fsl_desc_sw *child;
|
|
|
unsigned long flags;
|
|
|
- dma_cookie_t cookie;
|
|
|
+ dma_cookie_t cookie = -EINVAL;
|
|
|
|
|
|
spin_lock_irqsave(&chan->desc_lock, flags);
|
|
|
|
|
@@ -854,10 +829,6 @@ static void fsldma_cleanup_descriptor(struct fsldma_chan *chan,
|
|
|
struct fsl_desc_sw *desc)
|
|
|
{
|
|
|
struct dma_async_tx_descriptor *txd = &desc->async_tx;
|
|
|
- struct device *dev = chan->common.device->dev;
|
|
|
- dma_addr_t src = get_desc_src(chan, desc);
|
|
|
- dma_addr_t dst = get_desc_dst(chan, desc);
|
|
|
- u32 len = get_desc_cnt(chan, desc);
|
|
|
|
|
|
/* Run the link descriptor callback function */
|
|
|
if (txd->callback) {
|