DVBSky V3 PCIe card: add new dvb-s/s2 tuner for integrated chip M88RS6000
PATCH v2 2/3 DVBSky V3 PCIe card: add new dvb-s/s2 tuner for integrated chip M88RS6000
v2:
-make demod mclk selection logic simple.
-merge demod mclk and ts mclk into one call back.
-make code clean.
M88RS6000 is the integrated chip, which includes tuner and demod. Here splite its tuner as a standalone driver.
.set_config is used to config its demod clock, which sits inside tuner die.
Signed-off-by Nibble Max <[email protected]>
--- drivers/media/tuners/Kconfig | 8 + drivers/media/tuners/Makefile | 1 + drivers/media/tuners/m88rs6000t.c | 742 ++++++++++++++++++++++++++++++++++++++ drivers/media/tuners/m88rs6000t.h | 29 ++ 4 files changed, 780 insertions(+)
drivers/media/tuners/Kconfig +8 -0
@@ -232,6 +232,14 @@ config MEDIA_TUNER_M88TS2022 help Montage M88TS2022 silicon tuner driver. +config MEDIA_TUNER_M88RS6000T + tristate "Montage M88RS6000 internal tuner" + depends on MEDIA_SUPPORT && I2C + select REGMAP_I2C + default m if !MEDIA_SUBDRV_AUTOSELECT + help + Montage M88RS6000 internal tuner. + config MEDIA_TUNER_TUA9001 tristate "Infineon TUA 9001 silicon tuner" depends on MEDIA_SUPPORT && I2C
drivers/media/tuners/Makefile +1 -0
@@ -41,6 +41,7 @@ obj-$(CONFIG_MEDIA_TUNER_IT913X) += it913x.o obj-$(CONFIG_MEDIA_TUNER_R820T) += r820t.o obj-$(CONFIG_MEDIA_TUNER_MXL301RF) += mxl301rf.o obj-$(CONFIG_MEDIA_TUNER_QM1D1C0042) += qm1d1c0042.o +obj-$(CONFIG_MEDIA_TUNER_M88RS6000T) += m88rs6000t.o ccflags-y += -I$(srctree)/drivers/media/dvb-core ccflags-y += -I$(srctree)/drivers/media/dvb-frontends
drivers/media/tuners/m88rs6000t.c new file +742 -0
742 lines not on this page · raw message
drivers/media/tuners/m88rs6000t.h new file +29 -0
@@ -0,0 +1,29 @@ +/* +* Driver for the internal tuner of Montage M88RS6000 +* +* Copyright (C) 2014 Max nibble <[email protected]> +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +*/ + +#ifndef _M88RS6000T_H_ +#define _M88RS6000T_H_ + +#include "dvb_frontend.h" + +struct m88rs6000t_config { +/* +* pointer to DVB frontend +*/ +struct dvb_frontend *fe; +}; + +#endif
Signature · 1 line
1.9.1