Message ID | 49D2338C.7040703@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Hi Alan, On Tue, 31 Mar 2009, Alan Nisota wrote: > I have been informed by the manufacturer that the patch currently in the v4l > tree to support the Genpix-CW3K version of the hardware will actually damage > the firmware on recent units. As he seems to not want this hardware > supported in Linux, and I do not know how to detect the difference between > affected and not-affected units, I am requesting the immediate removal of > support for this device. This patch removes a portion of the changeset > dce7e08ed2b1 applied 2007-08-18 relating to this specific device. > > Signed off by: Alan Nisota <anisota@gmail.com> Don't you think it is enough to put a Kconfig option to activate the USB-IDs (by default: off) rather than throwing everything away? Patrick. -- Mail: patrick.boettcher@desy.de WWW: http://www.wi-bw.tfh-wildau.de/~pboettch/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Patrick Boettcher wrote: > Hi Alan, > > Don't you think it is enough to put a Kconfig option to activate the > USB-IDs (by default: off) rather than throwing everything away? > We could, but honestly, there are likely few people using this device who don't have to patch their kernel anyway, and it is a trivial patch to apply. There have been 4 incarnations of the CW3K as the manufacturer has tried to actively make it not work in Linux (and users have found ways around that for each subsequent revision). When I created the patch, I was not aware that the developer would take this stance. Only the 1st batch of devices works with the existing code, and I'm not aware of any way to detect the device version. Given the manufacturer's stance and the potential to unknowingly damage the device (I've been informed that the manufacturer has stated that use of the Linux drivers with the CW3K will void any manufacturer's warranty), I would rather remove support for this piece of hardware outright. I believe the manufacturer still supports the 8PSK->USB and Skywalker1 versions of the hardware on Linux (plus a new Skywalker2 which requires a kernel patch to enable). -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Alan, On Wed, 01 Apr 2009 13:01:25 -0700 Alan Nisota <alannisota@gmail.com> wrote: > Patrick Boettcher wrote: > > Hi Alan, > > > > Don't you think it is enough to put a Kconfig option to activate the > > USB-IDs (by default: off) rather than throwing everything away? > > > We could, but honestly, there are likely few people using this device > who don't have to patch their kernel anyway, and it is a trivial patch > to apply. There have been 4 incarnations of the CW3K as the > manufacturer has tried to actively make it not work in Linux (and users > have found ways around that for each subsequent revision). When I > created the patch, I was not aware that the developer would take this > stance. Only the 1st batch of devices works with the existing code, and > I'm not aware of any way to detect the device version. > > Given the manufacturer's stance and the potential to unknowingly damage > the device (I've been informed that the manufacturer has stated that use > of the Linux drivers with the CW3K will void any manufacturer's > warranty), I would rather remove support for this piece of hardware > outright. I believe the manufacturer still supports the 8PSK->USB and > Skywalker1 versions of the hardware on Linux (plus a new Skywalker2 > which requires a kernel patch to enable). We shouldn't drop support for a device just because the manufacturer doesn't want it to be supported. If it really damages the hardware or violates the warranty, then we can print a warning message clearly stating that the vendor refuses to collaborate, briefly explaining the issues and recommending the user to replace the device to some other from a vendor-friendly at dmesg, but keep allowing they to use it, with some force option for people that wants to take the risk. This is just my 2 cents. Cheers, Mauro -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Mauro Carvalho Chehab wrote: > We shouldn't drop support for a device just because the manufacturer doesn't > want it to be supported. If it really damages the hardware or violates the > warranty, then we can print a warning message clearly stating that the vendor > refuses to collaborate, briefly explaining the issues and recommending the user > to replace the device to some other from a vendor-friendly at dmesg, but keep > allowing they to use it, with some force option for people that wants to take > the risk. > I'm not going to go through the entire soap-opera as I know it, but basically the manufacturer has 2 tiers of devices, those that were designed to work only with a specific piece of hardware, and those that are supported in Windows and Linux, but come with a significant price premium. The latter devices are supported by the kernel and should be continued to be. The former is what we're talking about and what my patch removes support for. The patch was in response to real users with real problems. I am in no way associated with the manufacturer other than that he provided me with initial help writing the Linux drivers several years ago. I no longer have a use for the drivers myself, and any support I do is just to help the community out. I have provided a patch which makes the driver safe to use. If you prefer an alternate method of achieving the same goal, or wish to just ignore it altogether, that is ok, but I don't have the time to develop and test a patch that is more complicated then what I've already posted. If you are going to take any action, I would prefer it get pushed into the current kernel development tree to minimize the potential harm to users. -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Alan, On Tue, 31 Mar 2009, Alan Nisota wrote: > I have been informed by the manufacturer that the patch currently in the v4l > tree to support the Genpix-CW3K version of the hardware will actually damage > the firmware on recent units. As he seems to not want this hardware > supported in Linux, and I do not know how to detect the difference between > affected and not-affected units, I am requesting the immediate removal of > support for this device. This patch removes a portion of the changeset > dce7e08ed2b1 applied 2007-08-18 relating to this specific device. > > Signed off by: Alan Nisota <anisota@gmail.com> Finally I found the time to work on your patch. I adapted it to not remove the code, but to put it under comments and #if 0's . Like that we protect "normal" users and advanced users need to do some efforts before getting in danger. I hope it is OK with you. regards, Patrick. -- Mail: patrick.boettcher@desy.de WWW: http://www.wi-bw.tfh-wildau.de/~pboettch/ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff -r 5567e82c34a0 linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h --- a/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Tue Mar 31 07:24:14 2009 -0300 +++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb-ids.h Tue Mar 31 07:48:00 2009 -0700 @@ -225,7 +225,6 @@ #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_MSI_DIGIVOX_DUO 0x8801 diff -r 5567e82c34a0 linux/drivers/media/dvb/dvb-usb/gp8psk.c --- a/linux/drivers/media/dvb/dvb-usb/gp8psk.c Tue Mar 31 07:24:14 2009 -0300 +++ b/linux/drivers/media/dvb/dvb-usb/gp8psk.c Tue Mar 31 07:48:00 2009 -0700 @@ -138,8 +138,6 @@ static int gp8psk_power_ctrl(struct dvb_ if (onoff) { gp8psk_usb_in_op(d, GET_8PSK_CONFIG,0,0,&status,1); if (! (status & bm8pskStarted)) { /* started */ - if(gp_product_id == USB_PID_GENPIX_SKYWALKER_CW3K) - gp8psk_usb_out_op(d, CW3K_INIT, 1, 0, NULL, 0); if (gp8psk_usb_in_op(d, BOOT_8PSK, 1, 0, &buf, 1)) return -EINVAL; } @@ -168,8 +166,6 @@ static int gp8psk_power_ctrl(struct dvb_ /* Turn off 8psk power */ if (gp8psk_usb_in_op(d, BOOT_8PSK, 0, 0, &buf, 1)) return -EINVAL; - if(gp_product_id == USB_PID_GENPIX_SKYWALKER_CW3K) - gp8psk_usb_out_op(d, CW3K_INIT, 0, 0, NULL, 0); } return 0; } @@ -223,7 +219,6 @@ 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_CW3K) }, { 0 }, }; MODULE_DEVICE_TABLE(usb, gp8psk_usb_table); @@ -254,7 +249,7 @@ static struct dvb_usb_device_properties .generic_bulk_ctrl_endpoint = 0x01, - .num_device_descs = 4, + .num_device_descs = 3, .devices = { { .name = "Genpix 8PSK-to-USB2 Rev.1 DVB-S receiver", .cold_ids = { &gp8psk_usb_table[0], NULL }, @@ -267,10 +262,6 @@ static struct dvb_usb_device_properties { .name = "Genpix SkyWalker-1 DVB-S receiver", .cold_ids = { NULL }, .warm_ids = { &gp8psk_usb_table[3], NULL }, - }, - { .name = "Genpix SkyWalker-CW3K DVB-S receiver", - .cold_ids = { NULL }, - .warm_ids = { &gp8psk_usb_table[4], NULL }, }, { NULL }, } diff -r 5567e82c34a0 linux/drivers/media/dvb/dvb-usb/gp8psk.h --- a/linux/drivers/media/dvb/dvb-usb/gp8psk.h Tue Mar 31 07:24:14 2009 -0300 +++ b/linux/drivers/media/dvb/dvb-usb/gp8psk.h Tue Mar 31 07:48:00 2009 -0700 @@ -51,7 +51,6 @@ extern int dvb_usb_gp8psk_debug; #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