提交 ecde6cd4 编写于 作者: T Thomas Petazzoni

dma: mv_xor: get rid of the pdev pointer in mv_xor_device

It was only used in places where we could get the 'struct device *'
pointer through a different way.
Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
上级 c98c1781
...@@ -308,8 +308,7 @@ mv_xor_run_tx_complete_actions(struct mv_xor_desc_slot *desc, ...@@ -308,8 +308,7 @@ mv_xor_run_tx_complete_actions(struct mv_xor_desc_slot *desc,
*/ */
if (desc->group_head && desc->unmap_len) { if (desc->group_head && desc->unmap_len) {
struct mv_xor_desc_slot *unmap = desc->group_head; struct mv_xor_desc_slot *unmap = desc->group_head;
struct device *dev = struct device *dev = mv_chan_to_devp(mv_chan);
&mv_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 = desc->async_tx.flags;
u32 src_cnt; u32 src_cnt;
...@@ -1077,10 +1076,11 @@ static int mv_xor_channel_remove(struct mv_xor_device *device) ...@@ -1077,10 +1076,11 @@ static int mv_xor_channel_remove(struct mv_xor_device *device)
{ {
struct dma_chan *chan, *_chan; struct dma_chan *chan, *_chan;
struct mv_xor_chan *mv_chan; struct mv_xor_chan *mv_chan;
struct device *dev = device->common.dev;
dma_async_device_unregister(&device->common); dma_async_device_unregister(&device->common);
dma_free_coherent(&device->pdev->dev, device->pool_size, dma_free_coherent(dev, device->pool_size,
device->dma_desc_pool_virt, device->dma_desc_pool); device->dma_desc_pool_virt, device->dma_desc_pool);
list_for_each_entry_safe(chan, _chan, &device->common.channels, list_for_each_entry_safe(chan, _chan, &device->common.channels,
...@@ -1123,7 +1123,6 @@ mv_xor_channel_add(struct mv_xor_private *msp, ...@@ -1123,7 +1123,6 @@ mv_xor_channel_add(struct mv_xor_private *msp,
/* discover transaction capabilites from the platform data */ /* discover transaction capabilites from the platform data */
dma_dev->cap_mask = cap_mask; dma_dev->cap_mask = cap_mask;
adev->pdev = pdev;
adev->shared = msp; adev->shared = msp;
INIT_LIST_HEAD(&dma_dev->channels); INIT_LIST_HEAD(&dma_dev->channels);
...@@ -1208,7 +1207,7 @@ mv_xor_channel_add(struct mv_xor_private *msp, ...@@ -1208,7 +1207,7 @@ mv_xor_channel_add(struct mv_xor_private *msp,
return adev; return adev;
err_free_dma: err_free_dma:
dma_free_coherent(&adev->pdev->dev, pool_size, dma_free_coherent(&pdev->dev, pool_size,
adev->dma_desc_pool_virt, adev->dma_desc_pool); adev->dma_desc_pool_virt, adev->dma_desc_pool);
return ERR_PTR(ret); return ERR_PTR(ret);
} }
......
...@@ -70,7 +70,6 @@ struct mv_xor_private { ...@@ -70,7 +70,6 @@ struct mv_xor_private {
* @common: embedded struct dma_device * @common: embedded struct dma_device
*/ */
struct mv_xor_device { struct mv_xor_device {
struct platform_device *pdev;
dma_addr_t dma_desc_pool; dma_addr_t dma_desc_pool;
void *dma_desc_pool_virt; void *dma_desc_pool_virt;
size_t pool_size; size_t pool_size;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册