aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/dvb-usb
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2012-06-14 23:52:42 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-08-04 06:56:33 -0400
commitad2618393168a72f079265023ddc68f2a89ccc9f (patch)
tree2c5e44ec71f0b8d2ffc86159672da9e500de4f24 /drivers/media/dvb/dvb-usb
parent6e3a5daa6ee7a0eae3b2161ed4783fee547654c2 (diff)
[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')
-rw-r--r--drivers/media/dvb/dvb-usb/dvb_usb.h1
-rw-r--r--drivers/media/dvb/dvb-usb/dvb_usb_init.c11
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb.h b/drivers/media/dvb/dvb-usb/dvb_usb.h
index a972de6f848..62097f38bb1 100644
--- a/drivers/media/dvb/dvb-usb/dvb_usb.h
+++ b/drivers/media/dvb/dvb-usb/dvb_usb.h
@@ -328,7 +328,6 @@ struct dvb_usb_device {
328#define DVB_USB_STATE_INIT 0x000 328#define DVB_USB_STATE_INIT 0x000
329#define DVB_USB_STATE_I2C 0x001 329#define DVB_USB_STATE_I2C 0x001
330#define DVB_USB_STATE_DVB 0x002 330#define DVB_USB_STATE_DVB 0x002
331#define DVB_USB_STATE_REMOTE 0x004
332 int state; 331 int state;
333 332
334 int powered; 333 int powered;
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb_init.c b/drivers/media/dvb/dvb-usb/dvb_usb_init.c
index cea33433150..5da4233501f 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)
137 int ret; 137 int ret;
138 struct rc_dev *dev; 138 struct rc_dev *dev;
139 139
140 pr_debug("%s:\n", __func__);
141
140 if (dvb_usbv2_disable_rc_polling || !d->props->get_rc_config) 142 if (dvb_usbv2_disable_rc_polling || !d->props->get_rc_config)
141 return 0; 143 return 0;
142 144
@@ -190,8 +192,6 @@ static int dvb_usbv2_remote_init(struct dvb_usb_device *d)
190 msecs_to_jiffies(d->rc.interval)); 192 msecs_to_jiffies(d->rc.interval));
191 } 193 }
192 194
193 d->state |= DVB_USB_STATE_REMOTE;
194
195 return 0; 195 return 0;
196err: 196err:
197 pr_debug("%s: failed=%d\n", __func__, ret); 197 pr_debug("%s: failed=%d\n", __func__, ret);
@@ -200,13 +200,14 @@ err:
200 200
201static int dvb_usbv2_remote_exit(struct dvb_usb_device *d) 201static int dvb_usbv2_remote_exit(struct dvb_usb_device *d)
202{ 202{
203 if (d->state & DVB_USB_STATE_REMOTE) { 203 pr_debug("%s:\n", __func__);
204
205 if (d->rc_dev) {
204 cancel_delayed_work_sync(&d->rc_query_work); 206 cancel_delayed_work_sync(&d->rc_query_work);
205 rc_unregister_device(d->rc_dev); 207 rc_unregister_device(d->rc_dev);
208 d->rc_dev = NULL;
206 } 209 }
207 210
208 d->state &= ~DVB_USB_STATE_REMOTE;
209
210 return 0; 211 return 0;
211} 212}
212 213