serial:ifx6x60:Delete SPI timer when shut down port
authorchao bi <chao.bi@intel.com>
Wed, 12 Dec 2012 03:40:56 +0000 (11:40 +0800)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 6 Feb 2013 04:33:34 +0000 (04:33 +0000)
commit 014b9b4ce84281ccb3d723c792bed19815f3571a upstream.

When shut down SPI port, it's possible that MRDY has been asserted and a SPI
timer was activated waiting for SRDY assert, in the case, it needs to delete
this timer.

Signed-off-by: Chen Jun <jun.d.chen@intel.com>
Signed-off-by: channing <chao.bi@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/tty/serial/ifx6x60.c

index 426434e..a6a6777 100644 (file)
@@ -552,6 +552,7 @@ static void ifx_port_shutdown(struct tty_port *port)
                container_of(port, struct ifx_spi_device, tty_port);
 
        mrdy_set_low(ifx_dev);
+       del_timer(&ifx_dev->spi_timer);
        clear_bit(IFX_SPI_STATE_TIMER_PENDING, &ifx_dev->flags);
        tasklet_kill(&ifx_dev->io_work_tasklet);
 }