• Home
  • Raw
  • Download

Lines Matching refs: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()
726adap->fe_adap[0].fe = state->dib7000p_ops.init(&adap->dev->i2c_adap, 18, &stk7700p_dib7000p_config… in stk7700p_frontend_attach()
730adap->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()
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()
1774adap->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()
1788adap->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()
1843adap->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()
2114 struct dvb_usb_adapter *adap = fe->dvb->priv; in dib8096p_agc_startup() local
2115 struct dib0700_adapter_state *state = adap->priv; in dib8096p_agc_startup()
2136 dib0700_set_i2c_speed(adap->dev, 200); in dib8096p_agc_startup()
2139 dib0700_set_i2c_speed(adap->dev, 1000); in dib8096p_agc_startup()
2144 static int tfe8096p_frontend_attach(struct dvb_usb_adapter *adap) in tfe8096p_frontend_attach() argument
2146 struct dib0700_state *st = adap->dev->priv; in tfe8096p_frontend_attach()
2148 struct dib0700_adapter_state *state = adap->priv; in tfe8096p_frontend_attach()
2153 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in tfe8096p_frontend_attach()
2157 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2159 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2160 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2161 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2163 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in tfe8096p_frontend_attach()
2165 dib0700_ctrl_clock(adap->dev, 72, 1); in tfe8096p_frontend_attach()
2168 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2170 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in tfe8096p_frontend_attach()
2172 state->dib8000_ops.i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80, 1); in tfe8096p_frontend_attach()
2174 adap->fe_adap[0].fe = state->dib8000_ops.init(&adap->dev->i2c_adap, in tfe8096p_frontend_attach()
2177 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in tfe8096p_frontend_attach()
2180 static int tfe8096p_tuner_attach(struct dvb_usb_adapter *adap) in tfe8096p_tuner_attach() argument
2182 struct dib0700_adapter_state *st = adap->priv; in tfe8096p_tuner_attach()
2183 struct i2c_adapter *tun_i2c = st->dib8000_ops.get_i2c_tuner(adap->fe_adap[0].fe); in tfe8096p_tuner_attach()
2189 if (dvb_attach(dib0090_register, adap->fe_adap[0].fe, tun_i2c, in tfe8096p_tuner_attach()
2193 st->dib8000_ops.set_gpio(adap->fe_adap[0].fe, 8, 0, 1); in tfe8096p_tuner_attach()
2195 st->set_param_save = adap->fe_adap[0].fe->ops.tuner_ops.set_params; in tfe8096p_tuner_attach()
2196 adap->fe_adap[0].fe->ops.tuner_ops.set_params = dib8096p_agc_startup; in tfe8096p_tuner_attach()
2383 static int stk9090m_frontend_attach(struct dvb_usb_adapter *adap) in stk9090m_frontend_attach() argument
2385 struct dib0700_adapter_state *state = adap->priv; in stk9090m_frontend_attach()
2386 struct dib0700_state *st = adap->dev->priv; in stk9090m_frontend_attach()
2390 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in stk9090m_frontend_attach()
2393 dib0700_set_i2c_speed(adap->dev, 340); in stk9090m_frontend_attach()
2395 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in stk9090m_frontend_attach()
2397 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in stk9090m_frontend_attach()
2398 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in stk9090m_frontend_attach()
2399 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in stk9090m_frontend_attach()
2400 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in stk9090m_frontend_attach()
2402 dib0700_ctrl_clock(adap->dev, 72, 1); in stk9090m_frontend_attach()
2405 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in stk9090m_frontend_attach()
2407 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in stk9090m_frontend_attach()
2409 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80); in stk9090m_frontend_attach()
2411 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in stk9090m_frontend_attach()
2420 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &stk9090m_config); in stk9090m_frontend_attach()
2422 return adap->fe_adap[0].fe == NULL ? -ENODEV : 0; in stk9090m_frontend_attach()
2425 static int dib9090_tuner_attach(struct dvb_usb_adapter *adap) in dib9090_tuner_attach() argument
2427 struct dib0700_adapter_state *state = adap->priv; in dib9090_tuner_attach()
2428 struct i2c_adapter *i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in dib9090_tuner_attach()
2439 if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &dib9090_dib0090_config) == NULL) in dib9090_tuner_attach()
2441 i2c = dib9000_get_i2c_master(adap->fe_adap[0].fe, DIBX000_I2C_INTERFACE_GPIO_1_2, 0); in dib9090_tuner_attach()
2446 dib0700_set_i2c_speed(adap->dev, 1500); in dib9090_tuner_attach()
2447 if (dib9000_firmware_post_pll_init(adap->fe_adap[0].fe) < 0) in dib9090_tuner_attach()
2453 static int nim9090md_frontend_attach(struct dvb_usb_adapter *adap) in nim9090md_frontend_attach() argument
2455 struct dib0700_adapter_state *state = adap->priv; in nim9090md_frontend_attach()
2456 struct dib0700_state *st = adap->dev->priv; in nim9090md_frontend_attach()
2462 dib0700_get_version(adap->dev, NULL, NULL, &fw_version, NULL); in nim9090md_frontend_attach()
2465 dib0700_set_i2c_speed(adap->dev, 340); in nim9090md_frontend_attach()
2467 dib0700_set_gpio(adap->dev, GPIO6, GPIO_OUT, 1); in nim9090md_frontend_attach()
2469 dib0700_set_gpio(adap->dev, GPIO9, GPIO_OUT, 1); in nim9090md_frontend_attach()
2470 dib0700_set_gpio(adap->dev, GPIO4, GPIO_OUT, 1); in nim9090md_frontend_attach()
2471 dib0700_set_gpio(adap->dev, GPIO7, GPIO_OUT, 1); in nim9090md_frontend_attach()
2472 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 0); in nim9090md_frontend_attach()
2474 dib0700_ctrl_clock(adap->dev, 72, 1); in nim9090md_frontend_attach()
2477 dib0700_set_gpio(adap->dev, GPIO10, GPIO_OUT, 1); in nim9090md_frontend_attach()
2479 dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1); in nim9090md_frontend_attach()
2481 if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) { in nim9090md_frontend_attach()
2492 dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x20, 0x80); in nim9090md_frontend_attach()
2493 adap->fe_adap[0].fe = dvb_attach(dib9000_attach, &adap->dev->i2c_adap, 0x80, &nim9090md_config[0]); in nim9090md_frontend_attach()
2495 if (adap->fe_adap[0].fe == NULL) 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()
2507 static int nim9090md_tuner_attach(struct dvb_usb_adapter *adap) in nim9090md_tuner_attach() argument
2509 struct dib0700_adapter_state *state = adap->priv; in nim9090md_tuner_attach()
2521 i2c = dib9000_get_tuner_interface(adap->fe_adap[0].fe); in nim9090md_tuner_attach()
2522 …if (dvb_attach(dib0090_fw_register, adap->fe_adap[0].fe, i2c, &nim9090md_dib0090_config[0]) == NUL… in nim9090md_tuner_attach()
2524 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()
3067adap->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()
3122adap->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()
3321adap->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()
3332adap->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_client_device(&adap->dev->i2c_adap, &info); in xbox_one_attach()