Skip to content

Commit

Permalink
[media] dvb-usb: prepare for multi-frontend support (MFE)
Browse files Browse the repository at this point in the history
Change adapter FE pointer as array of FE pointers.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Antti Palosaari authored and Mauro Carvalho Chehab committed Jul 31, 2011
1 parent 6d51477 commit bfd4500
Show file tree
Hide file tree
Showing 29 changed files with 344 additions and 344 deletions.
2 changes: 1 addition & 1 deletion drivers/media/dvb/dvb-usb/af9005.c
Original file line number Diff line number Diff line change
Expand Up @@ -815,7 +815,7 @@ static int af9005_frontend_attach(struct dvb_usb_adapter *adap)
debug_dump(buf, 8, printk);
}
}
adap->fe = af9005_fe_attach(adap->dev);
adap->fe[0] = af9005_fe_attach(adap->dev);
return 0;
}

Expand Down
22 changes: 11 additions & 11 deletions drivers/media/dvb/dvb-usb/af9015.c
Original file line number Diff line number Diff line change
Expand Up @@ -1111,10 +1111,10 @@ static int af9015_af9013_frontend_attach(struct dvb_usb_adapter *adap)
}

/* attach demodulator */
adap->fe = dvb_attach(af9013_attach, &af9015_af9013_config[adap->id],
adap->fe[0] = dvb_attach(af9013_attach, &af9015_af9013_config[adap->id],
&adap->dev->i2c_adap);

return adap->fe == NULL ? -ENODEV : 0;
return adap->fe[0] == NULL ? -ENODEV : 0;
}

static struct mt2060_config af9015_mt2060_config = {
Expand Down Expand Up @@ -1188,49 +1188,49 @@ static int af9015_tuner_attach(struct dvb_usb_adapter *adap)
switch (af9015_af9013_config[adap->id].tuner) {
case AF9013_TUNER_MT2060:
case AF9013_TUNER_MT2060_2:
ret = dvb_attach(mt2060_attach, adap->fe, &adap->dev->i2c_adap,
ret = dvb_attach(mt2060_attach, adap->fe[0], &adap->dev->i2c_adap,
&af9015_mt2060_config,
af9015_config.mt2060_if1[adap->id])
== NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_QT1010:
case AF9013_TUNER_QT1010A:
ret = dvb_attach(qt1010_attach, adap->fe, &adap->dev->i2c_adap,
ret = dvb_attach(qt1010_attach, adap->fe[0], &adap->dev->i2c_adap,
&af9015_qt1010_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_TDA18271:
ret = dvb_attach(tda18271_attach, adap->fe, 0xc0,
ret = dvb_attach(tda18271_attach, adap->fe[0], 0xc0,
&adap->dev->i2c_adap,
&af9015_tda18271_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_TDA18218:
ret = dvb_attach(tda18218_attach, adap->fe,
ret = dvb_attach(tda18218_attach, adap->fe[0],
&adap->dev->i2c_adap,
&af9015_tda18218_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_MXL5003D:
ret = dvb_attach(mxl5005s_attach, adap->fe,
ret = dvb_attach(mxl5005s_attach, adap->fe[0],
&adap->dev->i2c_adap,
&af9015_mxl5003_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_MXL5005D:
case AF9013_TUNER_MXL5005R:
ret = dvb_attach(mxl5005s_attach, adap->fe,
ret = dvb_attach(mxl5005s_attach, adap->fe[0],
&adap->dev->i2c_adap,
&af9015_mxl5005_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_ENV77H11D5:
ret = dvb_attach(dvb_pll_attach, adap->fe, 0xc0,
ret = dvb_attach(dvb_pll_attach, adap->fe[0], 0xc0,
&adap->dev->i2c_adap,
DVB_PLL_TDA665X) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_MC44S803:
ret = dvb_attach(mc44s803_attach, adap->fe,
ret = dvb_attach(mc44s803_attach, adap->fe[0],
&adap->dev->i2c_adap,
&af9015_mc44s803_config) == NULL ? -ENODEV : 0;
break;
case AF9013_TUNER_MXL5007T:
ret = dvb_attach(mxl5007t_attach, adap->fe,
ret = dvb_attach(mxl5007t_attach, adap->fe[0],
&adap->dev->i2c_adap,
0xc0, &af9015_mxl5007t_config) == NULL ? -ENODEV : 0;
break;
Expand Down
46 changes: 23 additions & 23 deletions drivers/media/dvb/dvb-usb/anysee.c
Original file line number Diff line number Diff line change
Expand Up @@ -488,13 +488,13 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
/* E30 */

/* attach demod */
adap->fe = dvb_attach(mt352_attach, &anysee_mt352_config,
adap->fe[0] = dvb_attach(mt352_attach, &anysee_mt352_config,
&adap->dev->i2c_adap);
if (adap->fe)
if (adap->fe[0])
break;

/* attach demod */
adap->fe = dvb_attach(zl10353_attach, &anysee_zl10353_config,
adap->fe[0] = dvb_attach(zl10353_attach, &anysee_zl10353_config,
&adap->dev->i2c_adap);

break;
Expand All @@ -512,7 +512,7 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(zl10353_attach, &anysee_zl10353_config,
adap->fe[0] = dvb_attach(zl10353_attach, &anysee_zl10353_config,
&adap->dev->i2c_adap);

break;
Expand All @@ -525,7 +525,7 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(tda10023_attach, &anysee_tda10023_config,
adap->fe[0] = dvb_attach(tda10023_attach, &anysee_tda10023_config,
&adap->dev->i2c_adap, 0x48);

break;
Expand All @@ -538,7 +538,7 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(cx24116_attach, &anysee_cx24116_config,
adap->fe[0] = dvb_attach(cx24116_attach, &anysee_cx24116_config,
&adap->dev->i2c_adap);

break;
Expand Down Expand Up @@ -580,12 +580,12 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
/* attach demod */
if (tmp == 0xc7) {
/* TDA18212 config */
adap->fe = dvb_attach(zl10353_attach,
adap->fe[0] = dvb_attach(zl10353_attach,
&anysee_zl10353_tda18212_config2,
&adap->dev->i2c_adap);
} else {
/* PLL config */
adap->fe = dvb_attach(zl10353_attach,
adap->fe[0] = dvb_attach(zl10353_attach,
&anysee_zl10353_config,
&adap->dev->i2c_adap);
}
Expand All @@ -605,12 +605,12 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
/* attach demod */
if (tmp == 0xc7) {
/* TDA18212 config */
adap->fe = dvb_attach(tda10023_attach,
adap->fe[0] = dvb_attach(tda10023_attach,
&anysee_tda10023_tda18212_config,
&adap->dev->i2c_adap, 0x48);
} else {
/* PLL config */
adap->fe = dvb_attach(tda10023_attach,
adap->fe[0] = dvb_attach(tda10023_attach,
&anysee_tda10023_config,
&adap->dev->i2c_adap, 0x48);
}
Expand Down Expand Up @@ -647,7 +647,7 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(zl10353_attach,
adap->fe[0] = dvb_attach(zl10353_attach,
&anysee_zl10353_tda18212_config,
&adap->dev->i2c_adap);
} else {
Expand All @@ -670,7 +670,7 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(tda10023_attach,
adap->fe[0] = dvb_attach(tda10023_attach,
&anysee_tda10023_tda18212_config,
&adap->dev->i2c_adap, 0x48);
}
Expand All @@ -692,13 +692,13 @@ static int anysee_frontend_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach demod */
adap->fe = dvb_attach(stv0900_attach, &anysee_stv0900_config,
adap->fe[0] = dvb_attach(stv0900_attach, &anysee_stv0900_config,
&adap->dev->i2c_adap, 0);

break;
}

if (!adap->fe) {
if (!adap->fe[0]) {
/* we have no frontend :-( */
ret = -ENODEV;
err("Unsupported Anysee version. " \
Expand All @@ -720,31 +720,31 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap)
/* E30 */

/* attach tuner */
fe = dvb_attach(dvb_pll_attach, adap->fe, (0xc2 >> 1),
fe = dvb_attach(dvb_pll_attach, adap->fe[0], (0xc2 >> 1),
NULL, DVB_PLL_THOMSON_DTT7579);

break;
case ANYSEE_HW_507CD: /* 6 */
/* E30 Plus */

/* attach tuner */
fe = dvb_attach(dvb_pll_attach, adap->fe, (0xc2 >> 1),
fe = dvb_attach(dvb_pll_attach, adap->fe[0], (0xc2 >> 1),
&adap->dev->i2c_adap, DVB_PLL_THOMSON_DTT7579);

break;
case ANYSEE_HW_507DC: /* 10 */
/* E30 C Plus */

/* attach tuner */
fe = dvb_attach(dvb_pll_attach, adap->fe, (0xc0 >> 1),
fe = dvb_attach(dvb_pll_attach, adap->fe[0], (0xc0 >> 1),
&adap->dev->i2c_adap, DVB_PLL_SAMSUNG_DTOS403IH102A);

break;
case ANYSEE_HW_507SI: /* 11 */
/* E30 S2 Plus */

/* attach LNB controller */
fe = dvb_attach(isl6423_attach, adap->fe, &adap->dev->i2c_adap,
fe = dvb_attach(isl6423_attach, adap->fe[0], &adap->dev->i2c_adap,
&anysee_isl6423_config);

break;
Expand Down Expand Up @@ -775,7 +775,7 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach tuner */
fe = dvb_attach(tda18212_attach, adap->fe, &adap->dev->i2c_adap,
fe = dvb_attach(tda18212_attach, adap->fe[0], &adap->dev->i2c_adap,
&anysee_tda18212_config);
if (fe)
break;
Expand All @@ -786,7 +786,7 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach tuner */
fe = dvb_attach(dvb_pll_attach, adap->fe, (0xc0 >> 1),
fe = dvb_attach(dvb_pll_attach, adap->fe[0], (0xc0 >> 1),
&adap->dev->i2c_adap, DVB_PLL_SAMSUNG_DTOS403IH102A);

break;
Expand All @@ -801,7 +801,7 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap)
goto error;

/* attach tuner */
fe = dvb_attach(tda18212_attach, adap->fe, &adap->dev->i2c_adap,
fe = dvb_attach(tda18212_attach, adap->fe[0], &adap->dev->i2c_adap,
&anysee_tda18212_config);

break;
Expand All @@ -811,12 +811,12 @@ static int anysee_tuner_attach(struct dvb_usb_adapter *adap)
/* E7 PS2 */

/* attach tuner */
fe = dvb_attach(stv6110_attach, adap->fe,
fe = dvb_attach(stv6110_attach, adap->fe[0],
&anysee_stv6110_config, &adap->dev->i2c_adap);

if (fe) {
/* attach LNB controller */
fe = dvb_attach(isl6423_attach, adap->fe,
fe = dvb_attach(isl6423_attach, adap->fe[0],
&adap->dev->i2c_adap, &anysee_isl6423_config);
}

Expand Down
6 changes: 3 additions & 3 deletions drivers/media/dvb/dvb-usb/au6610.c
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,9 @@ static struct zl10353_config au6610_zl10353_config = {

static int au6610_zl10353_frontend_attach(struct dvb_usb_adapter *adap)
{
adap->fe = dvb_attach(zl10353_attach, &au6610_zl10353_config,
adap->fe[0] = dvb_attach(zl10353_attach, &au6610_zl10353_config,
&adap->dev->i2c_adap);
if (adap->fe == NULL)
if (adap->fe[0] == NULL)
return -ENODEV;

return 0;
Expand All @@ -155,7 +155,7 @@ static struct qt1010_config au6610_qt1010_config = {
static int au6610_qt1010_tuner_attach(struct dvb_usb_adapter *adap)
{
return dvb_attach(qt1010_attach,
adap->fe, &adap->dev->i2c_adap,
adap->fe[0], &adap->dev->i2c_adap,
&au6610_qt1010_config) == NULL ? -ENODEV : 0;
}

Expand Down
10 changes: 5 additions & 5 deletions drivers/media/dvb/dvb-usb/az6027.c
Original file line number Diff line number Diff line change
Expand Up @@ -910,16 +910,16 @@ static int az6027_frontend_attach(struct dvb_usb_adapter *adap)
az6027_frontend_reset(adap);

deb_info("adap = %p, dev = %p\n", adap, adap->dev);
adap->fe = stb0899_attach(&az6027_stb0899_config, &adap->dev->i2c_adap);
adap->fe[0] = stb0899_attach(&az6027_stb0899_config, &adap->dev->i2c_adap);

if (adap->fe) {
if (adap->fe[0]) {
deb_info("found STB0899 DVB-S/DVB-S2 frontend @0x%02x", az6027_stb0899_config.demod_address);
if (stb6100_attach(adap->fe, &az6027_stb6100_config, &adap->dev->i2c_adap)) {
if (stb6100_attach(adap->fe[0], &az6027_stb6100_config, &adap->dev->i2c_adap)) {
deb_info("found STB6100 DVB-S/DVB-S2 frontend @0x%02x", az6027_stb6100_config.tuner_address);
adap->fe->ops.set_voltage = az6027_set_voltage;
adap->fe[0]->ops.set_voltage = az6027_set_voltage;
az6027_ci_init(adap);
} else {
adap->fe = NULL;
adap->fe[0] = NULL;
}
} else
warn("no front-end attached\n");
Expand Down
6 changes: 3 additions & 3 deletions drivers/media/dvb/dvb-usb/ce6230.c
Original file line number Diff line number Diff line change
Expand Up @@ -186,9 +186,9 @@ static struct zl10353_config ce6230_zl10353_config = {
static int ce6230_zl10353_frontend_attach(struct dvb_usb_adapter *adap)
{
deb_info("%s:\n", __func__);
adap->fe = dvb_attach(zl10353_attach, &ce6230_zl10353_config,
adap->fe[0] = dvb_attach(zl10353_attach, &ce6230_zl10353_config,
&adap->dev->i2c_adap);
if (adap->fe == NULL)
if (adap->fe[0] == NULL)
return -ENODEV;
return 0;
}
Expand All @@ -214,7 +214,7 @@ static int ce6230_mxl5003s_tuner_attach(struct dvb_usb_adapter *adap)
{
int ret;
deb_info("%s:\n", __func__);
ret = dvb_attach(mxl5005s_attach, adap->fe, &adap->dev->i2c_adap,
ret = dvb_attach(mxl5005s_attach, adap->fe[0], &adap->dev->i2c_adap,
&ce6230_mxl5003s_config) == NULL ? -ENODEV : 0;
return ret;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/media/dvb/dvb-usb/cinergyT2-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ static int cinergyt2_frontend_attach(struct dvb_usb_adapter *adap)
char state[3];
int ret;

adap->fe = cinergyt2_fe_attach(adap->dev);
adap->fe[0] = cinergyt2_fe_attach(adap->dev);

ret = dvb_usb_generic_rw(adap->dev, query, sizeof(query), state,
sizeof(state), 0);
Expand Down
Loading

0 comments on commit bfd4500

Please sign in to comment.