diff options
author | Antti Palosaari | 2012-06-15 05:52:42 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab | 2012-08-04 12:56:33 +0200 |
commit | ad2618393168a72f079265023ddc68f2a89ccc9f (patch) | |
tree | 2c5e44ec71f0b8d2ffc86159672da9e500de4f24 /drivers/media/dvb/dvb-usb/dvb_usb_init.c | |
parent | [media] dvb_usb_v2: try to remove all adapters on exit (diff) | |
download | kernel-qcow2-linux-ad2618393168a72f079265023ddc68f2a89ccc9f.tar.gz kernel-qcow2-linux-ad2618393168a72f079265023ddc68f2a89ccc9f.tar.xz kernel-qcow2-linux-ad2618393168a72f079265023ddc68f2a89ccc9f.zip |
[media] dvb_usb_v2: simplify remote init/exit logic
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dvb_usb_init.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb_usb_init.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb_init.c b/drivers/media/dvb/dvb-usb/dvb_usb_init.c index cea334331508..5da4233501f0 100644 --- a/drivers/media/dvb/dvb-usb/dvb_usb_init.c +++ b/drivers/media/dvb/dvb-usb/dvb_usb_init.c @@ -137,6 +137,8 @@ static int dvb_usbv2_remote_init(struct dvb_usb_device *d) int ret; struct rc_dev *dev; + pr_debug("%s:\n", __func__); + if (dvb_usbv2_disable_rc_polling || !d->props->get_rc_config) return 0; @@ -190,8 +192,6 @@ static int dvb_usbv2_remote_init(struct dvb_usb_device *d) msecs_to_jiffies(d->rc.interval)); } - d->state |= DVB_USB_STATE_REMOTE; - return 0; err: pr_debug("%s: failed=%d\n", __func__, ret); @@ -200,13 +200,14 @@ err: static int dvb_usbv2_remote_exit(struct dvb_usb_device *d) { - if (d->state & DVB_USB_STATE_REMOTE) { + pr_debug("%s:\n", __func__); + + if (d->rc_dev) { cancel_delayed_work_sync(&d->rc_query_work); rc_unregister_device(d->rc_dev); + d->rc_dev = NULL; } - d->state &= ~DVB_USB_STATE_REMOTE; - return 0; } |