Lines Matching refs:adap
88 static int bristol_frontend_attach(struct dvb_usb_adapter *adap) in bristol_frontend_attach() argument
90 struct dib0700_state *st = adap->dev->priv; in bristol_frontend_attach()
91 if (adap->id == 0) { in bristol_frontend_attach()
92 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
93 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); msleep(10); in bristol_frontend_attach()
94 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
95 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); msleep(10); in bristol_frontend_attach()
98 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in bristol_frontend_attach()
100 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 0); in bristol_frontend_attach()
102 …if (dib3000mc_i2c_enumeration(&adap->dev->i2c_adap, 2, DEFAULT_DIB3000P_I2C_ADDRESS, bristol_dib30… in bristol_frontend_attach()
103 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
107 st->mt2060_if1[adap->id] = 1220; in bristol_frontend_attach()
108 return (adap->fe_adap[0].fe = dvb_attach(dib3000mc_attach, &adap->dev->i2c_adap, in bristol_frontend_attach()
109 (10 + adap->id) << 1, &bristol_dib3000mc_config[adap->id])) == NULL ? -ENODEV : 0; in bristol_frontend_attach()
112 static int eeprom_read(struct i2c_adapter *adap,u8 adrs,u8 *pval) in eeprom_read() argument
118 if (i2c_transfer(adap, msg, 2) != 2) return -EREMOTEIO; in eeprom_read()
122 static int bristol_tuner_attach(struct dvb_usb_adapter *adap) in bristol_tuner_attach() argument
124 struct i2c_adapter *prim_i2c = &adap->dev->i2c_adap; in bristol_tuner_attach()
125 struct i2c_adapter *tun_i2c = dib3000mc_get_tuner_i2c_master(adap->fe_adap[0].fe, 1); in bristol_tuner_attach()
128 if (adap->dev->udev->descriptor.idVendor == cpu_to_le16(USB_VID_HAUPPAUGE) && in bristol_tuner_attach()
129 adap->dev->udev->descriptor.idProduct == cpu_to_le16(USB_PID_HAUPPAUGE_NOVA_T_500_2)) { in bristol_tuner_attach()
130 if (!eeprom_read(prim_i2c,0x59 + adap->id,&a)) if1=1220+a; in bristol_tuner_attach()
132 return dvb_attach(mt2060_attach, adap->fe_adap[0].fe, tun_i2c, in bristol_tuner_attach()
133 &bristol_mt2060_config[adap->id], if1) == NULL ? in bristol_tuner_attach()
276 static int stk7700P2_frontend_attach(struct dvb_usb_adapter *adap) in stk7700P2_frontend_attach() argument
278 struct dib0700_adapter_state *state = adap->priv; in stk7700P2_frontend_attach()
283 if (adap->id == 0) { in stk7700P2_frontend_attach()
284 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700P2_frontend_attach()
286 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700P2_frontend_attach()
287 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700P2_frontend_attach()
288 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700P2_frontend_attach()
289 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700P2_frontend_attach()
291 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700P2_frontend_attach()
293 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7700P2_frontend_attach()
302 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in stk7700P2_frontend_attach()
303 0x80 + (adap->id << 1), in stk7700P2_frontend_attach()
304 &stk7700d_dib7000p_mt2266_config[adap->id]); in stk7700P2_frontend_attach()
306 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700P2_frontend_attach()
309 static int stk7700d_frontend_attach(struct dvb_usb_adapter *adap) in stk7700d_frontend_attach() argument
311 struct dib0700_adapter_state *state = adap->priv; in stk7700d_frontend_attach()
316 if (adap->id == 0) { in stk7700d_frontend_attach()
317 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700d_frontend_attach()
319 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700d_frontend_attach()
320 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700d_frontend_attach()
321 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700d_frontend_attach()
322 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700d_frontend_attach()
324 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700d_frontend_attach()
326 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700d_frontend_attach()
327 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, in stk7700d_frontend_attach()
336 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in stk7700d_frontend_attach()
337 0x80 + (adap->id << 1), in stk7700d_frontend_attach()
338 &stk7700d_dib7000p_mt2266_config[adap->id]); in stk7700d_frontend_attach()
340 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700d_frontend_attach()
343 static int stk7700d_tuner_attach(struct dvb_usb_adapter *adap) in stk7700d_tuner_attach() argument
346 struct dib0700_adapter_state *state = adap->priv; in stk7700d_tuner_attach()
348 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in stk7700d_tuner_attach()
350 return dvb_attach(mt2266_attach, adap->fe_adap[0].fe, tun_i2c, in stk7700d_tuner_attach()
351 &stk7700d_mt2266_config[adap->id]) == NULL ? -ENODEV : 0; in stk7700d_tuner_attach()
425 struct dvb_usb_adapter *adap = ptr; in stk7700ph_xc3028_callback() local
426 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_xc3028_callback()
431 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 0); in stk7700ph_xc3028_callback()
433 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in stk7700ph_xc3028_callback()
457 static int stk7700ph_frontend_attach(struct dvb_usb_adapter *adap) in stk7700ph_frontend_attach() argument
459 struct usb_device_descriptor *desc = &adap->dev->udev->descriptor; in stk7700ph_frontend_attach()
460 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_frontend_attach()
467 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7700ph_frontend_attach()
469 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700ph_frontend_attach()
471 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700ph_frontend_attach()
472 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700ph_frontend_attach()
473 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700ph_frontend_attach()
474 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700ph_frontend_attach()
476 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700ph_frontend_attach()
478 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700ph_frontend_attach()
481 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7700ph_frontend_attach()
489 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7700ph_frontend_attach()
492 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700ph_frontend_attach()
495 static int stk7700ph_tuner_attach(struct dvb_usb_adapter *adap) in stk7700ph_tuner_attach() argument
498 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_tuner_attach()
500 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in stk7700ph_tuner_attach()
506 adap->fe_adap[0].fe->callback = stk7700ph_xc3028_callback; in stk7700ph_tuner_attach()
508 return dvb_attach(xc2028_attach, adap->fe_adap[0].fe, &stk7700ph_xc3028_config) in stk7700ph_tuner_attach()
704 static int stk7700p_frontend_attach(struct dvb_usb_adapter *adap) in stk7700p_frontend_attach() argument
706 struct dib0700_state *st = adap->dev->priv; in stk7700p_frontend_attach()
707 struct dib0700_adapter_state *state = adap->priv; in stk7700p_frontend_attach()
714 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700p_frontend_attach()
715 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(50); in stk7700p_frontend_attach()
717 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); msleep(10); in stk7700p_frontend_attach()
718 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700p_frontend_attach()
720 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); msleep(10); in stk7700p_frontend_attach()
721 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7700p_frontend_attach()
722 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); msleep(100); in stk7700p_frontend_attach()
724 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700p_frontend_attach()
728 if (state->dib7000p_ops.dib7000pc_detection(&adap->dev->i2c_adap)) { in stk7700p_frontend_attach()
729 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 18, &stk7700p_dib7000p_config… in stk7700p_frontend_attach()
733 …adap->fe_adap[0].fe = dvb_attach(dib7000m_attach, &adap->dev->i2c_adap, 18, &stk7700p_dib7000m_con… in stk7700p_frontend_attach()
736 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700p_frontend_attach()
743 static int stk7700p_tuner_attach(struct dvb_usb_adapter *adap) in stk7700p_tuner_attach() argument
745 struct i2c_adapter *prim_i2c = &adap->dev->i2c_adap; in stk7700p_tuner_attach()
746 struct dib0700_state *st = adap->dev->priv; in stk7700p_tuner_attach()
748 struct dib0700_adapter_state *state = adap->priv; in stk7700p_tuner_attach()
752 if (adap->dev->udev->descriptor.idVendor == cpu_to_le16(USB_VID_HAUPPAUGE) && in stk7700p_tuner_attach()
753 adap->dev->udev->descriptor.idProduct == cpu_to_le16(USB_PID_HAUPPAUGE_NOVA_T_STICK)) { in stk7700p_tuner_attach()
757 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in stk7700p_tuner_attach()
759 tun_i2c = dib7000m_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in stk7700p_tuner_attach()
761 return dvb_attach(mt2060_attach, adap->fe_adap[0].fe, tun_i2c, &stk7700p_mt2060_config, in stk7700p_tuner_attach()
801 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_tuner_reset() local
802 struct dib0700_adapter_state *state = adap->priv; in dib7070_tuner_reset()
810 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_tuner_sleep() local
811 struct dib0700_adapter_state *state = adap->priv; in dib7070_tuner_sleep()
847 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_set_param_override() local
848 struct dib0700_adapter_state *state = adap->priv; in dib7070_set_param_override()
865 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7770_set_param_override() local
866 struct dib0700_adapter_state *state = adap->priv; in dib7770_set_param_override()
886 static int dib7770p_tuner_attach(struct dvb_usb_adapter *adap) in dib7770p_tuner_attach() argument
888 struct dib0700_adapter_state *st = adap->priv; in dib7770p_tuner_attach()
889 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in dib7770p_tuner_attach()
892 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib7770p_tuner_attach()
896 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib7770p_tuner_attach()
897 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7770_set_param_override; in dib7770p_tuner_attach()
901 static int dib7070p_tuner_attach(struct dvb_usb_adapter *adap) in dib7070p_tuner_attach() argument
903 struct dib0700_adapter_state *st = adap->priv; in dib7070p_tuner_attach()
904 …struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INT… in dib7070p_tuner_attach()
906 if (adap->id == 0) { in dib7070p_tuner_attach()
907 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, &dib7070p_dib0070_config[0]) == NULL) in dib7070p_tuner_attach()
910 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, &dib7070p_dib0070_config[1]) == NULL) in dib7070p_tuner_attach()
914 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib7070p_tuner_attach()
915 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7070_set_param_override; in dib7070p_tuner_attach()
987 static int stk7070p_frontend_attach(struct dvb_usb_adapter *adap) in stk7070p_frontend_attach() argument
989 struct usb_device_descriptor *p = &adap->dev->udev->descriptor; in stk7070p_frontend_attach()
990 struct dib0700_adapter_state *state = adap->priv; in stk7070p_frontend_attach()
997 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7070p_frontend_attach()
999 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7070p_frontend_attach()
1001 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7070p_frontend_attach()
1002 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7070p_frontend_attach()
1003 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7070p_frontend_attach()
1004 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7070p_frontend_attach()
1006 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7070p_frontend_attach()
1009 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7070p_frontend_attach()
1011 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7070p_frontend_attach()
1013 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7070p_frontend_attach()
1021 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7070p_frontend_attach()
1023 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070p_frontend_attach()
1045 static int stk7770p_frontend_attach(struct dvb_usb_adapter *adap) in stk7770p_frontend_attach() argument
1047 struct usb_device_descriptor *p = &adap->dev->udev->descriptor; in stk7770p_frontend_attach()
1048 struct dib0700_adapter_state *state = adap->priv; in stk7770p_frontend_attach()
1055 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7770p_frontend_attach()
1057 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7770p_frontend_attach()
1059 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7770p_frontend_attach()
1060 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7770p_frontend_attach()
1061 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7770p_frontend_attach()
1062 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7770p_frontend_attach()
1064 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7770p_frontend_attach()
1067 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7770p_frontend_attach()
1069 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7770p_frontend_attach()
1071 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7770p_frontend_attach()
1079 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7770p_frontend_attach()
1081 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7770p_frontend_attach()
1235 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib80xx_tuner_reset() local
1236 struct dib0700_adapter_state *state = adap->priv; in dib80xx_tuner_reset()
1243 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib80xx_tuner_sleep() local
1244 struct dib0700_adapter_state *state = adap->priv; in dib80xx_tuner_sleep()
1289 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib807x_set_param_override() local
1290 struct dib0700_adapter_state *state = adap->priv; in dib807x_set_param_override()
1308 static int dib807x_tuner_attach(struct dvb_usb_adapter *adap) in dib807x_tuner_attach() argument
1310 struct dib0700_adapter_state *st = adap->priv; in dib807x_tuner_attach()
1311 struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, in dib807x_tuner_attach()
1314 if (adap->id == 0) { in dib807x_tuner_attach()
1315 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib807x_tuner_attach()
1319 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib807x_tuner_attach()
1324 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib807x_tuner_attach()
1325 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib807x_set_param_override; in dib807x_tuner_attach()
1346 static int stk807x_frontend_attach(struct dvb_usb_adapter *adap) in stk807x_frontend_attach() argument
1348 struct dib0700_adapter_state *state = adap->priv; in stk807x_frontend_attach()
1353 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk807x_frontend_attach()
1355 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk807x_frontend_attach()
1356 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk807x_frontend_attach()
1357 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk807x_frontend_attach()
1359 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk807x_frontend_attach()
1361 dib0700_ctrl_clock(adap->dev, 72, 1); in stk807x_frontend_attach()
1364 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk807x_frontend_attach()
1366 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk807x_frontend_attach()
1368 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk807x_frontend_attach()
1371 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, in stk807x_frontend_attach()
1374 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807x_frontend_attach()
1378 static int stk807xpvr_frontend_attach0(struct dvb_usb_adapter *adap) in stk807xpvr_frontend_attach0() argument
1380 struct dib0700_adapter_state *state = adap->priv; in stk807xpvr_frontend_attach0()
1385 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk807xpvr_frontend_attach0()
1387 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1389 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1390 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1391 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1393 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk807xpvr_frontend_attach0()
1395 dib0700_ctrl_clock(adap->dev, 72, 1); in stk807xpvr_frontend_attach0()
1398 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1400 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1403 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x22, 0x80, 0); in stk807xpvr_frontend_attach0()
1405 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, in stk807xpvr_frontend_attach0()
1408 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807xpvr_frontend_attach0()
1411 static int stk807xpvr_frontend_attach1(struct dvb_usb_adapter *adap) in stk807xpvr_frontend_attach1() argument
1413 struct dib0700_adapter_state *state = adap->priv; in stk807xpvr_frontend_attach1()
1419 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x12, 0x82, 0); in stk807xpvr_frontend_attach1()
1421 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, in stk807xpvr_frontend_attach1()
1424 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807xpvr_frontend_attach1()
1541 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8090_get_adc_power() local
1542 struct dib0700_adapter_state *state = adap->priv; in dib8090_get_adc_power()
1655 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8096_set_param_override() local
1656 struct dib0700_adapter_state *state = adap->priv; in dib8096_set_param_override()
1739 static int dib809x_tuner_attach(struct dvb_usb_adapter *adap) in dib809x_tuner_attach() argument
1741 struct dib0700_adapter_state *st = adap->priv; in dib809x_tuner_attach()
1742 …struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTE… in dib809x_tuner_attach()
1744 if (adap->id == 0) { in dib809x_tuner_attach()
1745 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) in dib809x_tuner_attach()
1749 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) in dib809x_tuner_attach()
1753 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib809x_tuner_attach()
1754 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096_set_param_override; in dib809x_tuner_attach()
1758 static int stk809x_frontend_attach(struct dvb_usb_adapter *adap) in stk809x_frontend_attach() argument
1760 struct dib0700_adapter_state *state = adap->priv; in stk809x_frontend_attach()
1765 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk809x_frontend_attach()
1767 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk809x_frontend_attach()
1768 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk809x_frontend_attach()
1769 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk809x_frontend_attach()
1771 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk809x_frontend_attach()
1773 dib0700_ctrl_clock(adap->dev, 72, 1); in stk809x_frontend_attach()
1776 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk809x_frontend_attach()
1778 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk809x_frontend_attach()
1780 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, 0x80, 0); in stk809x_frontend_attach()
1782 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, &dib809x_dib8000_config[… in stk809x_frontend_attach()
1784 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk809x_frontend_attach()
1787 static int stk809x_frontend1_attach(struct dvb_usb_adapter *adap) in stk809x_frontend1_attach() argument
1789 struct dib0700_adapter_state *state = adap->priv; in stk809x_frontend1_attach()
1794 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x82, 0); in stk809x_frontend1_attach()
1796 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, &dib809x_dib8000_config[… in stk809x_frontend1_attach()
1798 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk809x_frontend1_attach()
1801 static int nim8096md_tuner_attach(struct dvb_usb_adapter *adap) in nim8096md_tuner_attach() argument
1803 struct dib0700_adapter_state *st = adap->priv; in nim8096md_tuner_attach()
1805 struct dvb_frontend *fe_slave = st->dib8000_ops.get_slave_frontend(adap->fe_adap[0].fe, 1); in nim8096md_tuner_attach()
1811 fe_slave->dvb = adap->fe_adap[0].fe->dvb; in nim8096md_tuner_attach()
1814 tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in nim8096md_tuner_attach()
1815 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) in nim8096md_tuner_attach()
1818 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in nim8096md_tuner_attach()
1819 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096_set_param_override; in nim8096md_tuner_attach()
1824 static int nim8096md_frontend_attach(struct dvb_usb_adapter *adap) in nim8096md_frontend_attach() argument
1827 struct dib0700_adapter_state *state = adap->priv; in nim8096md_frontend_attach()
1832 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in nim8096md_frontend_attach()
1834 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim8096md_frontend_attach()
1836 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim8096md_frontend_attach()
1837 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim8096md_frontend_attach()
1838 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim8096md_frontend_attach()
1840 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim8096md_frontend_attach()
1842 dib0700_ctrl_clock(adap->dev, 72, 1); in nim8096md_frontend_attach()
1845 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim8096md_frontend_attach()
1847 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim8096md_frontend_attach()
1849 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, 0x80, 0); in nim8096md_frontend_attach()
1851 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, &dib809x_dib8000_config[… in nim8096md_frontend_attach()
1852 if (adap->fe_adap[0].fe == NULL) in nim8096md_frontend_attach()
1859 fe_slave = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, &dib809x_dib8000_config[1]); in nim8096md_frontend_attach()
1860 state->dib8000_ops.set_slave_frontend(adap->fe_adap[0].fe, fe_slave); in nim8096md_frontend_attach()
2122 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8096p_agc_startup() local
2123 struct dib0700_adapter_state *state = adap->priv; in dib8096p_agc_startup()
2144 dib0700_set_i2c_speed(adap->dev, 200); in dib8096p_agc_startup()
2147 dib0700_set_i2c_speed(adap->dev, 1000); in dib8096p_agc_startup()
2152 static int tfe8096p_frontend_attach(struct dvb_usb_adapter *adap) in tfe8096p_frontend_attach() argument
2154 struct dib0700_state *st = adap->dev->priv; in tfe8096p_frontend_attach()
2156 struct dib0700_adapter_state *state = adap->priv; in tfe8096p_frontend_attach()
2161 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in tfe8096p_frontend_attach()
2165 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2167 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2168 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2169 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2171 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe8096p_frontend_attach()
2173 dib0700_ctrl_clock(adap->dev, 72, 1); in tfe8096p_frontend_attach()
2176 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2178 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2180 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80, 1); in tfe8096p_frontend_attach()
2182 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, in tfe8096p_frontend_attach()
2185 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe8096p_frontend_attach()
2188 static int tfe8096p_tuner_attach(struct dvb_usb_adapter *adap) in tfe8096p_tuner_attach() argument
2190 struct dib0700_adapter_state *st = adap->priv; in tfe8096p_tuner_attach()
2191 struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe8096p_tuner_attach()
2197 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, in tfe8096p_tuner_attach()
2201 st->dib8000_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe8096p_tuner_attach()
2203 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe8096p_tuner_attach()
2204 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096p_agc_startup; in tfe8096p_tuner_attach()
2391 static int stk9090m_frontend_attach(struct dvb_usb_adapter *adap) in stk9090m_frontend_attach() argument
2393 struct dib0700_adapter_state *state = adap->priv; in stk9090m_frontend_attach()
2394 struct dib0700_state *st = adap->dev->priv; in stk9090m_frontend_attach()
2398 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in stk9090m_frontend_attach()
2401 dib0700_set_i2c_speed(adap->dev, 340); in stk9090m_frontend_attach()
2403 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk9090m_frontend_attach()
2405 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk9090m_frontend_attach()
2406 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk9090m_frontend_attach()
2407 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk9090m_frontend_attach()
2408 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk9090m_frontend_attach()
2410 dib0700_ctrl_clock(adap->dev, 72, 1); in stk9090m_frontend_attach()
2413 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk9090m_frontend_attach()
2415 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk9090m_frontend_attach()
2417 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80); in stk9090m_frontend_attach()
2419 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in stk9090m_frontend_attach()
2428 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &stk9090m_config); in stk9090m_frontend_attach()
2430 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk9090m_frontend_attach()
2433 static int dib9090_tuner_attach(struct dvb_usb_adapter *adap) in dib9090_tuner_attach() argument
2435 struct dib0700_adapter_state *state = adap->priv; in dib9090_tuner_attach()
2436 struct i2c_adapter *i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in dib9090_tuner_attach()
2445 if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &dib9090_dib0090_config) == NULL) in dib9090_tuner_attach()
2447 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_1_2, 0); in dib9090_tuner_attach()
2450 dib0700_set_i2c_speed(adap->dev, 1500); in dib9090_tuner_attach()
2451 if (dib9000_firmware_post_pll_init(adap->fe_adap[0].fe) < 0) in dib9090_tuner_attach()
2457 static int nim9090md_frontend_attach(struct dvb_usb_adapter *adap) in nim9090md_frontend_attach() argument
2459 struct dib0700_adapter_state *state = adap->priv; in nim9090md_frontend_attach()
2460 struct dib0700_state *st = adap->dev->priv; in nim9090md_frontend_attach()
2466 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in nim9090md_frontend_attach()
2469 dib0700_set_i2c_speed(adap->dev, 340); in nim9090md_frontend_attach()
2471 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim9090md_frontend_attach()
2473 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim9090md_frontend_attach()
2474 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim9090md_frontend_attach()
2475 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim9090md_frontend_attach()
2476 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim9090md_frontend_attach()
2478 dib0700_ctrl_clock(adap->dev, 72, 1); in nim9090md_frontend_attach()
2481 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim9090md_frontend_attach()
2483 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim9090md_frontend_attach()
2485 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in nim9090md_frontend_attach()
2496 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x20, 0x80); in nim9090md_frontend_attach()
2497 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &nim9090md_config[0]); in nim9090md_frontend_attach()
2499 if (adap->fe_adap[0].fe == NULL) in nim9090md_frontend_attach()
2502 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_3_4, 0); in nim9090md_frontend_attach()
2506 dib9000_set_slave_frontend(adap->fe_adap[0].fe, fe_slave); in nim9090md_frontend_attach()
2511 static int nim9090md_tuner_attach(struct dvb_usb_adapter *adap) in nim9090md_tuner_attach() argument
2513 struct dib0700_adapter_state *state = adap->priv; in nim9090md_tuner_attach()
2523 i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in nim9090md_tuner_attach()
2524 …if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &nim9090md_dib0090_config[0]) == NUL… in nim9090md_tuner_attach()
2526 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_1_2, 0); in nim9090md_tuner_attach()
2530 dib0700_set_i2c_speed(adap->dev, 1500); in nim9090md_tuner_attach()
2531 if (dib9000_firmware_post_pll_init(adap->fe_adap[0].fe) < 0) in nim9090md_tuner_attach()
2534 fe_slave = dib9000_get_slave_frontend(adap->fe_adap[0].fe, 1); in nim9090md_tuner_attach()
2536 i2c = dib9000_get_component_bus_interface(adap->fe_adap[0].fe); in nim9090md_tuner_attach()
2542 fe_slave->dvb = adap->fe_adap[0].fe->dvb; in nim9090md_tuner_attach()
2543 dib9000_fw_set_component_bus_speed(adap->fe_adap[0].fe, 1500); in nim9090md_tuner_attach()
2628 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7090_agc_startup() local
2629 struct dib0700_adapter_state *state = adap->priv; in dib7090_agc_startup()
2664 struct dvb_usb_adapter *adap = fe->dvb->priv; in tfe7790p_update_lna() local
2665 struct dib0700_adapter_state *state = adap->priv; in tfe7790p_update_lna()
2819 struct dvb_usb_adapter *adap = fe->dvb->priv; in tfe7090p_pvr_update_lna() local
2820 struct dib0700_adapter_state *state = adap->priv; in tfe7090p_pvr_update_lna()
3043 static int nim7090_frontend_attach(struct dvb_usb_adapter *adap) in nim7090_frontend_attach() argument
3045 struct dib0700_adapter_state *state = adap->priv; in nim7090_frontend_attach()
3050 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim7090_frontend_attach()
3052 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim7090_frontend_attach()
3053 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim7090_frontend_attach()
3054 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim7090_frontend_attach()
3055 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim7090_frontend_attach()
3058 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim7090_frontend_attach()
3060 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim7090_frontend_attach()
3062 …if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, &nim7090_dib7000p_config) !… in nim7090_frontend_attach()
3067 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, &nim7090_dib7000p_confi… in nim7090_frontend_attach()
3069 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in nim7090_frontend_attach()
3072 static int nim7090_tuner_attach(struct dvb_usb_adapter *adap) in nim7090_tuner_attach() argument
3074 struct dib0700_adapter_state *st = adap->priv; in nim7090_tuner_attach()
3075 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in nim7090_tuner_attach()
3081 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &nim7090_dib0090_config) == NULL) in nim7090_tuner_attach()
3084 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in nim7090_tuner_attach()
3086 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in nim7090_tuner_attach()
3087 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in nim7090_tuner_attach()
3091 static int tfe7090pvr_frontend0_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_frontend0_attach() argument
3093 struct dib0700_state *st = adap->dev->priv; in tfe7090pvr_frontend0_attach()
3094 struct dib0700_adapter_state *state = adap->priv; in tfe7090pvr_frontend0_attach()
3102 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3104 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3105 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3106 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3107 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe7090pvr_frontend0_attach()
3110 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3112 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3115 …if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x20, &tfe7090pvr_dib7000p_config… in tfe7090pvr_frontend0_attach()
3121 dib0700_set_i2c_speed(adap->dev, 340); in tfe7090pvr_frontend0_attach()
3122 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x90, &tfe7090pvr_dib7000p_co… in tfe7090pvr_frontend0_attach()
3123 if (adap->fe_adap[0].fe == NULL) in tfe7090pvr_frontend0_attach()
3126 state->dib7000p_ops.slave_reset(adap->fe_adap[0].fe); in tfe7090pvr_frontend0_attach()
3131 static int tfe7090pvr_frontend1_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_frontend1_attach() argument
3134 struct dib0700_adapter_state *state = adap->priv; in tfe7090pvr_frontend1_attach()
3136 if (adap->dev->adapter[0].fe_adap[0].fe == NULL) { in tfe7090pvr_frontend1_attach()
3144 …i2c = state->dib7000p_ops.get_i2c_master(adap->dev->adapter[0].fe_adap[0].fe, DIBX000_I2C_INTERFAC… in tfe7090pvr_frontend1_attach()
3151 adap->fe_adap[0].fe = state->dib7000p_ops.init(i2c, 0x92, &tfe7090pvr_dib7000p_config[1]); in tfe7090pvr_frontend1_attach()
3152 dib0700_set_i2c_speed(adap->dev, 200); in tfe7090pvr_frontend1_attach()
3154 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe7090pvr_frontend1_attach()
3157 static int tfe7090pvr_tuner0_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_tuner0_attach() argument
3159 struct dib0700_adapter_state *st = adap->priv; in tfe7090pvr_tuner0_attach()
3160 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7090pvr_tuner0_attach()
3166 …if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &tfe7090pvr_dib0090_config[0]) == N… in tfe7090pvr_tuner0_attach()
3169 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7090pvr_tuner0_attach()
3171 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7090pvr_tuner0_attach()
3172 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7090pvr_tuner0_attach()
3176 static int tfe7090pvr_tuner1_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_tuner1_attach() argument
3178 struct dib0700_adapter_state *st = adap->priv; in tfe7090pvr_tuner1_attach()
3179 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7090pvr_tuner1_attach()
3185 …if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &tfe7090pvr_dib0090_config[1]) == N… in tfe7090pvr_tuner1_attach()
3188 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7090pvr_tuner1_attach()
3190 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7090pvr_tuner1_attach()
3191 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7090pvr_tuner1_attach()
3195 static int tfe7790p_frontend_attach(struct dvb_usb_adapter *adap) in tfe7790p_frontend_attach() argument
3197 struct dib0700_state *st = adap->dev->priv; in tfe7790p_frontend_attach()
3198 struct dib0700_adapter_state *state = adap->priv; in tfe7790p_frontend_attach()
3206 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3208 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3209 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3210 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3211 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe7790p_frontend_attach()
3213 dib0700_ctrl_clock(adap->dev, 72, 1); in tfe7790p_frontend_attach()
3214 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3216 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3218 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, in tfe7790p_frontend_attach()
3225 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in tfe7790p_frontend_attach()
3228 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe7790p_frontend_attach()
3231 static int tfe7790p_tuner_attach(struct dvb_usb_adapter *adap) in tfe7790p_tuner_attach() argument
3233 struct dib0700_adapter_state *st = adap->priv; in tfe7790p_tuner_attach()
3235 st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7790p_tuner_attach()
3242 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, in tfe7790p_tuner_attach()
3246 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7790p_tuner_attach()
3248 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7790p_tuner_attach()
3249 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7790p_tuner_attach()
3301 static int stk7070pd_frontend_attach0(struct dvb_usb_adapter *adap) in stk7070pd_frontend_attach0() argument
3303 struct dib0700_adapter_state *state = adap->priv; in stk7070pd_frontend_attach0()
3308 stk7070pd_init(adap->dev); in stk7070pd_frontend_attach0()
3311 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7070pd_frontend_attach0()
3313 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, in stk7070pd_frontend_attach0()
3321 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, &stk7070pd_dib7000p_con… in stk7070pd_frontend_attach0()
3322 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070pd_frontend_attach0()
3325 static int stk7070pd_frontend_attach1(struct dvb_usb_adapter *adap) in stk7070pd_frontend_attach1() argument
3327 struct dib0700_adapter_state *state = adap->priv; in stk7070pd_frontend_attach1()
3332 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x82, &stk7070pd_dib7000p_con… in stk7070pd_frontend_attach1()
3333 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070pd_frontend_attach1()
3339 struct dvb_usb_adapter *adap = fe->dvb->priv; in novatd_read_status_override() local
3340 struct dvb_usb_device *dev = adap->dev; in novatd_read_status_override()
3347 dib0700_set_gpio(dev, adap->id == 0 ? GPIO1 : GPIO0, GPIO_OUT, in novatd_read_status_override()
3355 struct dvb_usb_adapter *adap = fe->dvb->priv; in novatd_sleep_override() local
3356 struct dvb_usb_device *dev = adap->dev; in novatd_sleep_override()
3360 dib0700_set_gpio(dev, adap->id == 0 ? GPIO1 : GPIO0, GPIO_OUT, 0); in novatd_sleep_override()
3371 static int novatd_frontend_attach(struct dvb_usb_adapter *adap) in novatd_frontend_attach() argument
3373 struct dvb_usb_device *dev = adap->dev; in novatd_frontend_attach()
3375 struct dib0700_adapter_state *state = adap->priv; in novatd_frontend_attach()
3380 if (adap->id == 0) { in novatd_frontend_attach()
3397 adap->fe_adap[0].fe = state->dib7000p_ops.init(&dev->i2c_adap, in novatd_frontend_attach()
3398 adap->id == 0 ? 0x80 : 0x82, in novatd_frontend_attach()
3399 &stk7070pd_dib7000p_config[adap->id]); in novatd_frontend_attach()
3401 if (adap->fe_adap[0].fe == NULL) in novatd_frontend_attach()
3404 st->read_status = adap->fe_adap[0].fe->ops.read_status; in novatd_frontend_attach()
3405 adap->fe_adap[0].fe->ops.read_status = novatd_read_status_override; in novatd_frontend_attach()
3406 st->sleep = adap->fe_adap[0].fe->ops.sleep; in novatd_frontend_attach()
3407 adap->fe_adap[0].fe->ops.sleep = novatd_sleep_override; in novatd_frontend_attach()
3434 static int s5h1411_frontend_attach(struct dvb_usb_adapter *adap) in s5h1411_frontend_attach() argument
3436 struct dib0700_state *st = adap->dev->priv; in s5h1411_frontend_attach()
3445 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 0); in s5h1411_frontend_attach()
3446 dib0700_set_gpio(adap->dev, GPIO3, GPIO_OUT, 0); in s5h1411_frontend_attach()
3447 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in s5h1411_frontend_attach()
3449 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in s5h1411_frontend_attach()
3451 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in s5h1411_frontend_attach()
3453 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in s5h1411_frontend_attach()
3454 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in s5h1411_frontend_attach()
3455 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in s5h1411_frontend_attach()
3456 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in s5h1411_frontend_attach()
3457 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 0); in s5h1411_frontend_attach()
3461 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 1); in s5h1411_frontend_attach()
3464 adap->fe_adap[0].fe = dvb_attach(s5h1411_attach, &pinnacle_801e_config, in s5h1411_frontend_attach()
3465 &adap->dev->i2c_adap); in s5h1411_frontend_attach()
3466 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in s5h1411_frontend_attach()
3472 struct dvb_usb_adapter *adap = priv; in dib0700_xc5000_tuner_callback() local
3476 dib0700_set_gpio(adap->dev, GPIO1, GPIO_OUT, 0); in dib0700_xc5000_tuner_callback()
3478 dib0700_set_gpio(adap->dev, GPIO1, GPIO_OUT, 1); in dib0700_xc5000_tuner_callback()
3493 static int xc5000_tuner_attach(struct dvb_usb_adapter *adap) in xc5000_tuner_attach() argument
3496 adap->fe_adap[0].fe->callback = dib0700_xc5000_tuner_callback; in xc5000_tuner_attach()
3498 return dvb_attach(xc5000_attach, adap->fe_adap[0].fe, &adap->dev->i2c_adap, in xc5000_tuner_attach()
3506 struct dvb_usb_adapter *adap = priv; in dib0700_xc4000_tuner_callback() local
3507 struct dib0700_adapter_state *state = adap->priv; in dib0700_xc4000_tuner_callback()
3511 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 0); in dib0700_xc4000_tuner_callback()
3513 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in dib0700_xc4000_tuner_callback()
3596 static int pctv340e_frontend_attach(struct dvb_usb_adapter *adap) in pctv340e_frontend_attach() argument
3598 struct dib0700_state *st = adap->dev->priv; in pctv340e_frontend_attach()
3599 struct dib0700_adapter_state *state = adap->priv; in pctv340e_frontend_attach()
3605 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in pctv340e_frontend_attach()
3607 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in pctv340e_frontend_attach()
3611 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in pctv340e_frontend_attach()
3613 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in pctv340e_frontend_attach()
3616 dib0700_set_gpio(adap->dev, GPIO8, GPIO_OUT, 1); in pctv340e_frontend_attach()
3619 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 1); in pctv340e_frontend_attach()
3622 dib0700_ctrl_clock(adap->dev, 72, 1); in pctv340e_frontend_attach()
3626 if (state->dib7000p_ops.dib7000pc_detection(&adap->dev->i2c_adap) == 0) { in pctv340e_frontend_attach()
3632 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x12, in pctv340e_frontend_attach()
3636 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in pctv340e_frontend_attach()
3647 static int xc4000_tuner_attach(struct dvb_usb_adapter *adap) in xc4000_tuner_attach() argument
3650 struct dib0700_adapter_state *state = adap->priv; in xc4000_tuner_attach()
3653 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in xc4000_tuner_attach()
3661 adap->fe_adap[0].fe->callback = dib0700_xc4000_tuner_callback; in xc4000_tuner_attach()
3663 return dvb_attach(xc4000_attach, adap->fe_adap[0].fe, tun_i2c, in xc4000_tuner_attach()
3696 static int lgdt3305_frontend_attach(struct dvb_usb_adapter *adap) in lgdt3305_frontend_attach() argument
3698 struct dib0700_state *st = adap->dev->priv; in lgdt3305_frontend_attach()
3706 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in lgdt3305_frontend_attach()
3708 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3712 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3714 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in lgdt3305_frontend_attach()
3716 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3719 adap->fe_adap[0].fe = dvb_attach(lgdt3305_attach, in lgdt3305_frontend_attach()
3721 &adap->dev->i2c_adap); in lgdt3305_frontend_attach()
3723 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in lgdt3305_frontend_attach()
3726 static int mxl5007t_tuner_attach(struct dvb_usb_adapter *adap) in mxl5007t_tuner_attach() argument
3728 return dvb_attach(mxl5007t_attach, adap->fe_adap[0].fe, in mxl5007t_tuner_attach()
3729 &adap->dev->i2c_adap, 0x60, in mxl5007t_tuner_attach()
3733 static int xbox_one_attach(struct dvb_usb_adapter *adap) in xbox_one_attach() argument
3735 struct dib0700_state *st = adap->dev->priv; in xbox_one_attach()
3737 struct dvb_usb_device *d = adap->dev; in xbox_one_attach()
3746 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in xbox_one_attach()
3748 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in xbox_one_attach()
3752 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in xbox_one_attach()
3754 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in xbox_one_attach()
3756 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in xbox_one_attach()
3760 mn88472_config.fe = &adap->fe_adap[0].fe; in xbox_one_attach()
3778 adap->fe_adap[0].fe = mn88472_config.get_dvb_frontend(client_demod); in xbox_one_attach()
3790 tda18250_config.fe = adap->fe_adap[0].fe; in xbox_one_attach()
3798 client_tuner = i2c_new_device(&adap->dev->i2c_adap, &info); in xbox_one_attach()