Commit adc619ac authored by Andrew de Quincey's avatar Andrew de Quincey Committed by Mauro Carvalho Chehab

V4L/DVB (4397): Add tda10086 support for TT DVB-S-1401

Add the necessary code and makefile infrastructure
Signed-off-by: default avatarAndrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 6bca3580
...@@ -3,15 +3,14 @@ config DVB_AV7110 ...@@ -3,15 +3,14 @@ config DVB_AV7110
depends on DVB_CORE && PCI && I2C && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select FW_LOADER select FW_LOADER
select VIDEO_SAA7146_VV select VIDEO_SAA7146_VV
select DVB_PLL select DVB_VES1820 if !DVB_FE_CUSTOMISE
select DVB_VES1820 select DVB_VES1X93 if !DVB_FE_CUSTOMISE
select DVB_VES1X93 select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_STV0299 select DVB_TDA8083 if !DVB_FE_CUSTOMISE
select DVB_TDA8083 select DVB_SP8870 if !DVB_FE_CUSTOMISE
select DVB_SP8870 select DVB_STV0297 if !DVB_FE_CUSTOMISE
select DVB_STV0297 select DVB_L64781 if !DVB_FE_CUSTOMISE
select DVB_L64781 select DVB_LNBP21 if !DVB_FE_CUSTOMISE
select DVB_LNBP21
help help
Support for SAA7146 and AV7110 based DVB cards as produced Support for SAA7146 and AV7110 based DVB cards as produced
by Fujitsu-Siemens, Technotrend, Hauppauge and others. by Fujitsu-Siemens, Technotrend, Hauppauge and others.
...@@ -62,15 +61,14 @@ config DVB_BUDGET ...@@ -62,15 +61,14 @@ config DVB_BUDGET
tristate "Budget cards" tristate "Budget cards"
depends on DVB_CORE && PCI && I2C && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146 select VIDEO_SAA7146
select DVB_PLL select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_STV0299 select DVB_VES1X93 if !DVB_FE_CUSTOMISE
select DVB_VES1X93 select DVB_VES1820 if !DVB_FE_CUSTOMISE
select DVB_VES1820 select DVB_L64781 if !DVB_FE_CUSTOMISE
select DVB_L64781 select DVB_TDA8083 if !DVB_FE_CUSTOMISE
select DVB_TDA8083 select DVB_TDA10021 if !DVB_FE_CUSTOMISE
select DVB_TDA10021 select DVB_S5H1420 if !DVB_FE_CUSTOMISE
select DVB_S5H1420 select DVB_LNBP21 if !DVB_FE_CUSTOMISE
select DVB_LNBP21
help help
Support for simple SAA7146 based DVB cards Support for simple SAA7146 based DVB cards
(so called Budget- or Nova-PCI cards) without onboard (so called Budget- or Nova-PCI cards) without onboard
...@@ -85,11 +83,10 @@ config DVB_BUDGET_CI ...@@ -85,11 +83,10 @@ config DVB_BUDGET_CI
tristate "Budget cards with onboard CI connector" tristate "Budget cards with onboard CI connector"
depends on DVB_CORE && PCI && I2C && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146 select VIDEO_SAA7146
select DVB_PLL select DVB_STV0297 if !DVB_FE_CUSTOMISE
select DVB_STV0297 select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_STV0299 select DVB_TDA1004X if !DVB_FE_CUSTOMISE
select DVB_TDA1004X select DVB_LNBP21 if !DVB_FE_CUSTOMISE
select DVB_LNBP21
help help
Support for simple SAA7146 based DVB cards Support for simple SAA7146 based DVB cards
(so called Budget- or Nova-PCI cards) without onboard (so called Budget- or Nova-PCI cards) without onboard
...@@ -107,10 +104,9 @@ config DVB_BUDGET_AV ...@@ -107,10 +104,9 @@ config DVB_BUDGET_AV
tristate "Budget cards with analog video inputs" tristate "Budget cards with analog video inputs"
depends on DVB_CORE && PCI && I2C && VIDEO_V4L1 depends on DVB_CORE && PCI && I2C && VIDEO_V4L1
select VIDEO_SAA7146_VV select VIDEO_SAA7146_VV
select DVB_PLL select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_STV0299 select DVB_TDA1004X if !DVB_FE_CUSTOMISE
select DVB_TDA1004X select DVB_TDA10021 if !DVB_FE_CUSTOMISE
select DVB_TDA10021
select FW_LOADER select FW_LOADER
help help
Support for simple SAA7146 based DVB cards Support for simple SAA7146 based DVB cards
...@@ -126,10 +122,9 @@ config DVB_BUDGET_PATCH ...@@ -126,10 +122,9 @@ config DVB_BUDGET_PATCH
tristate "AV7110 cards with Budget Patch" tristate "AV7110 cards with Budget Patch"
depends on DVB_CORE && DVB_BUDGET && VIDEO_V4L1 depends on DVB_CORE && DVB_BUDGET && VIDEO_V4L1
select DVB_AV7110 select DVB_AV7110
select DVB_PLL select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_STV0299 select DVB_VES1X93 if !DVB_FE_CUSTOMISE
select DVB_VES1X93 select DVB_TDA8083 if !DVB_FE_CUSTOMISE
select DVB_TDA8083
help help
Support for Budget Patch (full TS) modification on Support for Budget Patch (full TS) modification on
SAA7146+AV7110 based cards (DVB-S cards). This SAA7146+AV7110 based cards (DVB-S cards). This
......
...@@ -41,6 +41,8 @@ ...@@ -41,6 +41,8 @@
#include "l64781.h" #include "l64781.h"
#include "tda8083.h" #include "tda8083.h"
#include "s5h1420.h" #include "s5h1420.h"
#include "tda10086.h"
#include "tda826x.h"
#include "lnbp21.h" #include "lnbp21.h"
#include "bsru6.h" #include "bsru6.h"
...@@ -342,6 +344,11 @@ static struct s5h1420_config s5h1420_config = { ...@@ -342,6 +344,11 @@ static struct s5h1420_config s5h1420_config = {
.invert = 1, .invert = 1,
}; };
static struct tda10086_config tda10086_config = {
.demod_address = 0x0e,
.invert = 0,
};
static u8 read_pwm(struct budget* budget) static u8 read_pwm(struct budget* budget)
{ {
u8 b = 0xff; u8 b = 0xff;
...@@ -420,7 +427,25 @@ static void frontend_init(struct budget *budget) ...@@ -420,7 +427,25 @@ static void frontend_init(struct budget *budget)
budget->dvb_frontend = dvb_attach(s5h1420_attach, &s5h1420_config, &budget->i2c_adap); budget->dvb_frontend = dvb_attach(s5h1420_attach, &s5h1420_config, &budget->i2c_adap);
if (budget->dvb_frontend) { if (budget->dvb_frontend) {
budget->dvb_frontend->ops.tuner_ops.set_params = s5h1420_tuner_set_params; budget->dvb_frontend->ops.tuner_ops.set_params = s5h1420_tuner_set_params;
if (lnbp21_attach(budget->dvb_frontend, &budget->i2c_adap, 0, 0) == NULL) { if (dvb_attach(lnbp21_attach, budget->dvb_frontend, &budget->i2c_adap, 0, 0) == NULL) {
printk("%s: No LNBP21 found!\n", __FUNCTION__);
goto error_out;
}
break;
}
case 0x1018: // TT Budget-S-1401 (philips tda10086/philips tda8262)
// gpio2 is connected to CLB - reset it + leave it high
saa7146_setgpio(budget->dev, 2, SAA7146_GPIO_OUTLO);
msleep(1);
saa7146_setgpio(budget->dev, 2, SAA7146_GPIO_OUTHI);
msleep(1);
budget->dvb_frontend = dvb_attach(tda10086_attach, &tda10086_config, &budget->i2c_adap);
if (budget->dvb_frontend) {
if (dvb_attach(tda826x_attach, budget->dvb_frontend, 0x60, &budget->i2c_adap, 0) == NULL)
printk("%s: No tda826x found!\n", __FUNCTION__);
if (dvb_attach(lnbp21_attach, budget->dvb_frontend, &budget->i2c_adap, 0, 0) == NULL) {
printk("%s: No LNBP21 found!\n", __FUNCTION__); printk("%s: No LNBP21 found!\n", __FUNCTION__);
goto error_out; goto error_out;
} }
...@@ -499,6 +524,7 @@ MAKE_BUDGET_INFO(ttbs, "TT-Budget/WinTV-NOVA-S PCI", BUDGET_TT); ...@@ -499,6 +524,7 @@ MAKE_BUDGET_INFO(ttbs, "TT-Budget/WinTV-NOVA-S PCI", BUDGET_TT);
MAKE_BUDGET_INFO(ttbc, "TT-Budget/WinTV-NOVA-C PCI", BUDGET_TT); MAKE_BUDGET_INFO(ttbc, "TT-Budget/WinTV-NOVA-C PCI", BUDGET_TT);
MAKE_BUDGET_INFO(ttbt, "TT-Budget/WinTV-NOVA-T PCI", BUDGET_TT); MAKE_BUDGET_INFO(ttbt, "TT-Budget/WinTV-NOVA-T PCI", BUDGET_TT);
MAKE_BUDGET_INFO(satel, "SATELCO Multimedia PCI", BUDGET_TT_HW_DISEQC); MAKE_BUDGET_INFO(satel, "SATELCO Multimedia PCI", BUDGET_TT_HW_DISEQC);
MAKE_BUDGET_INFO(ttbs1401, "TT-Budget-S-1401 PCI", BUDGET_TT);
MAKE_BUDGET_INFO(fsacs0, "Fujitsu Siemens Activy Budget-S PCI (rev GR/grundig frontend)", BUDGET_FS_ACTIVY); MAKE_BUDGET_INFO(fsacs0, "Fujitsu Siemens Activy Budget-S PCI (rev GR/grundig frontend)", BUDGET_FS_ACTIVY);
MAKE_BUDGET_INFO(fsacs1, "Fujitsu Siemens Activy Budget-S PCI (rev AL/alps frontend)", BUDGET_FS_ACTIVY); MAKE_BUDGET_INFO(fsacs1, "Fujitsu Siemens Activy Budget-S PCI (rev AL/alps frontend)", BUDGET_FS_ACTIVY);
...@@ -508,6 +534,7 @@ static struct pci_device_id pci_tbl[] = { ...@@ -508,6 +534,7 @@ static struct pci_device_id pci_tbl[] = {
MAKE_EXTENSION_PCI(ttbt, 0x13c2, 0x1005), MAKE_EXTENSION_PCI(ttbt, 0x13c2, 0x1005),
MAKE_EXTENSION_PCI(satel, 0x13c2, 0x1013), MAKE_EXTENSION_PCI(satel, 0x13c2, 0x1013),
MAKE_EXTENSION_PCI(ttbs, 0x13c2, 0x1016), MAKE_EXTENSION_PCI(ttbs, 0x13c2, 0x1016),
MAKE_EXTENSION_PCI(ttbs1401, 0x13c2, 0x1018),
MAKE_EXTENSION_PCI(fsacs1,0x1131, 0x4f60), MAKE_EXTENSION_PCI(fsacs1,0x1131, 0x4f60),
MAKE_EXTENSION_PCI(fsacs0,0x1131, 0x4f61), MAKE_EXTENSION_PCI(fsacs0,0x1131, 0x4f61),
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment