Loading drivers/dma/iop-adma.c +10 −9 Original line number Original line Diff line number Diff line Loading @@ -61,17 +61,18 @@ static dma_cookie_t iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, struct iop_adma_chan *iop_chan, dma_cookie_t cookie) struct iop_adma_chan *iop_chan, dma_cookie_t cookie) { { BUG_ON(desc->async_tx.cookie < 0); struct dma_async_tx_descriptor *tx = &desc->async_tx; if (desc->async_tx.cookie > 0) { cookie = desc->async_tx.cookie; BUG_ON(tx->cookie < 0); desc->async_tx.cookie = 0; if (tx->cookie > 0) { cookie = tx->cookie; tx->cookie = 0; /* call the callback (must not sleep or submit new /* call the callback (must not sleep or submit new * operations to this channel) * operations to this channel) */ */ if (desc->async_tx.callback) if (tx->callback) desc->async_tx.callback( tx->callback(tx->callback_param); desc->async_tx.callback_param); /* unmap dma addresses /* unmap dma addresses * (unmap_single vs unmap_page?) * (unmap_single vs unmap_page?) Loading @@ -81,7 +82,7 @@ iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, struct device *dev = struct device *dev = &iop_chan->device->pdev->dev; &iop_chan->device->pdev->dev; u32 len = unmap->unmap_len; u32 len = unmap->unmap_len; enum dma_ctrl_flags flags = desc->async_tx.flags; enum dma_ctrl_flags flags = tx->flags; u32 src_cnt; u32 src_cnt; dma_addr_t addr; dma_addr_t addr; dma_addr_t dest; dma_addr_t dest; Loading Loading @@ -115,7 +116,7 @@ iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, } } /* run dependent operations */ /* run dependent operations */ dma_run_dependencies(&desc->async_tx); dma_run_dependencies(tx); return cookie; return cookie; } } Loading Loading
drivers/dma/iop-adma.c +10 −9 Original line number Original line Diff line number Diff line Loading @@ -61,17 +61,18 @@ static dma_cookie_t iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, struct iop_adma_chan *iop_chan, dma_cookie_t cookie) struct iop_adma_chan *iop_chan, dma_cookie_t cookie) { { BUG_ON(desc->async_tx.cookie < 0); struct dma_async_tx_descriptor *tx = &desc->async_tx; if (desc->async_tx.cookie > 0) { cookie = desc->async_tx.cookie; BUG_ON(tx->cookie < 0); desc->async_tx.cookie = 0; if (tx->cookie > 0) { cookie = tx->cookie; tx->cookie = 0; /* call the callback (must not sleep or submit new /* call the callback (must not sleep or submit new * operations to this channel) * operations to this channel) */ */ if (desc->async_tx.callback) if (tx->callback) desc->async_tx.callback( tx->callback(tx->callback_param); desc->async_tx.callback_param); /* unmap dma addresses /* unmap dma addresses * (unmap_single vs unmap_page?) * (unmap_single vs unmap_page?) Loading @@ -81,7 +82,7 @@ iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, struct device *dev = struct device *dev = &iop_chan->device->pdev->dev; &iop_chan->device->pdev->dev; u32 len = unmap->unmap_len; u32 len = unmap->unmap_len; enum dma_ctrl_flags flags = desc->async_tx.flags; enum dma_ctrl_flags flags = tx->flags; u32 src_cnt; u32 src_cnt; dma_addr_t addr; dma_addr_t addr; dma_addr_t dest; dma_addr_t dest; Loading Loading @@ -115,7 +116,7 @@ iop_adma_run_tx_complete_actions(struct iop_adma_desc_slot *desc, } } /* run dependent operations */ /* run dependent operations */ dma_run_dependencies(&desc->async_tx); dma_run_dependencies(tx); return cookie; return cookie; } } Loading