aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/media/pwc/pwc-ctrl.c
diff options
context:
space:
mode:
authorAlan Cox <alan@lxorguk.ukuu.org.uk>2005-05-27 08:40:53 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-05-27 10:45:21 -0400
commit88c1834633341bbb94e315433067496338bff4ad (patch)
tree4ec40e39b38d768866fabc0dec7f9c4cfdc4b02d /drivers/usb/media/pwc/pwc-ctrl.c
parent5d9e4ea55ae19f9083b9c2c97cc912b823ee7ab4 (diff)
[PATCH] remove non-cleanroom pwc driver compression
The original pwc author raised some questions about the reverse engineering of the decompressor algorithms used in the pwc driver. Having done some detailed investigation it appears those concerns that clean room policy was not followed are reasonable. I've also had a friendly discussion with Philips to ask their view on this. This removes the problem items of code which reduces the pwc functionality in the kernel a little but leaves all the framework for setup that will be needed for decompressors in user space (where they eventually belong). This change set is designed to be the minimal risk change set given that 2.6.12 is hopefully close to hand, with a view to merging the much updated pwc code in 2.6.13 series kernels. Someone else can then redo the decompressors properly (clean room) in user space. Note that while its easy to say that it should have been caught earlier, but the violation was really only obvious to someone who had access to both the proprietary source and the 'GPL' source.
Diffstat (limited to 'drivers/usb/media/pwc/pwc-ctrl.c')
-rw-r--r--drivers/usb/media/pwc/pwc-ctrl.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/usb/media/pwc/pwc-ctrl.c b/drivers/usb/media/pwc/pwc-ctrl.c
index 42ec468d52d6..3e1e4fe20d85 100644
--- a/drivers/usb/media/pwc/pwc-ctrl.c
+++ b/drivers/usb/media/pwc/pwc-ctrl.c
@@ -246,7 +246,7 @@ static inline int set_video_mode_Nala(struct pwc_device *pdev, int size, int fra
246 switch(pdev->type) { 246 switch(pdev->type) {
247 case 645: 247 case 645:
248 case 646: 248 case 646:
249 pwc_dec1_init(pdev->type, pdev->release, buf, pdev->decompress_data); 249/* pwc_dec1_init(pdev->type, pdev->release, buf, pdev->decompress_data); */
250 break; 250 break;
251 251
252 case 675: 252 case 675:
@@ -256,7 +256,7 @@ static inline int set_video_mode_Nala(struct pwc_device *pdev, int size, int fra
256 case 730: 256 case 730:
257 case 740: 257 case 740:
258 case 750: 258 case 750:
259 pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); 259/* pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); */
260 break; 260 break;
261 } 261 }
262 } 262 }
@@ -318,8 +318,8 @@ static inline int set_video_mode_Timon(struct pwc_device *pdev, int size, int fr
318 if (ret < 0) 318 if (ret < 0)
319 return ret; 319 return ret;
320 320
321 if (pChoose->bandlength > 0 && pdev->vpalette != VIDEO_PALETTE_RAW) 321/* if (pChoose->bandlength > 0 && pdev->vpalette != VIDEO_PALETTE_RAW)
322 pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); 322 pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); */
323 323
324 pdev->cmd_len = 13; 324 pdev->cmd_len = 13;
325 memcpy(pdev->cmd_buf, buf, 13); 325 memcpy(pdev->cmd_buf, buf, 13);
@@ -397,8 +397,8 @@ static inline int set_video_mode_Kiara(struct pwc_device *pdev, int size, int fr
397 if (ret < 0) 397 if (ret < 0)
398 return ret; 398 return ret;
399 399
400 if (pChoose->bandlength > 0 && pdev->vpalette != VIDEO_PALETTE_RAW) 400/* if (pChoose->bandlength > 0 && pdev->vpalette != VIDEO_PALETTE_RAW)
401 pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); 401 pwc_dec23_init(pdev->type, pdev->release, buf, pdev->decompress_data); */
402 402
403 pdev->cmd_len = 12; 403 pdev->cmd_len = 12;
404 memcpy(pdev->cmd_buf, buf, 12); 404 memcpy(pdev->cmd_buf, buf, 12);