aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/dvb/frontends/dvb-pll.c22
-rw-r--r--drivers/media/dvb/frontends/dvb-pll.h1
2 files changed, 23 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/dvb-pll.c b/drivers/media/dvb/frontends/dvb-pll.c
index 7bafe4b962e..7d2d487c9ad 100644
--- a/drivers/media/dvb/frontends/dvb-pll.c
+++ b/drivers/media/dvb/frontends/dvb-pll.c
@@ -403,6 +403,27 @@ static struct dvb_pll_desc dvb_pll_samsung_tdtc9251dh0 = {
403 } 403 }
404}; 404};
405 405
406/* Samsung TBDU18132 DVB-S NIM with TSA5059 PLL, used in SkyStar2 DVB-S 2.3 */
407static struct dvb_pll_desc dvb_pll_samsung_tbdu18132 = {
408 .name = "Samsung TBDU18132",
409 .min = 950000,
410 .max = 2150000, /* guesses */
411 .iffreq = 0,
412 .count = 2,
413 .entries = {
414 { 1550000, 125, 0x84, 0x82 },
415 { 4095937, 125, 0x84, 0x80 },
416 }
417 /* TSA5059 PLL has a 17 bit divisor rather than the 15 bits supported
418 * by this driver. The two extra bits are 0x60 in the third byte. 15
419 * bits is enough for over 4 GHz, which is enough to cover the range
420 * of this tuner. We could use the additional divisor bits by adding
421 * more entries, e.g.
422 { 0x0ffff * 125 + 125/2, 125, 0x84 | 0x20, },
423 { 0x17fff * 125 + 125/2, 125, 0x84 | 0x40, },
424 { 0x1ffff * 125 + 125/2, 125, 0x84 | 0x60, }, */
425};
426
406/* ----------------------------------------------------------- */ 427/* ----------------------------------------------------------- */
407 428
408static struct dvb_pll_desc *pll_list[] = { 429static struct dvb_pll_desc *pll_list[] = {
@@ -422,6 +443,7 @@ static struct dvb_pll_desc *pll_list[] = {
422 [DVB_PLL_OPERA1] = &dvb_pll_opera1, 443 [DVB_PLL_OPERA1] = &dvb_pll_opera1,
423 [DVB_PLL_SAMSUNG_DTOS403IH102A] = &dvb_pll_samsung_dtos403ih102a, 444 [DVB_PLL_SAMSUNG_DTOS403IH102A] = &dvb_pll_samsung_dtos403ih102a,
424 [DVB_PLL_SAMSUNG_TDTC9251DH0] = &dvb_pll_samsung_tdtc9251dh0, 445 [DVB_PLL_SAMSUNG_TDTC9251DH0] = &dvb_pll_samsung_tdtc9251dh0,
446 [DVB_PLL_SAMSUNG_TBDU18132] = &dvb_pll_samsung_tbdu18132,
425}; 447};
426 448
427/* ----------------------------------------------------------- */ 449/* ----------------------------------------------------------- */
diff --git a/drivers/media/dvb/frontends/dvb-pll.h b/drivers/media/dvb/frontends/dvb-pll.h
index dcbb2833304..7905f344099 100644
--- a/drivers/media/dvb/frontends/dvb-pll.h
+++ b/drivers/media/dvb/frontends/dvb-pll.h
@@ -24,6 +24,7 @@
24#define DVB_PLL_OPERA1 13 24#define DVB_PLL_OPERA1 13
25#define DVB_PLL_SAMSUNG_DTOS403IH102A 14 25#define DVB_PLL_SAMSUNG_DTOS403IH102A 14
26#define DVB_PLL_SAMSUNG_TDTC9251DH0 15 26#define DVB_PLL_SAMSUNG_TDTC9251DH0 15
27#define DVB_PLL_SAMSUNG_TBDU18132 16
27 28
28/** 29/**
29 * Attach a dvb-pll to the supplied frontend structure. 30 * Attach a dvb-pll to the supplied frontend structure.