aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/pvrusb2/pvrusb2-encoder.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/video/pvrusb2/pvrusb2-encoder.c')
-rw-r--r--drivers/media/video/pvrusb2/pvrusb2-encoder.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/drivers/media/video/pvrusb2/pvrusb2-encoder.c b/drivers/media/video/pvrusb2/pvrusb2-encoder.c
index 64062879981e..c46d367f7472 100644
--- a/drivers/media/video/pvrusb2/pvrusb2-encoder.c
+++ b/drivers/media/video/pvrusb2/pvrusb2-encoder.c
@@ -278,11 +278,20 @@ static int pvr2_encoder_cmd(void *ctxt,
278 ret = -EBUSY; 278 ret = -EBUSY;
279 } 279 }
280 if (ret) { 280 if (ret) {
281 del_timer_sync(&hdw->encoder_run_timer);
281 hdw->state_encoder_ok = 0; 282 hdw->state_encoder_ok = 0;
282 pvr2_trace(PVR2_TRACE_STBITS, 283 pvr2_trace(PVR2_TRACE_STBITS,
283 "State bit %s <-- %s", 284 "State bit %s <-- %s",
284 "state_encoder_ok", 285 "state_encoder_ok",
285 (hdw->state_encoder_ok ? "true" : "false")); 286 (hdw->state_encoder_ok ? "true" : "false"));
287 if (hdw->state_encoder_runok) {
288 hdw->state_encoder_runok = 0;
289 pvr2_trace(PVR2_TRACE_STBITS,
290 "State bit %s <-- %s",
291 "state_encoder_runok",
292 (hdw->state_encoder_runok ?
293 "true" : "false"));
294 }
286 pvr2_trace( 295 pvr2_trace(
287 PVR2_TRACE_ERROR_LEGS, 296 PVR2_TRACE_ERROR_LEGS,
288 "Giving up on command." 297 "Giving up on command."
@@ -480,10 +489,6 @@ int pvr2_encoder_start(struct pvr2_hdw *hdw)
480 /* unmask some interrupts */ 489 /* unmask some interrupts */
481 pvr2_write_register(hdw, 0x0048, 0xbfffffff); 490 pvr2_write_register(hdw, 0x0048, 0xbfffffff);
482 491
483 /* change some GPIO data */
484 pvr2_hdw_gpio_chg_dir(hdw,0xffffffff,0x00000481);
485 pvr2_hdw_gpio_chg_out(hdw,0xffffffff,0x00000000);
486
487 pvr2_encoder_vcmd(hdw,CX2341X_ENC_MUTE_VIDEO,1, 492 pvr2_encoder_vcmd(hdw,CX2341X_ENC_MUTE_VIDEO,1,
488 hdw->input_val == PVR2_CVAL_INPUT_RADIO ? 1 : 0); 493 hdw->input_val == PVR2_CVAL_INPUT_RADIO ? 1 : 0);
489 494
@@ -526,12 +531,6 @@ int pvr2_encoder_stop(struct pvr2_hdw *hdw)
526 break; 531 break;
527 } 532 }
528 533
529 /* change some GPIO data */
530 /* Note: Bit d7 of dir appears to control the LED. So we shut it
531 off here. */
532 pvr2_hdw_gpio_chg_dir(hdw,0xffffffff,0x00000401);
533 pvr2_hdw_gpio_chg_out(hdw,0xffffffff,0x00000000);
534
535 return status; 534 return status;
536} 535}
537 536