Add support for DVB SEC (satellite equipment controller) I2C client.

Signed-off-by: Antti Palosaari <cr...@iki.fi>
---
 drivers/media/usb/em28xx/em28xx-dvb.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c 
b/drivers/media/usb/em28xx/em28xx-dvb.c
index 5b7c7c88..ef1bfa2 100644
--- a/drivers/media/usb/em28xx/em28xx-dvb.c
+++ b/drivers/media/usb/em28xx/em28xx-dvb.c
@@ -96,6 +96,7 @@ struct em28xx_dvb {
        int                     lna_gpio;
        struct i2c_client       *i2c_client_demod;
        struct i2c_client       *i2c_client_tuner;
+       struct i2c_client       *i2c_client_sec;
 };
 
 static inline void print_err_status(struct em28xx *dev,
@@ -1729,7 +1730,6 @@ static int em28xx_dvb_fini(struct em28xx *dev)
        em28xx_info("Closing DVB extension\n");
 
        dvb = dev->dvb;
-       client = dvb->i2c_client_tuner;
 
        em28xx_uninit_usb_xfer(dev, EM28XX_DIGITAL_MODE);
 
@@ -1746,7 +1746,15 @@ static int em28xx_dvb_fini(struct em28xx *dev)
                }
        }
 
+       /* remove I2C SEC */
+       client = dvb->i2c_client_sec;
+       if (client) {
+               module_put(client->dev.driver->owner);
+               i2c_unregister_device(client);
+       }
+
        /* remove I2C tuner */
+       client = dvb->i2c_client_tuner;
        if (client) {
                module_put(client->dev.driver->owner);
                i2c_unregister_device(client);
-- 
http://palosaari.fi/

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to