aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/dvb-usb/dibusb-mb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dibusb-mb.c')
-rw-r--r--drivers/media/dvb/dvb-usb/dibusb-mb.c28
1 files changed, 20 insertions, 8 deletions
diff --git a/drivers/media/dvb/dvb-usb/dibusb-mb.c b/drivers/media/dvb/dvb-usb/dibusb-mb.c
index c653b321e428..f13b3a3605c0 100644
--- a/drivers/media/dvb/dvb-usb/dibusb-mb.c
+++ b/drivers/media/dvb/dvb-usb/dibusb-mb.c
@@ -31,11 +31,11 @@ static int dibusb_dib3000mb_frontend_attach(struct dvb_usb_adapter *adap)
31 31
32 demod_cfg.demod_address = 0x8; 32 demod_cfg.demod_address = 0x8;
33 33
34 if ((adap->fe[0] = dvb_attach(dib3000mb_attach, &demod_cfg, 34 if ((adap->fe_adap[0].fe = dvb_attach(dib3000mb_attach, &demod_cfg,
35 &adap->dev->i2c_adap, &st->ops)) == NULL) 35 &adap->dev->i2c_adap, &st->ops)) == NULL)
36 return -ENODEV; 36 return -ENODEV;
37 37
38 adap->fe[0]->ops.i2c_gate_ctrl = dib3000mb_i2c_gate_ctrl; 38 adap->fe_adap[0].fe->ops.i2c_gate_ctrl = dib3000mb_i2c_gate_ctrl;
39 39
40 return 0; 40 return 0;
41} 41}
@@ -46,7 +46,7 @@ static int dibusb_thomson_tuner_attach(struct dvb_usb_adapter *adap)
46 46
47 st->tuner_addr = 0x61; 47 st->tuner_addr = 0x61;
48 48
49 dvb_attach(dvb_pll_attach, adap->fe[0], 0x61, &adap->dev->i2c_adap, 49 dvb_attach(dvb_pll_attach, adap->fe_adap[0].fe, 0x61, &adap->dev->i2c_adap,
50 DVB_PLL_TUA6010XS); 50 DVB_PLL_TUA6010XS);
51 return 0; 51 return 0;
52} 52}
@@ -57,7 +57,7 @@ static int dibusb_panasonic_tuner_attach(struct dvb_usb_adapter *adap)
57 57
58 st->tuner_addr = 0x60; 58 st->tuner_addr = 0x60;
59 59
60 dvb_attach(dvb_pll_attach, adap->fe[0], 0x60, &adap->dev->i2c_adap, 60 dvb_attach(dvb_pll_attach, adap->fe_adap[0].fe, 0x60, &adap->dev->i2c_adap,
61 DVB_PLL_TDA665X); 61 DVB_PLL_TDA665X);
62 return 0; 62 return 0;
63} 63}
@@ -78,16 +78,16 @@ static int dibusb_tuner_probe_and_attach(struct dvb_usb_adapter *adap)
78 /* the Panasonic sits on I2C addrass 0x60, the Thomson on 0x61 */ 78 /* the Panasonic sits on I2C addrass 0x60, the Thomson on 0x61 */
79 msg[0].addr = msg[1].addr = st->tuner_addr = 0x60; 79 msg[0].addr = msg[1].addr = st->tuner_addr = 0x60;
80 80
81 if (adap->fe[0]->ops.i2c_gate_ctrl) 81 if (adap->fe_adap[0].fe->ops.i2c_gate_ctrl)
82 adap->fe[0]->ops.i2c_gate_ctrl(adap->fe[0],1); 82 adap->fe_adap[0].fe->ops.i2c_gate_ctrl(adap->fe_adap[0].fe,1);
83 83
84 if (i2c_transfer(&adap->dev->i2c_adap, msg, 2) != 2) { 84 if (i2c_transfer(&adap->dev->i2c_adap, msg, 2) != 2) {
85 err("tuner i2c write failed."); 85 err("tuner i2c write failed.");
86 ret = -EREMOTEIO; 86 ret = -EREMOTEIO;
87 } 87 }
88 88
89 if (adap->fe[0]->ops.i2c_gate_ctrl) 89 if (adap->fe_adap[0].fe->ops.i2c_gate_ctrl)
90 adap->fe[0]->ops.i2c_gate_ctrl(adap->fe[0],0); 90 adap->fe_adap[0].fe->ops.i2c_gate_ctrl(adap->fe_adap[0].fe,0);
91 91
92 if (b2[0] == 0xfe) { 92 if (b2[0] == 0xfe) {
93 info("This device has the Thomson Cable onboard. Which is default."); 93 info("This device has the Thomson Cable onboard. Which is default.");
@@ -185,6 +185,8 @@ static struct dvb_usb_device_properties dibusb1_1_properties = {
185 .num_adapters = 1, 185 .num_adapters = 1,
186 .adapter = { 186 .adapter = {
187 { 187 {
188 .num_frontends = 1,
189 .fe = {{
188 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF, 190 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF,
189 .pid_filter_count = 16, 191 .pid_filter_count = 16,
190 192
@@ -205,6 +207,7 @@ static struct dvb_usb_device_properties dibusb1_1_properties = {
205 } 207 }
206 } 208 }
207 }, 209 },
210 }},
208 .size_of_priv = sizeof(struct dibusb_state), 211 .size_of_priv = sizeof(struct dibusb_state),
209 } 212 }
210 }, 213 },
@@ -272,6 +275,8 @@ static struct dvb_usb_device_properties dibusb1_1_an2235_properties = {
272 .num_adapters = 1, 275 .num_adapters = 1,
273 .adapter = { 276 .adapter = {
274 { 277 {
278 .num_frontends = 1,
279 .fe = {{
275 .caps = DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF | DVB_USB_ADAP_HAS_PID_FILTER, 280 .caps = DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF | DVB_USB_ADAP_HAS_PID_FILTER,
276 .pid_filter_count = 16, 281 .pid_filter_count = 16,
277 282
@@ -292,6 +297,7 @@ static struct dvb_usb_device_properties dibusb1_1_an2235_properties = {
292 } 297 }
293 } 298 }
294 }, 299 },
300 }},
295 .size_of_priv = sizeof(struct dibusb_state), 301 .size_of_priv = sizeof(struct dibusb_state),
296 }, 302 },
297 }, 303 },
@@ -338,6 +344,8 @@ static struct dvb_usb_device_properties dibusb2_0b_properties = {
338 .num_adapters = 1, 344 .num_adapters = 1,
339 .adapter = { 345 .adapter = {
340 { 346 {
347 .num_frontends = 1,
348 .fe = {{
341 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF, 349 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF,
342 .pid_filter_count = 16, 350 .pid_filter_count = 16,
343 351
@@ -358,6 +366,7 @@ static struct dvb_usb_device_properties dibusb2_0b_properties = {
358 } 366 }
359 } 367 }
360 }, 368 },
369 }},
361 .size_of_priv = sizeof(struct dibusb_state), 370 .size_of_priv = sizeof(struct dibusb_state),
362 } 371 }
363 }, 372 },
@@ -398,6 +407,8 @@ static struct dvb_usb_device_properties artec_t1_usb2_properties = {
398 .num_adapters = 1, 407 .num_adapters = 1,
399 .adapter = { 408 .adapter = {
400 { 409 {
410 .num_frontends = 1,
411 .fe = {{
401 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF, 412 .caps = DVB_USB_ADAP_HAS_PID_FILTER | DVB_USB_ADAP_PID_FILTER_CAN_BE_TURNED_OFF,
402 .pid_filter_count = 16, 413 .pid_filter_count = 16,
403 414
@@ -417,6 +428,7 @@ static struct dvb_usb_device_properties artec_t1_usb2_properties = {
417 } 428 }
418 } 429 }
419 }, 430 },
431 }},
420 .size_of_priv = sizeof(struct dibusb_state), 432 .size_of_priv = sizeof(struct dibusb_state),
421 } 433 }
422 }, 434 },