diff --git a/drivers/mmc/host/s3cmci.c b/drivers/mmc/host/s3cmci.c index a33a7823c265..0ca6f6d30b75 100644 --- a/drivers/mmc/host/s3cmci.c +++ b/drivers/mmc/host/s3cmci.c @@ -540,9 +540,9 @@ static void do_pio_write(struct s3cmci_host *host) enable_imask(host, S3C2410_SDIIMSK_TXFIFOHALF); } -static void pio_tasklet(unsigned long data) +static void pio_tasklet(struct tasklet_struct *t) { - struct s3cmci_host *host = (struct s3cmci_host *) data; + struct s3cmci_host *host = from_tasklet(host, t, pio_tasklet); s3cmci_disable_irq(host, true); @@ -1532,7 +1532,7 @@ static int s3cmci_probe(struct platform_device *pdev) host->pdata = pdev->dev.platform_data; spin_lock_init(&host->complete_lock); - tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host); + tasklet_setup(&host->pio_tasklet, pio_tasklet); if (host->is2440) { host->sdiimsk = S3C2440_SDIIMSK;