diff options
| -rw-r--r-- | drivers/media/dvb/dvb-usb/dvb_usb_dvb.c | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c b/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c index a0f76eb2b6db..f302e63a0d8f 100644 --- a/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c +++ b/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c | |||
| @@ -68,11 +68,14 @@ static int dvb_usb_ctrl_feed(struct dvb_demux_feed *dvbdmxfeed, int onoff) | |||
| 68 | struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; | 68 | struct dvb_usb_adapter *adap = dvbdmxfeed->demux->priv; |
| 69 | int newfeedcount, ret; | 69 | int newfeedcount, ret; |
| 70 | 70 | ||
| 71 | if (adap == NULL || adap->active_fe < 0) { | 71 | if (adap == NULL) { |
| 72 | ret = -ENODEV; | 72 | ret = -ENODEV; |
| 73 | goto err; | 73 | goto err; |
| 74 | } | 74 | } |
| 75 | 75 | ||
| 76 | pr_debug("%s: adap=%d active_fe=%d\n", __func__, adap->id, | ||
| 77 | adap->active_fe); | ||
| 78 | |||
| 76 | newfeedcount = adap->feedcount + (onoff ? 1 : -1); | 79 | newfeedcount = adap->feedcount + (onoff ? 1 : -1); |
| 77 | 80 | ||
| 78 | /* stop feed before setting a new pid if there will be no pid anymore */ | 81 | /* stop feed before setting a new pid if there will be no pid anymore */ |
| @@ -189,12 +192,15 @@ static int dvb_usb_stop_feed(struct dvb_demux_feed *dvbdmxfeed) | |||
| 189 | 192 | ||
| 190 | int dvb_usbv2_adapter_dvb_init(struct dvb_usb_adapter *adap) | 193 | int dvb_usbv2_adapter_dvb_init(struct dvb_usb_adapter *adap) |
| 191 | { | 194 | { |
| 192 | int ret = dvb_register_adapter(&adap->dvb_adap, adap->dev->name, | 195 | int ret; |
| 193 | adap->dev->props->owner, | 196 | pr_debug("%s: adap=%d\n", __func__, adap->id); |
| 194 | &adap->dev->udev->dev, | 197 | |
| 195 | adap->dev->props->adapter_nr); | 198 | ret = dvb_register_adapter(&adap->dvb_adap, adap->dev->name, |
| 199 | adap->dev->props->owner, &adap->dev->udev->dev, | ||
| 200 | adap->dev->props->adapter_nr); | ||
| 196 | if (ret < 0) { | 201 | if (ret < 0) { |
| 197 | pr_debug("%s: dvb_register_adapter failed=%d\n", __func__, ret); | 202 | pr_debug("%s: dvb_register_adapter() failed=%d\n", __func__, |
| 203 | ret); | ||
| 198 | goto err; | 204 | goto err; |
| 199 | } | 205 | } |
| 200 | adap->dvb_adap.priv = adap; | 206 | adap->dvb_adap.priv = adap; |
| @@ -258,6 +264,8 @@ err: | |||
| 258 | 264 | ||
| 259 | int dvb_usbv2_adapter_dvb_exit(struct dvb_usb_adapter *adap) | 265 | int dvb_usbv2_adapter_dvb_exit(struct dvb_usb_adapter *adap) |
| 260 | { | 266 | { |
| 267 | pr_debug("%s: adap=%d\n", __func__, adap->id); | ||
| 268 | |||
| 261 | if (adap->state & DVB_USB_ADAP_STATE_DVB) { | 269 | if (adap->state & DVB_USB_ADAP_STATE_DVB) { |
| 262 | pr_debug("%s: unregistering DVB part\n", __func__); | 270 | pr_debug("%s: unregistering DVB part\n", __func__); |
| 263 | dvb_net_release(&adap->dvb_net); | 271 | dvb_net_release(&adap->dvb_net); |
| @@ -274,6 +282,7 @@ static int dvb_usb_fe_wakeup(struct dvb_frontend *fe) | |||
| 274 | { | 282 | { |
| 275 | int ret; | 283 | int ret; |
| 276 | struct dvb_usb_adapter *adap = fe->dvb->priv; | 284 | struct dvb_usb_adapter *adap = fe->dvb->priv; |
| 285 | pr_debug("%s: adap=%d fe=%d\n", __func__, adap->id, fe->id); | ||
| 277 | 286 | ||
| 278 | ret = dvb_usbv2_device_power_ctrl(adap->dev, 1); | 287 | ret = dvb_usbv2_device_power_ctrl(adap->dev, 1); |
| 279 | if (ret < 0) | 288 | if (ret < 0) |
| @@ -303,6 +312,7 @@ static int dvb_usb_fe_sleep(struct dvb_frontend *fe) | |||
| 303 | { | 312 | { |
| 304 | int ret; | 313 | int ret; |
| 305 | struct dvb_usb_adapter *adap = fe->dvb->priv; | 314 | struct dvb_usb_adapter *adap = fe->dvb->priv; |
| 315 | pr_debug("%s: adap=%d fe=%d\n", __func__, adap->id, fe->id); | ||
| 306 | 316 | ||
| 307 | if (adap->fe_sleep[fe->id]) { | 317 | if (adap->fe_sleep[fe->id]) { |
| 308 | ret = adap->fe_sleep[fe->id](fe); | 318 | ret = adap->fe_sleep[fe->id](fe); |
| @@ -331,8 +341,7 @@ err: | |||
| 331 | int dvb_usbv2_adapter_frontend_init(struct dvb_usb_adapter *adap) | 341 | int dvb_usbv2_adapter_frontend_init(struct dvb_usb_adapter *adap) |
| 332 | { | 342 | { |
| 333 | int ret, i, count_registered = 0; | 343 | int ret, i, count_registered = 0; |
| 334 | 344 | pr_debug("%s: adap=%d\n", __func__, adap->id); | |
| 335 | pr_debug("%s:\n", __func__); | ||
| 336 | 345 | ||
| 337 | memset(adap->fe, 0, sizeof(adap->fe)); | 346 | memset(adap->fe, 0, sizeof(adap->fe)); |
| 338 | adap->active_fe = -1; | 347 | adap->active_fe = -1; |
| @@ -400,8 +409,7 @@ err: | |||
| 400 | int dvb_usbv2_adapter_frontend_exit(struct dvb_usb_adapter *adap) | 409 | int dvb_usbv2_adapter_frontend_exit(struct dvb_usb_adapter *adap) |
| 401 | { | 410 | { |
| 402 | int i; | 411 | int i; |
| 403 | 412 | pr_debug("%s: adap=%d\n", __func__, adap->id); | |
| 404 | pr_debug("%s:\n", __func__); | ||
| 405 | 413 | ||
| 406 | for (i = adap->num_frontends_initialized - 1; i >= 0; i--) { | 414 | for (i = adap->num_frontends_initialized - 1; i >= 0; i--) { |
| 407 | if (adap->fe[i]) { | 415 | if (adap->fe[i]) { |
