Skip to contentSkip to conversation

DVBSky V3 PCIe card: add new dvb-s/s2 tuner for integrated chip M88RS6000

PATCH Superseded Nibble Max 1 participant 1 message Oct 27, 2014 Media (V4L/DVB)

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore

Nibble Max

author
#0 lore raw

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.

---
 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
index f039dc2..42e5a01 100644
@@ -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
index 49fcf80..da4fe6e 100644
@@ -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
new file mode 100644
index 0000000..264c13e
@@ -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