Lines Matching full:adap
85 static int bristol_frontend_attach(struct dvb_usb_adapter *adap) in bristol_frontend_attach() argument
87 struct dib0700_state *st = adap->dev->priv; in bristol_frontend_attach()
88 if (adap->id == 0) { in bristol_frontend_attach()
89 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
90 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); msleep(10); in bristol_frontend_attach()
91 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
92 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); msleep(10); in bristol_frontend_attach()
95 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in bristol_frontend_attach()
97 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 0); in bristol_frontend_attach()
99 …if (dib3000mc_i2c_enumeration(&adap->dev->i2c_adap, 2, DEFAULT_DIB3000P_I2C_ADDRESS, bristol_dib30… in bristol_frontend_attach()
100 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(10); in bristol_frontend_attach()
104 st->mt2060_if1[adap->id] = 1220; in bristol_frontend_attach()
105 return (adap->fe_adap[0].fe = dvb_attach(dib3000mc_attach, &adap->dev->i2c_adap, in bristol_frontend_attach()
106 (10 + adap->id) << 1, &bristol_dib3000mc_config[adap->id])) == NULL ? -ENODEV : 0; in bristol_frontend_attach()
109 static int eeprom_read(struct i2c_adapter *adap,u8 adrs,u8 *pval) in eeprom_read() argument
115 if (i2c_transfer(adap, msg, 2) != 2) return -EREMOTEIO; in eeprom_read()
119 static int bristol_tuner_attach(struct dvb_usb_adapter *adap) in bristol_tuner_attach() argument
121 struct i2c_adapter *prim_i2c = &adap->dev->i2c_adap; in bristol_tuner_attach()
122 struct i2c_adapter *tun_i2c = dib3000mc_get_tuner_i2c_master(adap->fe_adap[0].fe, 1); in bristol_tuner_attach()
125 if (adap->dev->udev->descriptor.idVendor == cpu_to_le16(USB_VID_HAUPPAUGE) && in bristol_tuner_attach()
126 adap->dev->udev->descriptor.idProduct == cpu_to_le16(USB_PID_HAUPPAUGE_NOVA_T_500_2)) { in bristol_tuner_attach()
127 if (!eeprom_read(prim_i2c,0x59 + adap->id,&a)) if1=1220+a; in bristol_tuner_attach()
129 return dvb_attach(mt2060_attach, adap->fe_adap[0].fe, tun_i2c, in bristol_tuner_attach()
130 &bristol_mt2060_config[adap->id], if1) == NULL ? in bristol_tuner_attach()
273 static int stk7700P2_frontend_attach(struct dvb_usb_adapter *adap) in stk7700P2_frontend_attach() argument
275 struct dib0700_adapter_state *state = adap->priv; in stk7700P2_frontend_attach()
280 if (adap->id == 0) { in stk7700P2_frontend_attach()
281 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700P2_frontend_attach()
283 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700P2_frontend_attach()
284 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700P2_frontend_attach()
285 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700P2_frontend_attach()
286 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700P2_frontend_attach()
288 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700P2_frontend_attach()
290 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7700P2_frontend_attach()
299 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in stk7700P2_frontend_attach()
300 0x80 + (adap->id << 1), in stk7700P2_frontend_attach()
301 &stk7700d_dib7000p_mt2266_config[adap->id]); in stk7700P2_frontend_attach()
303 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700P2_frontend_attach()
306 static int stk7700d_frontend_attach(struct dvb_usb_adapter *adap) in stk7700d_frontend_attach() argument
308 struct dib0700_adapter_state *state = adap->priv; in stk7700d_frontend_attach()
313 if (adap->id == 0) { in stk7700d_frontend_attach()
314 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700d_frontend_attach()
316 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700d_frontend_attach()
317 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700d_frontend_attach()
318 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700d_frontend_attach()
319 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700d_frontend_attach()
321 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700d_frontend_attach()
323 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700d_frontend_attach()
324 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, in stk7700d_frontend_attach()
333 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in stk7700d_frontend_attach()
334 0x80 + (adap->id << 1), in stk7700d_frontend_attach()
335 &stk7700d_dib7000p_mt2266_config[adap->id]); in stk7700d_frontend_attach()
337 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700d_frontend_attach()
340 static int stk7700d_tuner_attach(struct dvb_usb_adapter *adap) in stk7700d_tuner_attach() argument
343 struct dib0700_adapter_state *state = adap->priv; in stk7700d_tuner_attach()
345 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in stk7700d_tuner_attach()
347 return dvb_attach(mt2266_attach, adap->fe_adap[0].fe, tun_i2c, in stk7700d_tuner_attach()
348 &stk7700d_mt2266_config[adap->id]) == NULL ? -ENODEV : 0; in stk7700d_tuner_attach()
422 struct dvb_usb_adapter *adap = ptr; in stk7700ph_xc3028_callback() local
423 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_xc3028_callback()
428 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 0); in stk7700ph_xc3028_callback()
430 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in stk7700ph_xc3028_callback()
454 static int stk7700ph_frontend_attach(struct dvb_usb_adapter *adap) in stk7700ph_frontend_attach() argument
456 struct usb_device_descriptor *desc = &adap->dev->udev->descriptor; in stk7700ph_frontend_attach()
457 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_frontend_attach()
464 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7700ph_frontend_attach()
466 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7700ph_frontend_attach()
468 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700ph_frontend_attach()
469 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7700ph_frontend_attach()
470 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7700ph_frontend_attach()
471 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700ph_frontend_attach()
473 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7700ph_frontend_attach()
475 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700ph_frontend_attach()
478 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7700ph_frontend_attach()
486 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7700ph_frontend_attach()
489 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700ph_frontend_attach()
492 static int stk7700ph_tuner_attach(struct dvb_usb_adapter *adap) in stk7700ph_tuner_attach() argument
495 struct dib0700_adapter_state *state = adap->priv; in stk7700ph_tuner_attach()
497 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in stk7700ph_tuner_attach()
503 adap->fe_adap[0].fe->callback = stk7700ph_xc3028_callback; in stk7700ph_tuner_attach()
505 return dvb_attach(xc2028_attach, adap->fe_adap[0].fe, &stk7700ph_xc3028_config) in stk7700ph_tuner_attach()
701 static int stk7700p_frontend_attach(struct dvb_usb_adapter *adap) in stk7700p_frontend_attach() argument
703 struct dib0700_state *st = adap->dev->priv; in stk7700p_frontend_attach()
704 struct dib0700_adapter_state *state = adap->priv; in stk7700p_frontend_attach()
711 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7700p_frontend_attach()
712 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); msleep(50); in stk7700p_frontend_attach()
714 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); msleep(10); in stk7700p_frontend_attach()
715 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7700p_frontend_attach()
717 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); msleep(10); in stk7700p_frontend_attach()
718 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7700p_frontend_attach()
719 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); msleep(100); in stk7700p_frontend_attach()
721 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7700p_frontend_attach()
725 if (state->dib7000p_ops.dib7000pc_detection(&adap->dev->i2c_adap)) { in stk7700p_frontend_attach()
726 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 18, &stk7700p_dib7000p_config… in stk7700p_frontend_attach()
730 …adap->fe_adap[0].fe = dvb_attach(dib7000m_attach, &adap->dev->i2c_adap, 18, &stk7700p_dib7000m_con… in stk7700p_frontend_attach()
733 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7700p_frontend_attach()
740 static int stk7700p_tuner_attach(struct dvb_usb_adapter *adap) in stk7700p_tuner_attach() argument
742 struct i2c_adapter *prim_i2c = &adap->dev->i2c_adap; in stk7700p_tuner_attach()
743 struct dib0700_state *st = adap->dev->priv; in stk7700p_tuner_attach()
745 struct dib0700_adapter_state *state = adap->priv; in stk7700p_tuner_attach()
749 if (adap->dev->udev->descriptor.idVendor == cpu_to_le16(USB_VID_HAUPPAUGE) && in stk7700p_tuner_attach()
750 adap->dev->udev->descriptor.idProduct == cpu_to_le16(USB_PID_HAUPPAUGE_NOVA_T_STICK)) { in stk7700p_tuner_attach()
754 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in stk7700p_tuner_attach()
756 tun_i2c = dib7000m_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in stk7700p_tuner_attach()
758 return dvb_attach(mt2060_attach, adap->fe_adap[0].fe, tun_i2c, &stk7700p_mt2060_config, in stk7700p_tuner_attach()
798 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_tuner_reset() local
799 struct dib0700_adapter_state *state = adap->priv; in dib7070_tuner_reset()
807 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_tuner_sleep() local
808 struct dib0700_adapter_state *state = adap->priv; in dib7070_tuner_sleep()
844 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7070_set_param_override() local
845 struct dib0700_adapter_state *state = adap->priv; in dib7070_set_param_override()
862 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7770_set_param_override() local
863 struct dib0700_adapter_state *state = adap->priv; in dib7770_set_param_override()
883 static int dib7770p_tuner_attach(struct dvb_usb_adapter *adap) in dib7770p_tuner_attach() argument
885 struct dib0700_adapter_state *st = adap->priv; in dib7770p_tuner_attach()
886 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in dib7770p_tuner_attach()
889 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib7770p_tuner_attach()
893 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib7770p_tuner_attach()
894 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7770_set_param_override; in dib7770p_tuner_attach()
898 static int dib7070p_tuner_attach(struct dvb_usb_adapter *adap) in dib7070p_tuner_attach() argument
900 struct dib0700_adapter_state *st = adap->priv; in dib7070p_tuner_attach()
901 …struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INT… in dib7070p_tuner_attach()
903 if (adap->id == 0) { in dib7070p_tuner_attach()
904 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, &dib7070p_dib0070_config[0]) == NULL) in dib7070p_tuner_attach()
907 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, &dib7070p_dib0070_config[1]) == NULL) in dib7070p_tuner_attach()
911 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib7070p_tuner_attach()
912 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7070_set_param_override; in dib7070p_tuner_attach()
984 static int stk7070p_frontend_attach(struct dvb_usb_adapter *adap) in stk7070p_frontend_attach() argument
986 struct usb_device_descriptor *p = &adap->dev->udev->descriptor; in stk7070p_frontend_attach()
987 struct dib0700_adapter_state *state = adap->priv; in stk7070p_frontend_attach()
994 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7070p_frontend_attach()
996 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7070p_frontend_attach()
998 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7070p_frontend_attach()
999 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7070p_frontend_attach()
1000 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7070p_frontend_attach()
1001 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7070p_frontend_attach()
1003 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7070p_frontend_attach()
1006 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7070p_frontend_attach()
1008 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7070p_frontend_attach()
1010 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7070p_frontend_attach()
1018 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7070p_frontend_attach()
1020 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070p_frontend_attach()
1042 static int stk7770p_frontend_attach(struct dvb_usb_adapter *adap) in stk7770p_frontend_attach() argument
1044 struct usb_device_descriptor *p = &adap->dev->udev->descriptor; in stk7770p_frontend_attach()
1045 struct dib0700_adapter_state *state = adap->priv; in stk7770p_frontend_attach()
1052 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk7770p_frontend_attach()
1054 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk7770p_frontend_attach()
1056 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk7770p_frontend_attach()
1057 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk7770p_frontend_attach()
1058 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk7770p_frontend_attach()
1059 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk7770p_frontend_attach()
1061 dib0700_ctrl_clock(adap->dev, 72, 1); in stk7770p_frontend_attach()
1064 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk7770p_frontend_attach()
1066 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7770p_frontend_attach()
1068 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk7770p_frontend_attach()
1076 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, in stk7770p_frontend_attach()
1078 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7770p_frontend_attach()
1232 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib80xx_tuner_reset() local
1233 struct dib0700_adapter_state *state = adap->priv; in dib80xx_tuner_reset()
1240 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib80xx_tuner_sleep() local
1241 struct dib0700_adapter_state *state = adap->priv; in dib80xx_tuner_sleep()
1286 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib807x_set_param_override() local
1287 struct dib0700_adapter_state *state = adap->priv; in dib807x_set_param_override()
1305 static int dib807x_tuner_attach(struct dvb_usb_adapter *adap) in dib807x_tuner_attach() argument
1307 struct dib0700_adapter_state *st = adap->priv; in dib807x_tuner_attach()
1308 struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, in dib807x_tuner_attach()
1311 if (adap->id == 0) { in dib807x_tuner_attach()
1312 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib807x_tuner_attach()
1316 if (dvb_attach(dib0070_attach, adap->fe_adap[0].fe, tun_i2c, in dib807x_tuner_attach()
1321 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib807x_tuner_attach()
1322 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib807x_set_param_override; in dib807x_tuner_attach()
1343 static int stk807x_frontend_attach(struct dvb_usb_adapter *adap) in stk807x_frontend_attach() argument
1345 struct dib0700_adapter_state *state = adap->priv; in stk807x_frontend_attach()
1350 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk807x_frontend_attach()
1352 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk807x_frontend_attach()
1353 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk807x_frontend_attach()
1354 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk807x_frontend_attach()
1356 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk807x_frontend_attach()
1358 dib0700_ctrl_clock(adap->dev, 72, 1); in stk807x_frontend_attach()
1361 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk807x_frontend_attach()
1363 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk807x_frontend_attach()
1365 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, in stk807x_frontend_attach()
1368 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, in stk807x_frontend_attach()
1371 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807x_frontend_attach()
1375 static int stk807xpvr_frontend_attach0(struct dvb_usb_adapter *adap) in stk807xpvr_frontend_attach0() argument
1377 struct dib0700_adapter_state *state = adap->priv; in stk807xpvr_frontend_attach0()
1382 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in stk807xpvr_frontend_attach0()
1384 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1386 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1387 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1388 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1390 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk807xpvr_frontend_attach0()
1392 dib0700_ctrl_clock(adap->dev, 72, 1); in stk807xpvr_frontend_attach0()
1395 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1397 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk807xpvr_frontend_attach0()
1400 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x22, 0x80, 0); in stk807xpvr_frontend_attach0()
1402 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, in stk807xpvr_frontend_attach0()
1405 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807xpvr_frontend_attach0()
1408 static int stk807xpvr_frontend_attach1(struct dvb_usb_adapter *adap) in stk807xpvr_frontend_attach1() argument
1410 struct dib0700_adapter_state *state = adap->priv; in stk807xpvr_frontend_attach1()
1416 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x12, 0x82, 0); in stk807xpvr_frontend_attach1()
1418 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, in stk807xpvr_frontend_attach1()
1421 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk807xpvr_frontend_attach1()
1538 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8090_get_adc_power() local
1539 struct dib0700_adapter_state *state = adap->priv; in dib8090_get_adc_power()
1652 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8096_set_param_override() local
1653 struct dib0700_adapter_state *state = adap->priv; in dib8096_set_param_override()
1736 static int dib809x_tuner_attach(struct dvb_usb_adapter *adap) in dib809x_tuner_attach() argument
1738 struct dib0700_adapter_state *st = adap->priv; in dib809x_tuner_attach()
1739 …struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTE… in dib809x_tuner_attach()
1741 /* FIXME: if adap->id != 0, check if it is fe_adap[1] */ in dib809x_tuner_attach()
1742 if (!dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config)) in dib809x_tuner_attach()
1745 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in dib809x_tuner_attach()
1746 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096_set_param_override; in dib809x_tuner_attach()
1750 static int stk809x_frontend_attach(struct dvb_usb_adapter *adap) in stk809x_frontend_attach() argument
1752 struct dib0700_adapter_state *state = adap->priv; in stk809x_frontend_attach()
1757 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk809x_frontend_attach()
1759 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk809x_frontend_attach()
1760 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk809x_frontend_attach()
1761 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk809x_frontend_attach()
1763 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk809x_frontend_attach()
1765 dib0700_ctrl_clock(adap->dev, 72, 1); in stk809x_frontend_attach()
1768 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk809x_frontend_attach()
1770 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk809x_frontend_attach()
1772 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 18, 0x80, 0); in stk809x_frontend_attach()
1774 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, &dib809x_dib8000_config[… in stk809x_frontend_attach()
1776 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk809x_frontend_attach()
1779 static int stk809x_frontend1_attach(struct dvb_usb_adapter *adap) in stk809x_frontend1_attach() argument
1781 struct dib0700_adapter_state *state = adap->priv; in stk809x_frontend1_attach()
1786 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x82, 0); in stk809x_frontend1_attach()
1788 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, &dib809x_dib8000_config[… in stk809x_frontend1_attach()
1790 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk809x_frontend1_attach()
1793 static int nim8096md_tuner_attach(struct dvb_usb_adapter *adap) in nim8096md_tuner_attach() argument
1795 struct dib0700_adapter_state *st = adap->priv; in nim8096md_tuner_attach()
1797 struct dvb_frontend *fe_slave = st->dib8000_ops.get_slave_frontend(adap->fe_adap[0].fe, 1); in nim8096md_tuner_attach()
1803 fe_slave->dvb = adap->fe_adap[0].fe->dvb; in nim8096md_tuner_attach()
1806 tun_i2c = st->dib8000_ops.get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_TUNER, 1); in nim8096md_tuner_attach()
1807 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &dib809x_dib0090_config) == NULL) in nim8096md_tuner_attach()
1810 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in nim8096md_tuner_attach()
1811 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096_set_param_override; in nim8096md_tuner_attach()
1816 static int nim8096md_frontend_attach(struct dvb_usb_adapter *adap) in nim8096md_frontend_attach() argument
1819 struct dib0700_adapter_state *state = adap->priv; in nim8096md_frontend_attach()
1824 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in nim8096md_frontend_attach()
1826 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim8096md_frontend_attach()
1828 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim8096md_frontend_attach()
1829 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim8096md_frontend_attach()
1830 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim8096md_frontend_attach()
1832 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim8096md_frontend_attach()
1834 dib0700_ctrl_clock(adap->dev, 72, 1); in nim8096md_frontend_attach()
1837 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim8096md_frontend_attach()
1839 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim8096md_frontend_attach()
1841 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, 0x80, 0); in nim8096md_frontend_attach()
1843 …adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x80, &dib809x_dib8000_config[… in nim8096md_frontend_attach()
1844 if (adap->fe_adap[0].fe == NULL) in nim8096md_frontend_attach()
1851 fe_slave = state->dib8000_ops.init(&adap->dev->i2c_adap, 0x82, &dib809x_dib8000_config[1]); in nim8096md_frontend_attach()
1852 state->dib8000_ops.set_slave_frontend(adap->fe_adap[0].fe, fe_slave); in nim8096md_frontend_attach()
2107 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8096p_agc_startup() local
2108 struct dib0700_adapter_state *state = adap->priv; in dib8096p_agc_startup()
2129 dib0700_set_i2c_speed(adap->dev, 200); in dib8096p_agc_startup()
2132 dib0700_set_i2c_speed(adap->dev, 1000); in dib8096p_agc_startup()
2137 static int tfe8096p_frontend_attach(struct dvb_usb_adapter *adap) in tfe8096p_frontend_attach() argument
2139 struct dib0700_state *st = adap->dev->priv; in tfe8096p_frontend_attach()
2141 struct dib0700_adapter_state *state = adap->priv; in tfe8096p_frontend_attach()
2146 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in tfe8096p_frontend_attach()
2150 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2152 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2153 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2154 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2156 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe8096p_frontend_attach()
2158 dib0700_ctrl_clock(adap->dev, 72, 1); in tfe8096p_frontend_attach()
2161 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2163 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2165 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80, 1); in tfe8096p_frontend_attach()
2167 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, in tfe8096p_frontend_attach()
2170 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe8096p_frontend_attach()
2173 static int tfe8096p_tuner_attach(struct dvb_usb_adapter *adap) in tfe8096p_tuner_attach() argument
2175 struct dib0700_adapter_state *st = adap->priv; in tfe8096p_tuner_attach()
2176 struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe8096p_tuner_attach()
2182 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, in tfe8096p_tuner_attach()
2186 st->dib8000_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe8096p_tuner_attach()
2188 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe8096p_tuner_attach()
2189 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096p_agc_startup; in tfe8096p_tuner_attach()
2376 static int stk9090m_frontend_attach(struct dvb_usb_adapter *adap) in stk9090m_frontend_attach() argument
2378 struct dib0700_adapter_state *state = adap->priv; in stk9090m_frontend_attach()
2379 struct dib0700_state *st = adap->dev->priv; in stk9090m_frontend_attach()
2383 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in stk9090m_frontend_attach()
2386 dib0700_set_i2c_speed(adap->dev, 340); in stk9090m_frontend_attach()
2388 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk9090m_frontend_attach()
2390 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk9090m_frontend_attach()
2391 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk9090m_frontend_attach()
2392 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk9090m_frontend_attach()
2393 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk9090m_frontend_attach()
2395 dib0700_ctrl_clock(adap->dev, 72, 1); in stk9090m_frontend_attach()
2398 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk9090m_frontend_attach()
2400 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk9090m_frontend_attach()
2402 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80); in stk9090m_frontend_attach()
2404 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in stk9090m_frontend_attach()
2413 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &stk9090m_config); in stk9090m_frontend_attach()
2415 if (!adap->fe_adap[0].fe) { in stk9090m_frontend_attach()
2423 static int dib9090_tuner_attach(struct dvb_usb_adapter *adap) in dib9090_tuner_attach() argument
2425 struct dib0700_adapter_state *state = adap->priv; in dib9090_tuner_attach()
2426 struct i2c_adapter *i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in dib9090_tuner_attach()
2437 if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &dib9090_dib0090_config) == NULL) in dib9090_tuner_attach()
2439 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_1_2, 0); in dib9090_tuner_attach()
2444 dib0700_set_i2c_speed(adap->dev, 1500); in dib9090_tuner_attach()
2445 if (dib9000_firmware_post_pll_init(adap->fe_adap[0].fe) < 0) in dib9090_tuner_attach()
2451 static int nim9090md_frontend_attach(struct dvb_usb_adapter *adap) in nim9090md_frontend_attach() argument
2453 struct dib0700_adapter_state *state = adap->priv; in nim9090md_frontend_attach()
2454 struct dib0700_state *st = adap->dev->priv; in nim9090md_frontend_attach()
2460 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in nim9090md_frontend_attach()
2463 dib0700_set_i2c_speed(adap->dev, 340); in nim9090md_frontend_attach()
2465 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim9090md_frontend_attach()
2467 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim9090md_frontend_attach()
2468 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim9090md_frontend_attach()
2469 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim9090md_frontend_attach()
2470 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim9090md_frontend_attach()
2472 dib0700_ctrl_clock(adap->dev, 72, 1); in nim9090md_frontend_attach()
2475 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim9090md_frontend_attach()
2477 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim9090md_frontend_attach()
2479 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in nim9090md_frontend_attach()
2490 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x20, 0x80); in nim9090md_frontend_attach()
2491 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &nim9090md_config[0]); in nim9090md_frontend_attach()
2493 if (!adap->fe_adap[0].fe) { in nim9090md_frontend_attach()
2498 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_3_4, 0); in nim9090md_frontend_attach()
2502 dib9000_set_slave_frontend(adap->fe_adap[0].fe, fe_slave); in nim9090md_frontend_attach()
2512 static int nim9090md_tuner_attach(struct dvb_usb_adapter *adap) in nim9090md_tuner_attach() argument
2514 struct dib0700_adapter_state *state = adap->priv; in nim9090md_tuner_attach()
2526 i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in nim9090md_tuner_attach()
2527 …if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &nim9090md_dib0090_config[0]) == NUL… in nim9090md_tuner_attach()
2529 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_1_2, 0); in nim9090md_tuner_attach()
2535 dib0700_set_i2c_speed(adap->dev, 1500); in nim9090md_tuner_attach()
2536 if (dib9000_firmware_post_pll_init(adap->fe_adap[0].fe) < 0) in nim9090md_tuner_attach()
2539 fe_slave = dib9000_get_slave_frontend(adap->fe_adap[0].fe, 1); in nim9090md_tuner_attach()
2541 i2c = dib9000_get_component_bus_interface(adap->fe_adap[0].fe); in nim9090md_tuner_attach()
2547 fe_slave->dvb = adap->fe_adap[0].fe->dvb; in nim9090md_tuner_attach()
2548 dib9000_fw_set_component_bus_speed(adap->fe_adap[0].fe, 1500); in nim9090md_tuner_attach()
2633 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib7090_agc_startup() local
2634 struct dib0700_adapter_state *state = adap->priv; in dib7090_agc_startup()
2669 struct dvb_usb_adapter *adap = fe->dvb->priv; in tfe7790p_update_lna() local
2670 struct dib0700_adapter_state *state = adap->priv; in tfe7790p_update_lna()
2824 struct dvb_usb_adapter *adap = fe->dvb->priv; in tfe7090p_pvr_update_lna() local
2825 struct dib0700_adapter_state *state = adap->priv; in tfe7090p_pvr_update_lna()
3048 static int nim7090_frontend_attach(struct dvb_usb_adapter *adap) in nim7090_frontend_attach() argument
3050 struct dib0700_adapter_state *state = adap->priv; in nim7090_frontend_attach()
3055 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim7090_frontend_attach()
3057 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim7090_frontend_attach()
3058 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim7090_frontend_attach()
3059 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim7090_frontend_attach()
3060 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim7090_frontend_attach()
3063 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim7090_frontend_attach()
3065 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim7090_frontend_attach()
3067 …if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, &nim7090_dib7000p_config) !… in nim7090_frontend_attach()
3072 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, &nim7090_dib7000p_confi… in nim7090_frontend_attach()
3074 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in nim7090_frontend_attach()
3077 static int nim7090_tuner_attach(struct dvb_usb_adapter *adap) in nim7090_tuner_attach() argument
3079 struct dib0700_adapter_state *st = adap->priv; in nim7090_tuner_attach()
3080 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in nim7090_tuner_attach()
3086 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &nim7090_dib0090_config) == NULL) in nim7090_tuner_attach()
3089 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in nim7090_tuner_attach()
3091 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in nim7090_tuner_attach()
3092 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in nim7090_tuner_attach()
3096 static int tfe7090pvr_frontend0_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_frontend0_attach() argument
3098 struct dib0700_state *st = adap->dev->priv; in tfe7090pvr_frontend0_attach()
3099 struct dib0700_adapter_state *state = adap->priv; in tfe7090pvr_frontend0_attach()
3107 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3109 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3110 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3111 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3112 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe7090pvr_frontend0_attach()
3115 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3117 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe7090pvr_frontend0_attach()
3120 …if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x20, &tfe7090pvr_dib7000p_config… in tfe7090pvr_frontend0_attach()
3126 dib0700_set_i2c_speed(adap->dev, 340); in tfe7090pvr_frontend0_attach()
3127 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x90, &tfe7090pvr_dib7000p_co… in tfe7090pvr_frontend0_attach()
3128 if (adap->fe_adap[0].fe == NULL) in tfe7090pvr_frontend0_attach()
3131 state->dib7000p_ops.slave_reset(adap->fe_adap[0].fe); in tfe7090pvr_frontend0_attach()
3136 static int tfe7090pvr_frontend1_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_frontend1_attach() argument
3139 struct dib0700_adapter_state *state = adap->priv; in tfe7090pvr_frontend1_attach()
3141 if (adap->dev->adapter[0].fe_adap[0].fe == NULL) { in tfe7090pvr_frontend1_attach()
3149 …i2c = state->dib7000p_ops.get_i2c_master(adap->dev->adapter[0].fe_adap[0].fe, DIBX000_I2C_INTERFAC… in tfe7090pvr_frontend1_attach()
3156 adap->fe_adap[0].fe = state->dib7000p_ops.init(i2c, 0x92, &tfe7090pvr_dib7000p_config[1]); in tfe7090pvr_frontend1_attach()
3157 dib0700_set_i2c_speed(adap->dev, 200); in tfe7090pvr_frontend1_attach()
3159 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe7090pvr_frontend1_attach()
3162 static int tfe7090pvr_tuner0_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_tuner0_attach() argument
3164 struct dib0700_adapter_state *st = adap->priv; in tfe7090pvr_tuner0_attach()
3165 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7090pvr_tuner0_attach()
3171 …if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &tfe7090pvr_dib0090_config[0]) == N… in tfe7090pvr_tuner0_attach()
3174 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7090pvr_tuner0_attach()
3176 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7090pvr_tuner0_attach()
3177 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7090pvr_tuner0_attach()
3181 static int tfe7090pvr_tuner1_attach(struct dvb_usb_adapter *adap) in tfe7090pvr_tuner1_attach() argument
3183 struct dib0700_adapter_state *st = adap->priv; in tfe7090pvr_tuner1_attach()
3184 struct i2c_adapter *tun_i2c = st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7090pvr_tuner1_attach()
3190 …if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, &tfe7090pvr_dib0090_config[1]) == N… in tfe7090pvr_tuner1_attach()
3193 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7090pvr_tuner1_attach()
3195 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7090pvr_tuner1_attach()
3196 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7090pvr_tuner1_attach()
3200 static int tfe7790p_frontend_attach(struct dvb_usb_adapter *adap) in tfe7790p_frontend_attach() argument
3202 struct dib0700_state *st = adap->dev->priv; in tfe7790p_frontend_attach()
3203 struct dib0700_adapter_state *state = adap->priv; in tfe7790p_frontend_attach()
3211 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3213 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3214 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3215 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3216 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe7790p_frontend_attach()
3218 dib0700_ctrl_clock(adap->dev, 72, 1); in tfe7790p_frontend_attach()
3219 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3221 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe7790p_frontend_attach()
3223 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, in tfe7790p_frontend_attach()
3230 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, in tfe7790p_frontend_attach()
3233 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe7790p_frontend_attach()
3236 static int tfe7790p_tuner_attach(struct dvb_usb_adapter *adap) in tfe7790p_tuner_attach() argument
3238 struct dib0700_adapter_state *st = adap->priv; in tfe7790p_tuner_attach()
3240 st->dib7000p_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe7790p_tuner_attach()
3247 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, in tfe7790p_tuner_attach()
3251 st->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe7790p_tuner_attach()
3253 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe7790p_tuner_attach()
3254 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib7090_agc_startup; in tfe7790p_tuner_attach()
3306 static int stk7070pd_frontend_attach0(struct dvb_usb_adapter *adap) in stk7070pd_frontend_attach0() argument
3308 struct dib0700_adapter_state *state = adap->priv; in stk7070pd_frontend_attach0()
3313 stk7070pd_init(adap->dev); in stk7070pd_frontend_attach0()
3316 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk7070pd_frontend_attach0()
3318 if (state->dib7000p_ops.i2c_enumeration(&adap->dev->i2c_adap, 2, 18, in stk7070pd_frontend_attach0()
3326 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x80, &stk7070pd_dib7000p_con… in stk7070pd_frontend_attach0()
3327 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070pd_frontend_attach0()
3330 static int stk7070pd_frontend_attach1(struct dvb_usb_adapter *adap) in stk7070pd_frontend_attach1() argument
3332 struct dib0700_adapter_state *state = adap->priv; in stk7070pd_frontend_attach1()
3337 …adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x82, &stk7070pd_dib7000p_con… in stk7070pd_frontend_attach1()
3338 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk7070pd_frontend_attach1()
3344 struct dvb_usb_adapter *adap = fe->dvb->priv; in novatd_read_status_override() local
3345 struct dvb_usb_device *dev = adap->dev; in novatd_read_status_override()
3352 dib0700_set_gpio(dev, adap->id == 0 ? GPIO1 : GPIO0, GPIO_OUT, in novatd_read_status_override()
3360 struct dvb_usb_adapter *adap = fe->dvb->priv; in novatd_sleep_override() local
3361 struct dvb_usb_device *dev = adap->dev; in novatd_sleep_override()
3365 dib0700_set_gpio(dev, adap->id == 0 ? GPIO1 : GPIO0, GPIO_OUT, 0); in novatd_sleep_override()
3376 static int novatd_frontend_attach(struct dvb_usb_adapter *adap) in novatd_frontend_attach() argument
3378 struct dvb_usb_device *dev = adap->dev; in novatd_frontend_attach()
3380 struct dib0700_adapter_state *state = adap->priv; in novatd_frontend_attach()
3385 if (adap->id == 0) { in novatd_frontend_attach()
3402 adap->fe_adap[0].fe = state->dib7000p_ops.init(&dev->i2c_adap, in novatd_frontend_attach()
3403 adap->id == 0 ? 0x80 : 0x82, in novatd_frontend_attach()
3404 &stk7070pd_dib7000p_config[adap->id]); in novatd_frontend_attach()
3406 if (adap->fe_adap[0].fe == NULL) in novatd_frontend_attach()
3409 st->read_status = adap->fe_adap[0].fe->ops.read_status; in novatd_frontend_attach()
3410 adap->fe_adap[0].fe->ops.read_status = novatd_read_status_override; in novatd_frontend_attach()
3411 st->sleep = adap->fe_adap[0].fe->ops.sleep; in novatd_frontend_attach()
3412 adap->fe_adap[0].fe->ops.sleep = novatd_sleep_override; in novatd_frontend_attach()
3439 static int s5h1411_frontend_attach(struct dvb_usb_adapter *adap) in s5h1411_frontend_attach() argument
3441 struct dib0700_state *st = adap->dev->priv; in s5h1411_frontend_attach()
3450 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 0); in s5h1411_frontend_attach()
3451 dib0700_set_gpio(adap->dev, GPIO3, GPIO_OUT, 0); in s5h1411_frontend_attach()
3452 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in s5h1411_frontend_attach()
3454 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in s5h1411_frontend_attach()
3456 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in s5h1411_frontend_attach()
3458 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in s5h1411_frontend_attach()
3459 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in s5h1411_frontend_attach()
3460 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in s5h1411_frontend_attach()
3461 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in s5h1411_frontend_attach()
3462 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 0); in s5h1411_frontend_attach()
3466 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 1); in s5h1411_frontend_attach()
3469 adap->fe_adap[0].fe = dvb_attach(s5h1411_attach, &pinnacle_801e_config, in s5h1411_frontend_attach()
3470 &adap->dev->i2c_adap); in s5h1411_frontend_attach()
3471 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in s5h1411_frontend_attach()
3477 struct dvb_usb_adapter *adap = priv; in dib0700_xc5000_tuner_callback() local
3481 dib0700_set_gpio(adap->dev, GPIO1, GPIO_OUT, 0); in dib0700_xc5000_tuner_callback()
3483 dib0700_set_gpio(adap->dev, GPIO1, GPIO_OUT, 1); in dib0700_xc5000_tuner_callback()
3498 static int xc5000_tuner_attach(struct dvb_usb_adapter *adap) in xc5000_tuner_attach() argument
3501 adap->fe_adap[0].fe->callback = dib0700_xc5000_tuner_callback; in xc5000_tuner_attach()
3503 return dvb_attach(xc5000_attach, adap->fe_adap[0].fe, &adap->dev->i2c_adap, in xc5000_tuner_attach()
3511 struct dvb_usb_adapter *adap = priv; in dib0700_xc4000_tuner_callback() local
3512 struct dib0700_adapter_state *state = adap->priv; in dib0700_xc4000_tuner_callback()
3516 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 0); in dib0700_xc4000_tuner_callback()
3518 state->dib7000p_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in dib0700_xc4000_tuner_callback()
3601 static int pctv340e_frontend_attach(struct dvb_usb_adapter *adap) in pctv340e_frontend_attach() argument
3603 struct dib0700_state *st = adap->dev->priv; in pctv340e_frontend_attach()
3604 struct dib0700_adapter_state *state = adap->priv; in pctv340e_frontend_attach()
3610 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in pctv340e_frontend_attach()
3612 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in pctv340e_frontend_attach()
3616 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in pctv340e_frontend_attach()
3618 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in pctv340e_frontend_attach()
3621 dib0700_set_gpio(adap->dev, GPIO8, GPIO_OUT, 1); in pctv340e_frontend_attach()
3624 dib0700_set_gpio(adap->dev, GPIO2, GPIO_OUT, 1); in pctv340e_frontend_attach()
3627 dib0700_ctrl_clock(adap->dev, 72, 1); in pctv340e_frontend_attach()
3631 if (state->dib7000p_ops.dib7000pc_detection(&adap->dev->i2c_adap) == 0) { in pctv340e_frontend_attach()
3637 adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 0x12, in pctv340e_frontend_attach()
3641 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in pctv340e_frontend_attach()
3652 static int xc4000_tuner_attach(struct dvb_usb_adapter *adap) in xc4000_tuner_attach() argument
3655 struct dib0700_adapter_state *state = adap->priv; in xc4000_tuner_attach()
3658 tun_i2c = state->dib7000p_ops.get_i2c_master(adap->fe_adap[0].fe, in xc4000_tuner_attach()
3666 adap->fe_adap[0].fe->callback = dib0700_xc4000_tuner_callback; in xc4000_tuner_attach()
3668 return dvb_attach(xc4000_attach, adap->fe_adap[0].fe, tun_i2c, in xc4000_tuner_attach()
3701 static int lgdt3305_frontend_attach(struct dvb_usb_adapter *adap) in lgdt3305_frontend_attach() argument
3703 struct dib0700_state *st = adap->dev->priv; in lgdt3305_frontend_attach()
3711 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in lgdt3305_frontend_attach()
3713 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3717 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3719 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in lgdt3305_frontend_attach()
3721 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in lgdt3305_frontend_attach()
3724 adap->fe_adap[0].fe = dvb_attach(lgdt3305_attach, in lgdt3305_frontend_attach()
3726 &adap->dev->i2c_adap); in lgdt3305_frontend_attach()
3728 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in lgdt3305_frontend_attach()
3731 static int mxl5007t_tuner_attach(struct dvb_usb_adapter *adap) in mxl5007t_tuner_attach() argument
3733 return dvb_attach(mxl5007t_attach, adap->fe_adap[0].fe, in mxl5007t_tuner_attach()
3734 &adap->dev->i2c_adap, 0x60, in mxl5007t_tuner_attach()
3738 static int xbox_one_attach(struct dvb_usb_adapter *adap) in xbox_one_attach() argument
3740 struct dib0700_state *st = adap->dev->priv; in xbox_one_attach()
3742 struct dvb_usb_device *d = adap->dev; in xbox_one_attach()
3751 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 0); in xbox_one_attach()
3753 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in xbox_one_attach()
3757 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in xbox_one_attach()
3759 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in xbox_one_attach()
3761 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in xbox_one_attach()
3765 mn88472_config.fe = &adap->fe_adap[0].fe; in xbox_one_attach()
3783 adap->fe_adap[0].fe = mn88472_config.get_dvb_frontend(client_demod); in xbox_one_attach()
3795 tda18250_config.fe = adap->fe_adap[0].fe; in xbox_one_attach()
3803 client_tuner = i2c_new_client_device(&adap->dev->i2c_adap, &info); in xbox_one_attach()