From: Allen Pais <allen.lkml@xxxxxxxxx> In preparation for unconditionally passing the struct tasklet_struct pointer to all tasklet callbacks, switch to using the new tasklet_setup() and from_tasklet() to pass the tasklet pointer explicitly. Signed-off-by: Romain Perier <romain.perier@xxxxxxxxx> Signed-off-by: Allen Pais <allen.lkml@xxxxxxxxx> --- drivers/tty/serial/ifx6x60.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/tty/serial/ifx6x60.c b/drivers/tty/serial/ifx6x60.c index 7d16fe41932f..37d5b8516880 100644 --- a/drivers/tty/serial/ifx6x60.c +++ b/drivers/tty/serial/ifx6x60.c @@ -725,10 +725,11 @@ static void ifx_spi_complete(void *ctx) * Queue data for transmission if possible and then kick off the * transfer. */ -static void ifx_spi_io(unsigned long data) +static void ifx_spi_io(struct tasklet_struct *t) { int retval; - struct ifx_spi_device *ifx_dev = (struct ifx_spi_device *) data; + struct ifx_spi_device *ifx_dev = from_tasklet(ifx_dev, t, + io_work_tasklet); if (!test_and_set_bit(IFX_SPI_STATE_IO_IN_PROGRESS, &ifx_dev->flags) && test_bit(IFX_SPI_STATE_IO_AVAILABLE, &ifx_dev->flags)) { @@ -1067,8 +1068,7 @@ static int ifx_spi_spi_probe(struct spi_device *spi) init_waitqueue_head(&ifx_dev->mdm_reset_wait); spi_set_drvdata(spi, ifx_dev); - tasklet_init(&ifx_dev->io_work_tasklet, ifx_spi_io, - (unsigned long)ifx_dev); + tasklet_setup(&ifx_dev->io_work_tasklet, ifx_spi_io); set_bit(IFX_SPI_STATE_PRESENT, &ifx_dev->flags); -- 2.17.1