hc
2024-01-04 1543e317f1da31b75942316931e8f491a8920811
kernel/drivers/dma/sirf-dma.c
....@@ -1,9 +1,8 @@
1
+// SPDX-License-Identifier: GPL-2.0-or-later
12 /*
23 * DMA controller driver for CSR SiRFprimaII
34 *
45 * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company.
5
- *
6
- * Licensed under GPLv2 or later.
76 */
87
98 #include <linux/module.h>
....@@ -394,9 +393,9 @@
394393 }
395394
396395 /* DMA Tasklet */
397
-static void sirfsoc_dma_tasklet(unsigned long data)
396
+static void sirfsoc_dma_tasklet(struct tasklet_struct *t)
398397 {
399
- struct sirfsoc_dma *sdma = (void *)data;
398
+ struct sirfsoc_dma *sdma = from_tasklet(sdma, t, tasklet);
400399
401400 sirfsoc_dma_process_completed(sdma);
402401 }
....@@ -939,7 +938,7 @@
939938 list_add_tail(&schan->chan.device_node, &dma->channels);
940939 }
941940
942
- tasklet_init(&sdma->tasklet, sirfsoc_dma_tasklet, (unsigned long)sdma);
941
+ tasklet_setup(&sdma->tasklet, sirfsoc_dma_tasklet);
943942
944943 /* Register DMA engine */
945944 dev_set_drvdata(dev, sdma);