gp8psk: Add support for the Genpix Skywalker-2
PATCH 1/1 gp8psk: Add support for the Genpix Skywalker-2
gp8psk: Add support for the Genpix Skywalker-2 per user requests.
Patched against v4l-dvb hg ab433502e041 tip. Should patch fine against git as well.
----------
linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h 2010-08-17 10:38:48.000000000 -0700 renamed from linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h 2010-08-17 09:53:27.000000000 -0700 +1 -0
@@ -267,6 +267,7 @@ #define USB_PID_GENPIX_8PSK_REV_2 0x0202 #define USB_PID_GENPIX_SKYWALKER_1 0x0203 #define USB_PID_GENPIX_SKYWALKER_CW3K 0x0204 +#define USB_PID_GENPIX_SKYWALKER_2 0x0206 #define USB_PID_SIGMATEK_DVB_110 0x6610 #define USB_PID_MSI_DIGI_VOX_MINI_II 0x1513 #define USB_PID_MSI_DIGIVOX_DUO 0x8801
linux/drivers/media/dvb/dvb-usb/gp8psk.c 2010-08-17 10:42:33.000000000 -0700 renamed from linux/drivers/media/dvb/dvb-usb/gp8psk.c 2010-08-17 09:53:27.000000000 -0700 +7 -2
@@ -227,6 +227,7 @@ static struct usb_device_id gp8psk_usb_t { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_8PSK_REV_1_WARM) }, { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_8PSK_REV_2) }, { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_1) }, + { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_2) }, /* { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_CW3K) }, */ { 0 }, };
@@ -258,7 +259,7 @@ static struct dvb_usb_device_properties .generic_bulk_ctrl_endpoint = 0x01, - .num_device_descs = 3, + .num_device_descs = 4, .devices = { { .name = "Genpix 8PSK-to-USB2 Rev.1 DVB-S receiver", .cold_ids = { &gp8psk_usb_table[0], NULL },
@@ -272,10 +273,14 @@ static struct dvb_usb_device_properties .cold_ids = { NULL }, .warm_ids = { &gp8psk_usb_table[3], NULL }, }, + { .name = "Genpix SkyWalker-2 DVB-S receiver", + .cold_ids = { NULL }, + .warm_ids = { &gp8psk_usb_table[4], NULL }, + }, #if 0 { .name = "Genpix SkyWalker-CW3K DVB-S receiver", .cold_ids = { NULL }, - .warm_ids = { &gp8psk_usb_table[4], NULL }, + .warm_ids = { &gp8psk_usb_table[5], NULL }, }, #endif { NULL },
linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h +1 -0
@@ -267,6 +267,7 @@#define USB_PID_GENPIX_8PSK_REV_2 0x0202#define USB_PID_GENPIX_SKYWALKER_1 0x0203#define USB_PID_GENPIX_SKYWALKER_CW3K 0x0204 +#define USB_PID_GENPIX_SKYWALKER_2 0x0206#define USB_PID_SIGMATEK_DVB_110 0x6610#define USB_PID_MSI_DIGI_VOX_MINI_II 0x1513#define USB_PID_MSI_DIGIVOX_DUO 0x8801
linux/drivers/media/dvb/dvb-usb/gp8psk.c +7 -2
@@ -227,6 +227,7 @@ static struct usb_device_id gp8psk_usb_t { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_8PSK_REV_1_WARM) }, { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_8PSK_REV_2) }, { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_1) }, + { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_2) },/* { USB_DEVICE(USB_VID_GENPIX, USB_PID_GENPIX_SKYWALKER_CW3K) }, */ { 0 }, };
@@ -258,7 +259,7 @@ static struct dvb_usb_device_properties .generic_bulk_ctrl_endpoint = 0x01, - .num_device_descs = 3, + .num_device_descs = 4, .devices = { { .name = "Genpix 8PSK-to-USB2 Rev.1 DVB-S receiver", .cold_ids = { &gp8psk_usb_table[0], NULL },
@@ -272,10 +273,14 @@ static struct dvb_usb_device_properties .cold_ids = { NULL }, .warm_ids = { &gp8psk_usb_table[3], NULL }, }, + { .name = "Genpix SkyWalker-2 DVB-S receiver", + .cold_ids = { NULL }, + .warm_ids = { &gp8psk_usb_table[4], NULL }, + }, #if 0 { .name = "Genpix SkyWalker-CW3K DVB-S receiver", .cold_ids = { NULL }, - .warm_ids = { &gp8psk_usb_table[4], NULL }, + .warm_ids = { &gp8psk_usb_table[5], NULL }, }, #endif { NULL },
Em 14-10-2010 16:03, D. K. escreveu:
Quoted 4 lines
gp8psk: Add support for the Genpix Skywalker-2 per user requests.
Patched against v4l-dvb hg
ab433502e041tip. Should patch fine against git as well.
No, it didn't apply at -git. It seems that the following patch already added Skywalker-2.
Cheers,
Mauro
commit 458b634cd86968032171a4d6db5c89a772ff0348
Author: Alan Nisota <[email protected]> Date: Sat Aug 18 17:52:35 2007 -0300
V4L/DVB (6037): Updated GenPix USB driver
There are now 4 different versions of the GENPIX USB adapter. The newest 'Skywalker' models are fully self-contained, and need no additional hardware to be used. A very reliable DVB-S card even without using any of the alternate modulatations (which this kernel module does not currently support)
The following patch adds support for all 4 versions of the genpix adapter (www.genpix-electronics.com).
drivers/media/dvb/dvb-usb/dvb-usb-ids.h +5 -2
@@ -158,8 +158,11 @@#define USB_PID_WINFAST_DTV_DONGLE_COLD 0x6025#define USB_PID_WINFAST_DTV_DONGLE_WARM 0x6026#define USB_PID_WINFAST_DTV_DONGLE_STK7700P 0x6f00 -#define USB_PID_GENPIX_8PSK_COLD 0x0200 -#define USB_PID_GENPIX_8PSK_WARM 0x0201 +#define USB_PID_GENPIX_8PSK_REV_1_COLD 0x0200 +#define USB_PID_GENPIX_8PSK_REV_1_WARM 0x0201 +#define USB_PID_GENPIX_8PSK_REV_2 0x0202 +#define USB_PID_GENPIX_SKYWALKER_1 0x0203 +#define USB_PID_GENPIX_SKYWALKER_CW3K 0x0204#define USB_PID_SIGMATEK_DVB_110 0x6610#define USB_PID_MSI_DIGI_VOX_MINI_II 0x1513#define USB_PID_OPERA1_COLD 0x2830
drivers/media/dvb/dvb-usb/gp8psk-fe.c +51 -33
145 lines not on this page · raw message
drivers/media/dvb/dvb-usb/gp8psk.c +71 -22
161 lines not on this page · raw message
drivers/media/dvb/dvb-usb/gp8psk.h +25 -7
@@ -1,7 +1,8 @@/* DVB USB compliant Linux driver for the -* - GENPIX 8pks/qpsk USB2.0 DVB-S module +* - GENPIX 8pks/qpsk/DCII USB2.0 DVB-S module * * Copyright (C) 2006 Alan Nisota ([email protected]) +* Copyright (C) 2006,2007 Alan Nisota ([email protected]) * * Thanks to GENPIX for the sample code used to implement this module. *
@@ -30,21 +31,37 @@ extern int dvb_usb_gp8psk_debug;#define TH_COMMAND_IN 0xC0#define TH_COMMAND_OUT 0xC1 -/* command bytes */ -#define GET_8PSK_CONFIG 0x80 +/* gp8psk commands */ + +#define GET_8PSK_CONFIG 0x80/* in */ #define SET_8PSK_CONFIG 0x81 +#define I2C_WRITE 0x83 +#define I2C_READ 0x84#define ARM_TRANSFER 0x85#define TUNE_8PSK 0x86 -#define GET_SIGNAL_STRENGTH 0x87 +#define GET_SIGNAL_STRENGTH 0x87/* in */ #define LOAD_BCM4500 0x88 -#define BOOT_8PSK 0x89 -#define START_INTERSIL 0x8A +#define BOOT_8PSK 0x89/* in */ +#define START_INTERSIL 0x8A/* in */ #define SET_LNB_VOLTAGE 0x8B#define SET_22KHZ_TONE 0x8C#define SEND_DISEQC_COMMAND 0x8D#define SET_DVB_MODE 0x8E#define SET_DN_SWITCH 0x8F -#define GET_SIGNAL_LOCK 0x90 +#define GET_SIGNAL_LOCK 0x90/* in */ +#define GET_SERIAL_NUMBER 0x93/* in */ +#define USE_EXTRA_VOLT 0x94 +#define CW3K_INIT 0x9d + +/* PSK_configuration bits */ +#define bm8pskStarted 0x01 +#define bm8pskFW_Loaded 0x02 +#define bmIntersilOn 0x04 +#define bmDVBmode 0x08 +#define bm22kHz 0x10 +#define bmSEL18V 0x20 +#define bmDCtuned 0x40 +#define bmArmed 0x80/* Satellite modulation modes */ #define ADV_MOD_DVB_QPSK 0/* DVB-S QPSK */
@@ -75,5 +92,6 @@ extern struct dvb_frontend * gp8psk_fe_attach(struct dvb_usb_device *d);extern int gp8psk_usb_in_op (struct dvb_usb_device *d,u8 req,u16 value,u16 index,u8 *b,int blen);extern int gp8psk_usb_out_op (struct dvb_usb_device *d,u8 req,u16 value,u16 index,u8 *b,int blen); +extern int gp8psk_bcm4500_reload (struct dvb_usb_device *d);#endif
Quoted 8 lines · Mauro Carvalho Chehab
Em 14-10-2010 16:03, D. K. escreveu:
Quoted 4 lines
gp8psk: Add support for the Genpix Skywalker-2 per user requests.
Patched against v4l-dvb hg
ab433502e041tip. Should patch fine against git as well.No, it didn't apply at -git. It seems that the following patch already added Skywalker-2.
The Skywalker-2 didn't even exist at the time of that patch and I don't see any reason why it wouldn't have applied. Seems very odd it patches against hg and not git. I guess I'll have to download git and see what problem there is. Will get back to you afterwards.
Thanks,
Derek
Seems some #if 0 code is gone from git and that's the reason. I made a new patch against git and resubmitted. Is it git behavior to remove #if 0 code, or did someone do it? I couldn't find any log of any patch that removed it in git.
Thanks,
Derek