diff options
Diffstat (limited to 'drivers/media/video/ivtv/ivtv-firmware.c')
| -rw-r--r-- | drivers/media/video/ivtv/ivtv-firmware.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/media/video/ivtv/ivtv-firmware.c b/drivers/media/video/ivtv/ivtv-firmware.c index 14a1cea1d70d..02c5adebf517 100644 --- a/drivers/media/video/ivtv/ivtv-firmware.c +++ b/drivers/media/video/ivtv/ivtv-firmware.c | |||
| @@ -280,8 +280,6 @@ int ivtv_firmware_restart(struct ivtv *itv) | |||
| 280 | { | 280 | { |
| 281 | int rc = 0; | 281 | int rc = 0; |
| 282 | v4l2_std_id std; | 282 | v4l2_std_id std; |
| 283 | struct ivtv_open_id fh; | ||
| 284 | fh.itv = itv; | ||
| 285 | 283 | ||
| 286 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) | 284 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) |
| 287 | /* Display test image during restart */ | 285 | /* Display test image during restart */ |
| @@ -301,14 +299,19 @@ int ivtv_firmware_restart(struct ivtv *itv) | |||
| 301 | /* Allow settings to reload */ | 299 | /* Allow settings to reload */ |
| 302 | ivtv_mailbox_cache_invalidate(itv); | 300 | ivtv_mailbox_cache_invalidate(itv); |
| 303 | 301 | ||
| 304 | /* Restore video standard */ | 302 | /* Restore encoder video standard */ |
| 305 | std = itv->std; | 303 | std = itv->std; |
| 306 | itv->std = 0; | 304 | itv->std = 0; |
| 307 | ivtv_s_std(NULL, &fh, &std); | 305 | ivtv_s_std_enc(itv, &std); |
| 308 | 306 | ||
| 309 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { | 307 | if (itv->v4l2_cap & V4L2_CAP_VIDEO_OUTPUT) { |
| 310 | ivtv_init_mpeg_decoder(itv); | 308 | ivtv_init_mpeg_decoder(itv); |
| 311 | 309 | ||
| 310 | /* Restore decoder video standard */ | ||
| 311 | std = itv->std_out; | ||
| 312 | itv->std_out = 0; | ||
| 313 | ivtv_s_std_dec(itv, &std); | ||
| 314 | |||
| 312 | /* Restore framebuffer if active */ | 315 | /* Restore framebuffer if active */ |
| 313 | if (itv->ivtvfb_restore) | 316 | if (itv->ivtvfb_restore) |
| 314 | itv->ivtvfb_restore(itv); | 317 | itv->ivtvfb_restore(itv); |
