dvb: add or51132 driver (atsc demodulator)
PATCH 1/1 dvb: add or51132 driver (atsc demodulator)
Hi,
This patch adds a new ATSC frontend driver, needed by the cx88-based pcHDTV 3000 card. Also includes a tiny chunk to activate the or51132 support in the cx88-dvb driver.
This patch depends on the cx88 dvb driver update.
Gerd
Signed-off-by Gerd Knorr <[email protected]>
--- drivers/media/dvb/frontends/Kconfig | 4 drivers/media/dvb/frontends/Makefile | 2 drivers/media/dvb/frontends/or51132.c | 628 ++++++++++++++++++++++++++ drivers/media/dvb/frontends/or51132.h | 48 + drivers/media/video/Kconfig | 1 drivers/media/video/cx88/cx88-dvb.c | 2 6 files changed, 683 insertions(+), 2 deletions(-)
drivers/media/dvb/frontends/or51132.h new file +48 -0
@@ -0,0 +1,48 @@ +/* +* Support for OR51132 (pcHDTV HD-3000) - VSB/QAM +* +* Copyright (C) 2005 Kirk Lapray <[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. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +* +*/ + +#ifndef OR51132_H +#define OR51132_H + +#include <linux/firmware.h> +#include <linux/dvb/frontend.h> + +struct or51132_config +{ +/* The demodulator's i2c address */ +u8 demod_address; +u8 pll_address; +struct dvb_pll_desc *pll_desc; + +/* Need to set device param for start_dma */ +int (*set_ts_params)(struct dvb_frontend * fe,int is_punctured); +}; + +extern struct dvb_frontend *or51132_attach (const struct or51132_config * config, +struct i2c_adapter * i2c); + +#endif // OR51132_H + +/* +* Local variables: +* c-basic-offset: 8 +* End: +*/
drivers/media/dvb/frontends/or51132.c new file +628 -0
628 lines not on this page · raw message
drivers/media/dvb/frontends/Makefile +1 -1
@@ -26,4 +26,4 @@ obj-$(CONFIG_DVB_TDA80XX) += tda80xx.o obj-$(CONFIG_DVB_TDA10021) += tda10021.o obj-$(CONFIG_DVB_STV0297) += stv0297.o obj-$(CONFIG_DVB_NXT2002) += nxt2002.o - +obj-$(CONFIG_DVB_OR51132) += or51132.o
drivers/media/dvb/frontends/Kconfig +4 -0
@@ -157,4 +157,8 @@ config DVB_NXT2002 help An ATSC 8VSB tuner module. Say Y when you want to support this frontend. +config DVB_OR51132 + tristate "OR51132 based (pcHDTV)" + depends on DVB_CORE + endmenu
drivers/media/video/Kconfig +1 -0
@@ -328,6 +328,7 @@ config VIDEO_CX88_DVB select VIDEO_BUF_DVB select DVB_MT352 select DVB_CX22702 + select DVB_OR51132 ---help--- This adds support for DVB/ATSC cards based on the Connexant 2388x chip.
drivers/media/video/cx88/cx88-dvb.c +1 -1
@@ -32,7 +32,7 @@/* those two frontends need merging via linuxtv cvs ... */ #define HAVE_CX22702 1 -#define HAVE_OR51132 0 +#define HAVE_OR51132 1#include "cx88.h" #include "dvb-pll.h"
Signature · 1 line
#define printk(args...) fprintf(stderr, ## args)