diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-10-02 15:02:57 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-10-02 16:15:22 -0400 |
commit | 2425bb3d4016ed95ce83a90b53bd92c7f31091e4 (patch) | |
tree | cdee4371121a355d627a655c4eef5c0047b0462a /drivers/media | |
parent | 8e30783b0b3270736b2cff6415c68b894bc411df (diff) |
em28xx: regression fix: use DRX-K sync firmware requests on em28xx
As em28xx-dvb will always be initialized asynchronously, there's
no need anymore for a separate thread to load the DRX-K firmware.
Fixes a known regression with kernel 3.6 with tda18271 driver
and asynchronous DRX-K firmware load.
Antti tested it with the following hardware:
Hauppauge WinTV HVR 930C
MaxMedia UB425-TC
PCTV QuatroStick nano (520e)
Tested-by: Antti Palosaari <crope@iki.fi>
Cc: stable@kernel.org # for Kernel 3.6 - please note that driver location has changed
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/usb/em28xx/em28xx-dvb.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/media/usb/em28xx/em28xx-dvb.c b/drivers/media/usb/em28xx/em28xx-dvb.c index 1662b70435b3..913e5227897a 100644 --- a/drivers/media/usb/em28xx/em28xx-dvb.c +++ b/drivers/media/usb/em28xx/em28xx-dvb.c | |||
@@ -318,6 +318,7 @@ static struct drxk_config terratec_h5_drxk = { | |||
318 | .no_i2c_bridge = 1, | 318 | .no_i2c_bridge = 1, |
319 | .microcode_name = "dvb-usb-terratec-h5-drxk.fw", | 319 | .microcode_name = "dvb-usb-terratec-h5-drxk.fw", |
320 | .qam_demod_parameter_count = 2, | 320 | .qam_demod_parameter_count = 2, |
321 | .load_firmware_sync = true, | ||
321 | }; | 322 | }; |
322 | 323 | ||
323 | static struct drxk_config hauppauge_930c_drxk = { | 324 | static struct drxk_config hauppauge_930c_drxk = { |
@@ -327,6 +328,7 @@ static struct drxk_config hauppauge_930c_drxk = { | |||
327 | .microcode_name = "dvb-usb-hauppauge-hvr930c-drxk.fw", | 328 | .microcode_name = "dvb-usb-hauppauge-hvr930c-drxk.fw", |
328 | .chunk_size = 56, | 329 | .chunk_size = 56, |
329 | .qam_demod_parameter_count = 2, | 330 | .qam_demod_parameter_count = 2, |
331 | .load_firmware_sync = true, | ||
330 | }; | 332 | }; |
331 | 333 | ||
332 | struct drxk_config terratec_htc_stick_drxk = { | 334 | struct drxk_config terratec_htc_stick_drxk = { |
@@ -340,12 +342,14 @@ struct drxk_config terratec_htc_stick_drxk = { | |||
340 | .antenna_dvbt = true, | 342 | .antenna_dvbt = true, |
341 | /* The windows driver uses the same. This will disable LNA. */ | 343 | /* The windows driver uses the same. This will disable LNA. */ |
342 | .antenna_gpio = 0x6, | 344 | .antenna_gpio = 0x6, |
345 | .load_firmware_sync = true, | ||
343 | }; | 346 | }; |
344 | 347 | ||
345 | static struct drxk_config maxmedia_ub425_tc_drxk = { | 348 | static struct drxk_config maxmedia_ub425_tc_drxk = { |
346 | .adr = 0x29, | 349 | .adr = 0x29, |
347 | .single_master = 1, | 350 | .single_master = 1, |
348 | .no_i2c_bridge = 1, | 351 | .no_i2c_bridge = 1, |
352 | .load_firmware_sync = true, | ||
349 | }; | 353 | }; |
350 | 354 | ||
351 | static struct drxk_config pctv_520e_drxk = { | 355 | static struct drxk_config pctv_520e_drxk = { |
@@ -356,6 +360,7 @@ static struct drxk_config pctv_520e_drxk = { | |||
356 | .chunk_size = 58, | 360 | .chunk_size = 58, |
357 | .antenna_dvbt = true, /* disable LNA */ | 361 | .antenna_dvbt = true, /* disable LNA */ |
358 | .antenna_gpio = (1 << 2), /* disable LNA */ | 362 | .antenna_gpio = (1 << 2), /* disable LNA */ |
363 | .load_firmware_sync = true, | ||
359 | }; | 364 | }; |
360 | 365 | ||
361 | static int drxk_gate_ctrl(struct dvb_frontend *fe, int enable) | 366 | static int drxk_gate_ctrl(struct dvb_frontend *fe, int enable) |