diff options
author | Oliver Endriss <o.endriss@gmx.de> | 2006-11-19 06:15:37 +0100 |
---|---|---|
committer | Oliver Endriss <o.endriss@gmx.de> | 2006-11-19 06:15:37 +0100 |
commit | b9ecb0a4e9cc9d07ffe87c8dc9ef0b8b75ea7396 (patch) | |
tree | 8cba4f309572954ee77655bd0727cc0ed8975539 | |
parent | be27da0bc5759c891314e1ccda69f1cb88634e2d (diff) | |
download | mediapointer-dvb-s2-b9ecb0a4e9cc9d07ffe87c8dc9ef0b8b75ea7396.tar.gz mediapointer-dvb-s2-b9ecb0a4e9cc9d07ffe87c8dc9ef0b8b75ea7396.tar.bz2 |
budget: diseqc_method module parameter for cards with subsystem-id 13c2:1003
From: Oliver Endriss <o.endriss@gmx.de>
New module parameter diseqc_method for cards with subsystem-id 13c2:1003.
- 0: unreliable method, can be used by all board revisions (default)
- 1: reliable method, works for newer board layouts only
The parameter has no effect for cards with other subsystem-ids.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
-rwxr-xr-x[-rw-r--r--] | linux/drivers/media/dvb/ttpci/budget.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/ttpci/budget.c b/linux/drivers/media/dvb/ttpci/budget.c index e28617bd5..56f1c80de 100644..100755 --- a/linux/drivers/media/dvb/ttpci/budget.c +++ b/linux/drivers/media/dvb/ttpci/budget.c @@ -46,6 +46,10 @@ #include "lnbp21.h" #include "bsru6.h" +static int diseqc_method; +module_param(diseqc_method, int, 0444); +MODULE_PARM_DESC(diseqc_method, "Select DiSEqC method for subsystem id 13c2:1003, 0: default, 1: more reliable (for newer revisions only)"); + static void Set22K (struct budget *budget, int state) { struct saa7146_dev *dev=budget->dev; @@ -382,7 +386,11 @@ static void frontend_init(struct budget *budget) if (budget->dvb_frontend) { budget->dvb_frontend->ops.tuner_ops.set_params = alps_bsru6_tuner_set_params; budget->dvb_frontend->tuner_priv = &budget->i2c_adap; - budget->dvb_frontend->ops.set_tone = budget_set_tone; + if (budget->dev->pci->subsystem_device == 0x1003 && diseqc_method == 0) { + budget->dvb_frontend->ops.diseqc_send_master_cmd = budget_diseqc_send_master_cmd; + budget->dvb_frontend->ops.diseqc_send_burst = budget_diseqc_send_burst; + budget->dvb_frontend->ops.set_tone = budget_set_tone; + } break; } break; |