Commit 941491f3 authored by Marco Gittler's avatar Marco Gittler Committed by Mauro Carvalho Chehab

V4L/DVB (5532): Add support for Opera S1- DVB-USB

This patch adds support for DVB-Opera S1 USB 2.0 BOX.
Signed-off-by: default avatarMarco Gittler <g.marco@freenet.de>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent 6284feaf
...@@ -211,3 +211,10 @@ config DVB_USB_DTT200U ...@@ -211,3 +211,10 @@ config DVB_USB_DTT200U
The receivers are also known as DTT200U (Yakumo) and UB300 (Yuan). The receivers are also known as DTT200U (Yakumo) and UB300 (Yuan).
The WT-220U and its clones are pen-sized. The WT-220U and its clones are pen-sized.
config DVB_USB_OPERA1
tristate "Opera1 DVB-S USB2.0 receiver"
depends on DVB_USB
select DVB_STV0299 if !DVB_FE_CUSTOMISE
help
Say Y here to support the Opera DVB-S USB2.0 receiver.
...@@ -51,4 +51,8 @@ obj-$(CONFIG_DVB_USB_TTUSB2) += dvb-usb-ttusb2.o ...@@ -51,4 +51,8 @@ obj-$(CONFIG_DVB_USB_TTUSB2) += dvb-usb-ttusb2.o
dvb-usb-dib0700-objs = dib0700_core.o dib0700_devices.o dvb-usb-dib0700-objs = dib0700_core.o dib0700_devices.o
obj-$(CONFIG_DVB_USB_DIB0700) += dvb-usb-dib0700.o obj-$(CONFIG_DVB_USB_DIB0700) += dvb-usb-dib0700.o
dvb-usb-opera-objs = opera1.o
obj-$(CONFIG_DVB_USB_OPERA1) += dvb-usb-opera.o
EXTRA_CFLAGS = -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/ EXTRA_CFLAGS = -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
#define USB_VID_ULTIMA_ELECTRONIC 0x05d8 #define USB_VID_ULTIMA_ELECTRONIC 0x05d8
#define USB_VID_UNIWILL 0x1584 #define USB_VID_UNIWILL 0x1584
#define USB_VID_WIDEVIEW 0x14aa #define USB_VID_WIDEVIEW 0x14aa
#define USB_VID_OPERA1 0x695c
/* Product IDs */ /* Product IDs */
#define USB_PID_ADSTECH_USB2_COLD 0xa333 #define USB_PID_ADSTECH_USB2_COLD 0xa333
...@@ -142,6 +143,8 @@ ...@@ -142,6 +143,8 @@
#define USB_PID_GENPIX_8PSK_WARM 0x0201 #define USB_PID_GENPIX_8PSK_WARM 0x0201
#define USB_PID_SIGMATEK_DVB_110 0x6610 #define USB_PID_SIGMATEK_DVB_110 0x6610
#define USB_PID_MSI_DIGI_VOX_MINI_II 0x1513 #define USB_PID_MSI_DIGI_VOX_MINI_II 0x1513
#define USB_PID_OPERA1_COLD 0x2830
#define USB_PID_OPERA1_WARM 0x3829
#endif #endif
This diff is collapsed.
#ifndef _OPERA1_H_
#define _OPERA1_H_
#define DVB_USB_LOG_PREFIX "opera"
#include "dvb-usb.h"
extern int dvb_usb_opera1_debug;
#define deb_xfer(args...) dprintk(dvb_usb_opera1_debug,0x02,args)
#endif
...@@ -451,6 +451,31 @@ struct dvb_pll_desc dvb_pll_thomson_fe6600 = { ...@@ -451,6 +451,31 @@ struct dvb_pll_desc dvb_pll_thomson_fe6600 = {
} }
}; };
EXPORT_SYMBOL(dvb_pll_thomson_fe6600); EXPORT_SYMBOL(dvb_pll_thomson_fe6600);
static void opera1_bw(u8 *buf, u32 freq, int bandwidth)
{
if (bandwidth == BANDWIDTH_8_MHZ)
buf[2] |= 0x08;
}
struct dvb_pll_desc dvb_pll_opera1 = {
.name = "Opera Tuner",
.min = 900000,
.max = 2250000,
.iffreq= 0,
.setbw = opera1_bw,
.count = 8,
.entries = {
{ 1064000, 500, 0xe5, 0xc6 },
{ 1169000, 500, 0xe5, 0xe6 },
{ 1299000, 500, 0xe5, 0x24 },
{ 1444000, 500, 0xe5, 0x44 },
{ 1606000, 500, 0xe5, 0x64 },
{ 1777000, 500, 0xe5, 0x84 },
{ 1941000, 500, 0xe5, 0xa4 },
{ 2250000, 500, 0xe5, 0xc4 },
}
};
EXPORT_SYMBOL(dvb_pll_opera1);
struct dvb_pll_priv { struct dvb_pll_priv {
/* i2c details */ /* i2c details */
......
...@@ -48,6 +48,7 @@ extern struct dvb_pll_desc dvb_pll_philips_sd1878_tda8261; ...@@ -48,6 +48,7 @@ extern struct dvb_pll_desc dvb_pll_philips_sd1878_tda8261;
extern struct dvb_pll_desc dvb_pll_philips_td1316; extern struct dvb_pll_desc dvb_pll_philips_td1316;
extern struct dvb_pll_desc dvb_pll_thomson_fe6600; extern struct dvb_pll_desc dvb_pll_thomson_fe6600;
extern struct dvb_pll_desc dvb_pll_opera1;
extern int dvb_pll_configure(struct dvb_pll_desc *desc, u8 *buf, extern int dvb_pll_configure(struct dvb_pll_desc *desc, u8 *buf,
u32 freq, int bandwidth); u32 freq, int bandwidth);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment