forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-09 95099d4622f8cb224d94e314c7a8e0df60b13f87
kernel/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c
....@@ -636,13 +636,9 @@
636636
637637 vchan_get_all_descriptors(&chan->vc, &head);
638638
639
- /*
640
- * As vchan_dma_desc_free_list can access to desc_allocated list
641
- * we need to call it in vc.lock context.
642
- */
643
- vchan_dma_desc_free_list(&chan->vc, &head);
644
-
645639 spin_unlock_irqrestore(&chan->vc.lock, flags);
640
+
641
+ vchan_dma_desc_free_list(&chan->vc, &head);
646642
647643 dev_vdbg(dchan2dev(dchan), "terminated: %s\n", axi_chan_name(chan));
648644
....@@ -935,7 +931,7 @@
935931
936932 pm_runtime_put(chip->dev);
937933
938
- ret = dma_async_device_register(&dw->dma);
934
+ ret = dmaenginem_async_device_register(&dw->dma);
939935 if (ret)
940936 goto err_pm_disable;
941937
....@@ -977,8 +973,6 @@
977973 list_del(&chan->vc.chan.device_node);
978974 tasklet_kill(&chan->vc.task);
979975 }
980
-
981
- dma_async_device_unregister(&dw->dma);
982976
983977 return 0;
984978 }