@@ -2075,9 +2075,9 @@ static void artpec6_crypto_timeout(struct timer_list *t)
tasklet_schedule(&ac->task);
}
-static void artpec6_crypto_task(unsigned long data)
+static void artpec6_crypto_task(struct tasklet_struct *t)
{
- struct artpec6_crypto *ac = (struct artpec6_crypto *)data;
+ struct artpec6_crypto *ac = from_tasklet(ac, t, task);
struct artpec6_crypto_req_common *req;
struct artpec6_crypto_req_common *n;
struct list_head complete_done;
@@ -2900,8 +2900,7 @@ static int artpec6_crypto_probe(struct platform_device *pdev)
artpec6_crypto_init_debugfs();
#endif
- tasklet_init(&ac->task, artpec6_crypto_task,
- (unsigned long)ac);
+ tasklet_setup(&ac->task, artpec6_crypto_task);
ac->pad_buffer = devm_kzalloc(&pdev->dev, 2 * ARTPEC_CACHE_LINE_MAX,
GFP_KERNEL);