This is an automatic generated email to let you know that the following patch were queued at the http://git.linuxtv.org/media_tree.git tree: Subject: [media] em28xx-dvb: fix PCTV 461e tuner I2C binding Author: Antti Palosaari <crope@xxxxxx> Date: Wed Feb 12 14:59:37 2014 -0300 Add missing m88ts2022 module reference counts as removing that module is not allowed when it is used by em28xx-dvb module. That same module was not unregistered correctly, fix it too. Error cases validated by returning errors from m88ds3103, m88ts2022 and a8293 probe(). Signed-off-by: Antti Palosaari <crope@xxxxxx> Cc: stable@xxxxxxxxxxxxxxx Signed-off-by: Mauro Carvalho Chehab <m.chehab@xxxxxxxxxxx> drivers/media/usb/em28xx/em28xx-dvb.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) --- http://git.linuxtv.org/media_tree.git?a=commitdiff;h=84bc08734bb2735aa7cac30d3250e07031dac503 diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c index 9b3f033..ecf1d91 100644 --- a/drivers/media/usb/em28xx/em28xx-dvb.c +++ b/drivers/media/usb/em28xx/em28xx-dvb.c @@ -1629,6 +1629,7 @@ static int em28xx_dvb_resume(struct em28xx *dev) em28xx_info("Resuming DVB extension"); if (dev->dvb) { + struct i2c_client *client = dvb->i2c_client_tuner; struct em28xx_dvb *dvb = dev->dvb; if (dvb->fe[0]) { @@ -1640,6 +1641,15 @@ static int em28xx_dvb_resume(struct em28xx *dev) ret = dvb_frontend_resume(dvb->fe[1]); em28xx_info("fe1 resume %d", ret); } + /* remove I2C tuner */ + if (client) { + module_put(client->dev.driver->owner); + i2c_unregister_device(client); + } + + em28xx_unregister_dvb(dvb); + kfree(dvb); + dev->dvb = NULL; } return 0; -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html