Input: tsc2005 - clear driver data after unbinding

We should not leave garbage pointers in driver structure after we unbind
it from the device or if bind fails.

Tested-by: Aaro Koskinen <aaro.koskinen@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
This commit is contained in:
Dmitry Torokhov 2011-03-16 22:09:09 -07:00
parent b88aa494c2
commit 2721a89ac4

View File

@ -634,8 +634,10 @@ static int __devinit tsc2005_probe(struct spi_device *spi)
spi_setup(spi); spi_setup(spi);
r = tsc2005_setup(ts, pdata); r = tsc2005_setup(ts, pdata);
if (r) if (r) {
kfree(ts); kfree(ts);
spi_set_drvdata(spi, NULL);
}
return r; return r;
} }
@ -659,6 +661,7 @@ static int __devexit tsc2005_remove(struct spi_device *spi)
input_unregister_device(ts->idev); input_unregister_device(ts->idev);
kfree(ts); kfree(ts);
spi_set_drvdata(spi, NULL);
return 0; return 0;
} }