segfault with UVC webcam
Hi everyone: I am trying to use a Samsung branded webcam and it's resulting in a segfault. This happens with both 3.13 and 4.3.6 kernels. Googling around doesn't reveal anything useful. [ 110.605327] usb 2-1.2: new high-speed USB device number 5 using ehci-pci [ 110.698450] usb 2-1.2: New USB device found, idVendor=04e8, idProduct=2061 [ 110.698458] usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 110.698462] usb 2-1.2: Product: USB2.0 UVC HQ WebCam [ 110.698465] usb 2-1.2: Manufacturer: Alpha Imaging Tech. Corp. [ 110.698889] uvcvideo: Found UVC 1.00 device USB2.0 UVC HQ WebCam (04e8:2061) [ 110.699547] input: USB2.0 UVC HQ WebCam as /devices/pci:00/:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/input/input16 [ 136.030151] vmalloc: allocation failure: 0 bytes [ 136.030156] video_source:sr: page allocation failure: order:0, mode:0x80d2 [ 136.030160] CPU: 3 PID: 10533 Comm: video_source:sr Not tainted 4.3.6-040306-generic #201602191831 [ 136.030162] Hardware name: LENOVO 243852U/243852U, BIOS G5ET98WW (2.58 ) 04/01/2014 [ 136.030164] 5823f19b 8805a5ee3a20 813c2e44 [ 136.030167] 80d2 8805a5ee3ab0 8118a4d7 81acc738 [ 136.030170] 8805a5ee3a40 88050018 8805a5ee3ac0 8805a5ee3a60 [ 136.030173] Call Trace: [ 136.030181] [] dump_stack+0x44/0x60 [ 136.030187] [] warn_alloc_failed+0xf7/0x150 [ 136.030193] [] ? usb_start_wait_urb+0xab/0x170 [ 136.030196] [] ? usb_control_msg+0xeb/0x130 [ 136.030200] [] __vmalloc_node_range+0x20b/0x290 [ 136.030203] [] ? usb_control_msg+0xeb/0x130 [ 136.030205] [] vmalloc_user+0x55/0x90 [ 136.030211] [] ? vb2_vmalloc_alloc+0x46/0xc0 [videobuf2_vmalloc] [ 136.030214] [] vb2_vmalloc_alloc+0x46/0xc0 [videobuf2_vmalloc] [ 136.030220] [] __vb2_queue_alloc+0x164/0x530 [videobuf2_core] [ 136.030224] [] __reqbufs.isra.20+0x1f8/0x360 [videobuf2_core] [ 136.030228] [] vb2_reqbufs+0x30/0x40 [videobuf2_core] [ 136.030232] [] uvc_request_buffers+0x2e/0x50 [uvcvideo] [ 136.030236] [] uvc_ioctl_reqbufs+0x4a/0xa0 [uvcvideo] [ 136.030244] [] v4l_reqbufs+0x43/0x50 [videodev] [ 136.030249] [] __video_do_ioctl+0x291/0x310 [videodev] [ 136.030256] [] video_usercopy+0x33e/0x550 [videodev] [ 136.030261] [] ? video_ioctl2+0x20/0x20 [videodev] [ 136.030265] [] ? sock_write_iter+0x85/0xf0 [ 136.030271] [] video_ioctl2+0x15/0x20 [videodev] [ 136.030276] [] v4l2_ioctl+0xd3/0xe0 [videodev] [ 136.030280] [] do_vfs_ioctl+0x295/0x480 [ 136.030284] [] ? vfs_write+0x146/0x1a0 [ 136.030287] [] SyS_ioctl+0x79/0x90 [ 136.030290] [] entry_SYSCALL_64_fastpath+0x16/0x75 [ 136.030292] Mem-Info: [ 136.030297] active_anon:321167 inactive_anon:28083 isolated_anon:0 [ 136.030297] active_file:69108 inactive_file:202742 isolated_file:0 [ 136.030297] unevictable:27 dirty:119 writeback:0 unstable:0 [ 136.030297] slab_reclaimable:11597 slab_unreclaimable:9590 [ 136.030297] mapped:62552 shmem:28410 pagetables:9020 bounce:0 [ 136.030297] free:5376384 free_pcp:2637 free_cma:0 [ 136.030302] Node 0 DMA free:15884kB min:12kB low:12kB high:16kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15984kB managed:15900kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:16kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes [ 136.030308] lowmem_reserve[]: 0 2550 23648 23648 [ 136.030311] Node 0 DMA32 free:2224980kB min:2116kB low:2644kB high:3172kB active_anon:222304kB inactive_anon:13472kB active_file:31616kB inactive_file:97440kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:2693612kB managed:2613408kB mlocked:0kB dirty:36kB writeback:0kB mapped:28924kB shmem:13592kB slab_reclaimable:4936kB slab_unreclaimable:3792kB kernel_stack:992kB pagetables:4044kB unstable:0kB bounce:0kB free_pcp:5472kB local_pcp:696kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no [ 136.030317] lowmem_reserve[]: 0 0 21098 21098 [ 136.030320] Node 0 Normal free:19264672kB min:17516kB low:21892kB high:26272kB active_anon:1062364kB inactive_anon:98860kB active_file:244816kB inactive_file:713528kB unevictable:108kB isolated(anon):0kB isolated(file):0kB present:21993472kB managed:21604496kB mlocked:108kB dirty:440kB writeback:0kB mapped:221284kB shmem:100048kB slab_reclaimable:41452kB slab_unreclaimable:34552kB kernel_stack:8240kB pagetables:32036kB unstable:0kB bounce:0kB free_pcp:5076kB local_pcp:632kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no [ 136.030326] lowmem_reserve[]: 0 0 0 0 [ 136.030329] Node 0 DMA: 1*4kB (U) 1*8kB (U) 2*16kB (U) 1*32kB (U) 1*64kB (U) 1*128kB (U) 1*256kB (U) 0*512kB 1*1024kB (U) 1*2048kB (M) 3*4096kB (M) = 15884kB [
cx231xx interlace-like artifacts
I just recently changed my vidcap to a Hauppage . Now I get these interlace-like artifacts: http://seiner.com/cz/rtpictures/2012_07_25T14h20m46sZ_0.451651_44.090619_-123.126059.jpg http://seiner.com/cz/rtpictures/2012_07_25T14h22m48sZ_0.224624_44.089669_-123.139100.jpg cxx231x.h has the following line: #define CX231XX_INTERLACED_DEFAULT 1 Is there some way to turn off interlacing with a parameter? Thanks, --Yan -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx interlace-like artifacts
Yan Seiner wrote: I just recently changed my vidcap to a Hauppage . Now I get these interlace-like artifacts: http://seiner.com/cz/rtpictures/2012_07_25T14h20m46sZ_0.451651_44.090619_-123.126059.jpg http://seiner.com/cz/rtpictures/2012_07_25T14h22m48sZ_0.224624_44.089669_-123.139100.jpg cxx231x.h has the following line: #define CX231XX_INTERLACED_DEFAULT 1 Is there some way to turn off interlacing with a parameter? OOPS! hit send too soon, it seems. Here's the card info: [ 487.64] cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces [ 487.65] cx231xx #0: registering interface 1 [ 487.65] cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 [ 487.66] cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 [ 487.67] cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) [ 487.79] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 487.80] cx25840 0-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0) [ 487.84] cx25840 0-0044: Firmware download size changed to 16 bytes max length [ 489.94] cx25840 0-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes) [ 489.99] cx231xx #0: cx231xx #0: v4l2 driver version 0.0.2 [ 490.02] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 490.09] cx231xx #0: video_mux : 0 [ 490.09] cx231xx #0: do_mode_ctrl_overrides : 0xb000 [ 490.10] cx231xx #0: do_mode_ctrl_overrides NTSC [ 490.11] cx231xx #0: cx231xx #0/0: registered device video0 [v4l2] [ 490.12] cx231xx #0: cx231xx #0/0: registered device vbi0 [ 490.13] cx231xx #0: V4L2 device registered as video0 and vbi0 [ 490.13] cx231xx #0: EndPoint Addr 0x8400, Alternate settings: 5 [ 490.14] cx231xx #0: Alternate setting 0, max size= 512 [ 490.14] cx231xx #0: Alternate setting 1, max size= 184 [ 490.15] cx231xx #0: Alternate setting 2, max size= 728 [ 490.16] cx231xx #0: Alternate setting 3, max size= 2892 [ 490.16] cx231xx #0: Alternate setting 4, max size= 1800 [ 490.17] cx231xx #0: EndPoint Addr 0x8500, Alternate settings: 2 [ 490.17] cx231xx #0: Alternate setting 0, max size= 512 [ 490.18] cx231xx #0: Alternate setting 1, max size= 512 [ 490.18] cx231xx #0: EndPoint Addr 0x8600, Alternate settings: 2 [ 490.19] cx231xx #0: Alternate setting 0, max size= 512 [ 490.20] cx231xx #0: Alternate setting 1, max size= 576 -- Help us raise money for my kids' swim team! http://www.facebook.com/RiverRoadKids4Kids -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
saa7115: black image
I have an embedded platform with a Hauppage USB Live video capture dongle. I recently upgraded to 3.0.12 and now I get no image at all - a nice pure black is all I get. I am sure that the dongle is getting a signal. This same hardware used to work with an older 2.6 kernel. Partial lsmod: root@anchor:/etc# lsmod Module Size Used byNot tainted saa711511296 0 usbvision 48704 0 v4l2_common 4336 2 saa7115,usbvision videodev 62768 3 saa7115,usbvision,v4l2_common i2c_core 12240 5 saa7115,usbvision,v4l2_common,videodev,i2c_dev [ 33.64] usbcore: registered new interface driver usb-storage [ 33.644000] USB Mass Storage support registered. [ 33.708000] Linux video capture interface: v2.00 [ 34.084000] usbvision_probe: Hauppauge WinTV USB Live Pro (NTSC M/N) found [ 34.092000] USBVision[0]: registered USBVision Video device video0 [v4l2] [ 34.10] usbcore: registered new interface driver usbvision [ 34.104000] USBVision USB Video Device Driver for Linux : 0.9.10 and this shows up every time the device is opened: [ 219.772000] saa7115 0-0025: saa7113 found (1f7113d0e10) @ 0x4a (usbvision-3-1) I can't help but think I am missing a module, or firmware, or something But with no messages to go on it's a bit of a mystery. And yes, I've tried different inputs on the dongle; 0 is the composite in and 1 is the s-video. I'm using input 0. -- Honoring our vets. http://www.bataanmarch.com/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: saa7115: black image
Yan Seiner wrote: I have an embedded platform with a Hauppage USB Live video capture dongle. I recently upgraded to 3.0.12 and now I get no image at all - a nice pure black is all I get. I am sure that the dongle is getting a signal. This same hardware used to work with an older 2.6 kernel. Partial lsmod: root@anchor:/etc# lsmod Module Size Used byNot tainted saa711511296 0 usbvision 48704 0 v4l2_common 4336 2 saa7115,usbvision videodev 62768 3 saa7115,usbvision,v4l2_common i2c_core 12240 5 saa7115,usbvision,v4l2_common,videodev,i2c_dev [ 33.64] usbcore: registered new interface driver usb-storage [ 33.644000] USB Mass Storage support registered. [ 33.708000] Linux video capture interface: v2.00 [ 34.084000] usbvision_probe: Hauppauge WinTV USB Live Pro (NTSC M/N) found [ 34.092000] USBVision[0]: registered USBVision Video device video0 [v4l2] [ 34.10] usbcore: registered new interface driver usbvision [ 34.104000] USBVision USB Video Device Driver for Linux : 0.9.10 and this shows up every time the device is opened: [ 219.772000] saa7115 0-0025: saa7113 found (1f7113d0e10) @ 0x4a (usbvision-3-1) I can't help but think I am missing a module, or firmware, or something But with no messages to go on it's a bit of a mystery. And yes, I've tried different inputs on the dongle; 0 is the composite in and 1 is the s-video. I'm using input 0. Here's the verbose capture using fswebcam: root@anchor:/lib/modules/3.0.12# fswebcam -v -c /etc/fswebcam Reading configuration from '/etc/fswebcam'... --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. src_v4l2_get_capability,83: /dev/video0 information: src_v4l2_get_capability,84: cap.driver: USBVision src_v4l2_get_capability,85: cap.card: Hauppauge WinTV USB Live Pro (N src_v4l2_get_capability,86: cap.bus_info: usb-:00:02.1-1 src_v4l2_get_capability,87: cap.capabilities=0x05020001 src_v4l2_get_capability,88: - VIDEO_CAPTURE src_v4l2_get_capability,95: - AUDIO src_v4l2_get_capability,97: - READWRITE src_v4l2_get_capability,99: - STREAMING src_v4l2_set_input,177: /dev/video0: Input 0 information: src_v4l2_set_input,178: name = Composite Video Input src_v4l2_set_input,179: type = 0002 src_v4l2_set_input,181: - CAMERA src_v4l2_set_input,182: audioset = src_v4l2_set_input,183: tuner = src_v4l2_set_input,184: status = src_v4l2_set_pix_format,537: Device offers the following V4L2 pixel formats: src_v4l2_set_pix_format,550: 0: [0x59455247] 'GREY' (GREY) src_v4l2_set_pix_format,550: 1: [0x50424752] 'RGBP' (RGB565) src_v4l2_set_pix_format,550: 2: [0x33424752] 'RGB3' (RGB24) src_v4l2_set_pix_format,550: 3: [0x34424752] 'RGB4' (RGB32) src_v4l2_set_pix_format,550: 4: [0x4F424752] 'RGBO' (RGB555) src_v4l2_set_pix_format,550: 5: [0x56595559] 'YUYV' (YUV422) src_v4l2_set_pix_format,550: 6: [0x32315659] 'YV12' (YUV420P) Using palette RGB32 Delaying 1 seconds. src_v4l2_set_mmap,689: mmap information: src_v4l2_set_mmap,690: frames=3 src_v4l2_set_mmap,737: 0 length=307200 src_v4l2_set_mmap,737: 1 length=307200 src_v4l2_set_mmap,737: 2 length=307200 --- Capturing frame... Skipping 5 frames... Capturing 1 frames... Captured 6 frames in 0.21 seconds. (28 fps) --- Processing captured image... Setting font to LiberationSans-Regular:10. Setting output format to JPEG, quality 95 Writing JPEG image to '/tmp/.tmp.jpg'. root@anchor:/lib/modules/3.0.12# -- Honoring our vets. http://www.bataanmarch.com/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: saa7115: black image
Yan Seiner wrote: Yan Seiner wrote: I have an embedded platform with a Hauppage USB Live video capture dongle. I recently upgraded to 3.0.12 and now I get no image at all - a nice pure black is all I get. OK, I get the bonehead of the weekend award. I'm getting a black image because drum roll please the power to the camera was off. Sorry to pollute the list with my boneheaded-ness. :-) -- Honoring our vets. http://www.bataanmarch.com/ -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
Yan Seiner wrote: Yan Seiner wrote: Andy Walls wrote: 800 MB for 320x420 frames? It sounds like your app has gooned its requested buffer size. That's an understatement. :-) wild speculation This might be due to endianess differences between MIPS abd x86 and your app only being written and tested on x86. /wild speculation My speculation too. I don't know where that number comes from; the same app works fine with the saa7115 driver if I switch frame grabbers. I'll have to do some fiddling with the code to figure out where the problem lies. It's some interaction between the app and the cx231xx driver. HAH! This simple patch fixes it on my MIPS platform - not tested on other architectures as I don't have them readily available running a newer kernel: OK, too groggy last night with my own success... Here's the better solution. Should work on all architectures. diff -U3 /data10/home/yan/openwrt/backfire/trunk/build_dir/linux-brcm47xx/linux-3.0.3/drivers/media/video/cx231xx/cx231xx-pcb-cfg.c cx231xx-pcb-cfg.c --- /data10/home/yan/openwrt/backfire/trunk/build_dir/linux-brcm47xx/linux-3.0.3/drivers/media/video/cx231xx/cx231xx-pcb-cfg.c 2011-08-17 10:57:16.0 -0700 +++ cx231xx-pcb-cfg.c2011-12-13 05:50:36.0 -0800 @@ -672,7 +672,9 @@ pcb config it is related to */ cx231xx_read_ctrl_reg(dev, VRT_GET_REGISTER, BOARD_CFG_STAT, data, 4); -config_info = *((u32 *) data); +//config_info = *((u32 *) data); +config_info = ((u32)(*(data))) + (((u32)(*(data+1))) 8) + (((u32)(*(data+2))) 16) + (((u32)(*(data+3))) 24); +cx231xx_info(config_info %x\n,config_info); usb_speed = (u8) (config_info 0x1); /* Verify this device belongs to Bus power or Self power device */ -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
Andy Walls wrote: 800 MB for 320x420 frames? It sounds like your app has gooned its requested buffer size. That's an understatement. :-) wild speculation This might be due to endianess differences between MIPS abd x86 and your app only being written and tested on x86. /wild speculation My speculation too. I don't know where that number comes from; the same app works fine with the saa7115 driver if I switch frame grabbers. I'll have to do some fiddling with the code to figure out where the problem lies. It's some interaction between the app and the cx231xx driver. You still appear to USB stack problems, but not as severe (can't change device config to some bogus config). The requested buffer size is the result of multiplying max_pkt_size * max_packets and the rejected config shows a max_packet_size of 0, maybe ithere;'s a problem with either endianness or int size... ??? Something to follow up on. Regards, Andy !DSPAM:4ee5f4e4112206551461313! -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
On Mon, December 12, 2011 6:23 am, Devin Heitmueller wrote: For what it's worth, I did do quite a bit of work on cx231xx, including work for mips and arm platforms. That said, all the work done was on the control interfaces rather than the buffer management (my particular use case didn't have the video coming back over the USB bus). How does your app setup the buffers? Is it doing MMAP? Userptr? It's possible userptr support is broken, as that's something that is much less common. And as Andy suggested, if you can test your app under x86, knowing whether the app works with cx231xx under x86 is useful in knowing if you have a mips issue or something that your app in particular is doing. OK, I just tried this with motion (still on the MIPS platform), a totally different app. It tries to allocate a reasonable amount of memory: [1] mmap information: [1] frames=4 [1] 0 length=153600 [1] 1 length=153600 [1] 2 length=153600 [1] 3 length=153600 [1] buffer index 0 VIDIOC_QBUF: Cannot allocate memory [1] ioctl (VIDIOCGCAP): Invalid argument but the driver still tries to grab 800MB. So it's somewhere between the app and the driver. Also, just to be clear, the USB Live 2 doesn't have any onboard hardware compression. It has comparable requirements related to USB bus utilization as any other USB framegrabber. The only possible advantage you might get is that it does have an onboard scaler, so if you're willing to compromise on quality you can change the capture resolution to a lower value such as 320x240. Also, bear in mind that the cx231xx driver may not be properly tuned to reduce the alternate it uses dependent on resolution. To my knowledge that functionality has not been thoroughly tested (as it's an unpopular use case). OK, thanks. I was hoping this was a hardware framegrabber; the info on the website is so ambiguous as to be nearly useless. And finally, there were fixes for the USB Live 2 specifically which you may not have in 3.0.3. You should check the changelogs. It's possible that the failure to set the USB alternate is leaving the driver is an unknown state, which causes it to crash once actually trying to allocate the buffers. Will do. -- Pain is temporary. It may last a minute, or an hour, or a day, or a year, but eventually it will subside and something else will take its place. If I quit, however, it lasts forever. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
On Mon, December 12, 2011 8:22 am, Devin Heitmueller wrote: On Mon, Dec 12, 2011 at 10:58 AM, Yan Seiner y...@seiner.com wrote: Also, just to be clear, the USB Live 2 doesn't have any onboard hardware compression. It has comparable requirements related to USB bus utilization as any other USB framegrabber. The only possible advantage you might get is that it does have an onboard scaler, so if you're willing to compromise on quality you can change the capture resolution to a lower value such as 320x240. Also, bear in mind that the cx231xx driver may not be properly tuned to reduce the alternate it uses dependent on resolution. To my knowledge that functionality has not been thoroughly tested (as it's an unpopular use case). OK, thanks. I was hoping this was a hardware framegrabber; the info on the website is so ambiguous as to be nearly useless. I think you're just confused about the terminology. The term framegrabber inherently means that it's delivering raw video (as opposed to having onboard compression and providing MPEG or some other compressed format). All framegrabbers are hardware framegrabbers. Aha. Thanks for the explanation. You may wish to look at the HVR-1950, which is well supported under Linux and does deliver MPEG video. It's obviously more expensive that the USB Live 2 and it has a tuner which you probably don't need, but it does avoid the issue if you have USB bus constraints. I had looked at the HVR-1950 but the power consumption was prohibitive for my application. :-( --Yan -- Pain is temporary. It may last a minute, or an hour, or a day, or a year, but eventually it will subside and something else will take its place. If I quit, however, it lasts forever. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
Yan Seiner wrote: Andy Walls wrote: 800 MB for 320x420 frames? It sounds like your app has gooned its requested buffer size. That's an understatement. :-) wild speculation This might be due to endianess differences between MIPS abd x86 and your app only being written and tested on x86. /wild speculation My speculation too. I don't know where that number comes from; the same app works fine with the saa7115 driver if I switch frame grabbers. I'll have to do some fiddling with the code to figure out where the problem lies. It's some interaction between the app and the cx231xx driver. HAH! This simple patch fixes it on my MIPS platform - not tested on other architectures as I don't have them readily available running a newer kernel: --- /data10/home/yan/openwrt/backfire/trunk/build_dir/linux-brcm47xx/linux-3.0.3/drivers/media/video/cx231xx/cx231xx-pcb-cfg.c 2011-08-17 10:57:16.0 -0700 +++ cx231xx-pcb-cfg.c2011-12-12 20:16:23.0 -0800 @@ -672,7 +672,9 @@ pcb config it is related to */ cx231xx_read_ctrl_reg(dev, VRT_GET_REGISTER, BOARD_CFG_STAT, data, 4); -config_info = *((u32 *) data); +//config_info = *((u32 *) data); +config_info = *(data); +cx231xx_info(config_info %x\n,config_info); usb_speed = (u8) (config_info 0x1); /* Verify this device belongs to Bus power or Self power device */ No more errors and the frame grabber works up to 480x320 even on a slow MIPS board. [ 33.64] cx231xx v4l2 driver loaded. [ 33.65] cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces [ 33.66] cx231xx #0: registering interface 1 [ 33.66] cx231xx #0: config_info c9 [ 33.67] cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 [ 33.68] cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 [ 33.69] cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) [ 33.80] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 33.82] cx231xx #0: Changing the i2c master port to 3 [ 33.82] cx25840 0-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0) [ 33.85] cx25840 0-0044: Firmware download size changed to 16 bytes max length [ 35.88] cx25840 0-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes) [ 35.92] cx231xx #0: cx231xx #0: v4l2 driver version 0.0.1 [ 35.95] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 36.00] cx231xx #0: video_mux : 0 [ 36.01] cx231xx #0: do_mode_ctrl_overrides : 0xb000 [ 36.01] cx231xx #0: do_mode_ctrl_overrides NTSC [ 36.02] cx231xx #0: cx231xx #0/0: registered device video0 [v4l2] [ 36.03] cx231xx #0: cx231xx #0/0: registered device vbi0 [ 36.04] cx231xx #0: V4L2 device registered as video0 and vbi0 [ 36.04] cx231xx #0: EndPoint Addr 0x8400, Alternate settings: 5 [ 36.05] cx231xx #0: Alternate setting 0, max size= 512 [ 36.05] cx231xx #0: Alternate setting 1, max size= 184 [ 36.06] cx231xx #0: Alternate setting 2, max size= 728 [ 36.07] cx231xx #0: Alternate setting 3, max size= 2892 [ 36.07] cx231xx #0: Alternate setting 4, max size= 1800 [ 36.08] cx231xx #0: EndPoint Addr 0x8500, Alternate settings: 2 [ 36.08] cx231xx #0: Alternate setting 0, max size= 512 [ 36.09] cx231xx #0: Alternate setting 1, max size= 512 [ 36.09] cx231xx #0: EndPoint Addr 0x8600, Alternate settings: 2 [ 36.10] cx231xx #0: Alternate setting 0, max size= 512 [ 36.11] cx231xx #0: Alternate setting 1, max size= 576 [ 36.11] usbcore: registered new interface driver cx231xx [ 36.32] ar71xx-wdt: enabling watchdog timer -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
I'm resurrecting an older thread. I have a Hauppage USB Live2 connected to a MIPS box running openWRT. I tried this earlier on a older hardware running the 3.0.3 kernel. This is with newer hardware running 2.6.39.4. The driver attempts to allocate 800MB (!!!) of memory for the buffer and fails with a kernel crash. I'm not including any kernel crash stuff as it has all the symbols stripped. This seems to be the key message: [ 514.77] unable to allocate 805398992 bytes for transfer buffer 0 What can I do to narrow down the allocation problem? system type: Atheros AR9132 rev 2 machine: Buffalo WZR-HP-G300NH processor: 0 cpu model: MIPS 24Kc V7.4 BogoMIPS: 265.42 Bus 001 Device 005: ID 2040:c200 Hauppauge [ 34.56] cx231xx v4l2 driver loaded. [ 34.57] cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces [ 34.58] cx231xx #0: registering interface 1 [ 34.58] cx231xx #0: bad senario! [ 34.59] cx231xx #0: config_info=0 [ 34.59] cx231xx #0: can't change interface 1 alt no. to 3: Max. Pkt size = 0 [ 34.60] usb 1-1.2: selecting invalid altsetting 3 [ 34.60] cx231xx #0: can't change interface 1 alt no. to 3 (err=-22) [ 34.61] cx231xx #0: can't change interface 1 alt no. to 1: Max. Pkt size = 0 [ 34.62] usb 1-1.2: selecting invalid altsetting 1 [ 34.62] cx231xx #0: can't change interface 1 alt no. to 1 (err=-22) [ 34.63] cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) [ 34.74] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 34.76] cx231xx #0: Changing the i2c master port to 3 [ 34.76] cx25840 0-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0) [ 34.79] cx25840 0-0044: Firmware download size changed to 16 bytes max length [ 36.77] cx25840 0-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes) [ 36.81] cx231xx #0: cx231xx #0: v4l2 driver version 0.0.1 [ 36.84] cx231xx #0: cx231xx_dif_set_standard: setStandard to [ 36.89] cx231xx #0: video_mux : 0 [ 36.90] cx231xx #0: do_mode_ctrl_overrides : 0xb000 [ 36.90] cx231xx #0: do_mode_ctrl_overrides NTSC [ 36.91] cx231xx #0: cx231xx #0/0: registered device video0 [v4l2] [ 36.92] cx231xx #0: cx231xx #0/0: registered device vbi0 [ 36.93] cx231xx #0: V4L2 device registered as video0 and vbi0 [ 36.93] cx231xx #0: EndPoint Addr 0x8f00, Alternate settings: 1 [ 36.94] cx231xx #0: Alternate setting 0, max size= 8 [ 36.94] cx231xx #0: EndPoint Addr 0x8f00, Alternate settings: 1 [ 36.95] cx231xx #0: Alternate setting 0, max size= 8 [ 36.96] cx231xx #0: EndPoint Addr 0x8f00, Alternate settings: 1 [ 36.96] cx231xx #0: Alternate setting 0, max size= 8 [ 36.97] cx231xx #0: EndPoint Addr 0x8f00, Alternate settings: 1 [ 36.97] cx231xx #0: Alternate setting 0, max size= 8 [ 36.98] usbcore: registered new interface driver cx231xx [ 37.23] ar71xx-wdt: enabling watchdog timer root@rtmovies:/www/tmp/root/etc# fswebcam -r 320x240 --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. No input was specified, using the first. VIDIOC_QBUF: Cannot allocate memory Unable to use mmap. Using read instead. --- Capturing frame... VIDIOC_DQBUF: Invalid argument No frames captured. -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
I'm still seeing a kernel oops on use. Module Size Used byNot tainted cx231xx 124608 0 cx2341x13552 1 cx231xx cx2584035568 1 rc_core12640 1 cx231xx videobuf_vmalloc3168 1 cx231xx videobuf_core 12384 2 cx231xx,videobuf_vmalloc When the modules are loaded: cx231xx v4l2 driver loaded. cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces cx231xx #0: registering interface 1 cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: Changing the i2c master port to 3 cx25840 0-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0) cx25840 0-0044: Firmware download size changed to 16 bytes max length cx25840 0-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes) cx231xx #0: cx231xx #0: v4l2 driver version 0.0.1 cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: video_mux : 0 cx231xx #0: do_mode_ctrl_overrides : 0xb000 cx231xx #0: do_mode_ctrl_overrides NTSC cx231xx #0: cx231xx #0/0: registered device video0 [v4l2] cx231xx #0: cx231xx #0/0: registered device vbi0 cx231xx #0: V4L2 device registered as video0 and vbi0 cx231xx #0: EndPoint Addr 0x84, Alternate settings: 5 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 184 cx231xx #0: Alternate setting 2, max size= 728 cx231xx #0: Alternate setting 3, max size= 2892 cx231xx #0: Alternate setting 4, max size= 1800 cx231xx #0: EndPoint Addr 0x85, Alternate settings: 2 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 512 cx231xx #0: EndPoint Addr 0x86, Alternate settings: 2 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 576 And when I try to use it: root@anchor:/# fswebcam -c /etc/fswebcam --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. Adjusting resolution from 768x576 to 720x480. Delaying 1 seconds. --- Capturing frame... Skipping frame... Timed out waiting for frame! Capturing 1 frames... Timed out waiting for frame! No frames captured. dmesg shows: cx231xx #0: setPowerMode::mode = 48, No Change req. cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: video_mux : 0 cx231xx #0: do_mode_ctrl_overrides : 0xb000 cx231xx #0: do_mode_ctrl_overrides NTSC cx231xx #0: cx231xx_stop_stream():: ep_mask = 8 cx231xx #0: cx231xx_initialize_stream_xfer: set video registers cx231xx #0: cx231xx_start_stream():: ep_mask = 8 ehci_hcd :00:02.2: fatal error ehci_hcd :00:02.2: HC died; cleaning up ehci_hcd :00:02.2: force halt; handshake c0350024 4000 4000 - -145 ehci_hcd :00:02.2: HC died; cleaning up usb 1-1: USB disconnect, device number 3 usb 1-1.1: USB disconnect, device number 4 cx231xx #0: UsbInterface::sendCommand, failed with status --19 cx231xx #0: UsbInterface::sendCommand, failed with status --19 usb 1-1.2: USB disconnect, device number 5 pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0 pl2303 1-1.2:1.0: device disconnected usb 1-2: USB disconnect, device number 2 usb 2-1: new full speed USB device number 2 using ohci_hcd usb 2-1: not running at top speed; connect to a high speed hub hub 2-1:1.0: USB hub found hub 2-1:1.0: 4 ports detected usb 3-1: new full speed USB device number 2 using ohci_hcd usb 3-1: not running at top speed; connect to a high speed hub cx231xx #1: New device Hauppauge Hauppauge Device @ 12 Mbps (2040:c200) with 3 interfaces cx231xx #1: registering interface 1 cx231xx #1: can't change interface 3 alt no. to 3: Max. Pkt size = 0 usb 3-1: selecting invalid altsetting 3 cx231xx #1: can't change interface 3 alt no. to 3 (err=-22) cx231xx #1: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #1: can't change interface 4 alt no. to 1 (err=-22) cx231xx #1: Identified as Hauppauge USB Live 2 (card=9) cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: can't change interface 5 alt no. to 0 (err=-22) cx231xx #1: Changing the i2c master port to 3 cx25840 3-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #1) cx25840 3-0044: Firmware download size changed to 16 bytes max length cx25840 3-0044: loaded v4l-cx231xx-avcore-01.fw firmware (16382 bytes) cx231xx #1: cx231xx #1: v4l2 driver version 0.0.1 cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: video_mux : 0 cx231xx #1: do_mode_ctrl_overrides : 0xb000 cx231xx #1: do_mode_ctrl_overrides NTSC cx231xx #1: cx231xx #1/0: registered device video1 [v4l2] cx231xx #1: cx231xx #1/0: registered device vbi1 cx231xx #1: V4L2 device registered as video1 and vbi1 cx231xx #1: EndPoint Addr 0x84, Alternate settings: 2 cx231xx #1: Alternate setting 0, max
Re: cx231xx kernel oops
Yan Seiner wrote: I'm still seeing a kernel oops on use. One more minor point: Before the kernel oops, I have /dev/video0. After the oops, I have /dev/video0 and /dev/video1 - probably related to the ehci crash. -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
On Mon, December 5, 2011 7:18 am, Andy Walls wrote: Yan Seiner y...@seiner.com wrote: ehci_hcd :00:02.2: fatal error ehci_hcd :00:02.2: HC died; cleaning up ehci_hcd :00:02.2: force halt; handshake c0350024 4000 4000 Well, you probably have figured out you have a USB stack problem. I'm not sure why a Host Controller would die and (hopefully) clean up properly, but that needs investigation. Looking at the oops probably won't yield useful results in terms of finding cx231xx bugs as it happens after the first host controller has bombed out. You should consider having /boot/System.map and the real klogd installed on your system, so the oops backtrace has meaningful symbol names as opposed to addresses (which are meaningless to anyone without a copy of your built kernel). Regards, Andy At a guess, I'm going to say that it's the hardware. This is an old (2006?) vintage access point with limited CPU horsepower. I'm not sure that any further investigations would change the result. I suspect that the hardware is not capable of USB2 speeds although it claims it can and thus the problem. It is rock solid with USB 1.1 devices and barfs at USB 2.0 speeds. -- Pain is temporary. It may last a minute, or an hour, or a day, or a year, but eventually it will subside and something else will take its place. If I quit, however, it lasts forever. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
cx231xx kernel oops
I am experiencing a kernel oops when trying to use a Hauppage USB Live 2 frame grabber. The oops is below. The system is a SOC 260Mhz Broadcom BCM47XX access point running OpenWRT. root@anchor:/# uname -a Linux anchor 3.0.3 #13 Sun Dec 4 08:04:41 PST 2011 mips GNU/Linux The OOPS could be due to the limited hardware or something else. I'd appreciate any suggestions for making this work. I was hoping with hardware compression I could make it work on this platform. I am currently using a Hauppage USB Live (saa7115 based) with no problems but with limited resolution. cx231xx v4l2 driver loaded. cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces cx231xx #0: registering interface 1 cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: Changing the i2c master port to 3 cx231xx #0: cx25840 subdev registration failure cx231xx #0: cx231xx #0: v4l2 driver version 0.0.1 cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: video_mux : 0 cx231xx #0: do_mode_ctrl_overrides : 0xb000 cx231xx #0: do_mode_ctrl_overrides NTSC cx231xx #0: cx231xx #0/0: registered device video0 [v4l2] cx231xx #0: cx231xx #0/0: registered device vbi0 cx231xx #0: V4L2 device registered as video0 and vbi0 cx231xx #0: EndPoint Addr 0x84, Alternate settings: 5 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 184 cx231xx #0: Alternate setting 2, max size= 728 cx231xx #0: Alternate setting 3, max size= 2892 cx231xx #0: Alternate setting 4, max size= 1800 cx231xx #0: EndPoint Addr 0x85, Alternate settings: 2 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 512 cx231xx #0: EndPoint Addr 0x86, Alternate settings: 2 cx231xx #0: Alternate setting 0, max size= 512 cx231xx #0: Alternate setting 1, max size= 576 usbcore: registered new interface driver cx231xx wlan0: deauthenticating from ea:c7:b6:67:bd:1e by local choice (reason=3) b43-phy0: Loading firmware version 508.1084 (2009-01-14 01:32:01) wlan0: authenticate with ea:c7:b6:67:bd:1e (try 1) wlan0: authenticated wlan0: associate with ea:c7:b6:67:bd:1e (try 1) wlan0: RX AssocResp from ea:c7:b6:67:bd:1e (capab=0x411 status=0 aid=3) wlan0: associated hrtimer: interrupt took 33795302 ns cx231xx #0: setPowerMode::mode = 48, No Change req. cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: video_mux : 0 cx231xx #0: do_mode_ctrl_overrides : 0xb000 cx231xx #0: do_mode_ctrl_overrides NTSC cx231xx #0: cx231xx_stop_stream():: ep_mask = 8 cx231xx #0: cx231xx_initialize_stream_xfer: set video registers cx231xx #0: cx231xx_start_stream():: ep_mask = 8 ehci_hcd :00:02.2: fatal error ehci_hcd :00:02.2: HC died; cleaning up ehci_hcd :00:02.2: force halt; handshake c0350024 4000 4000 - -145 ehci_hcd :00:02.2: HC died; cleaning up usb 1-1: USB disconnect, device number 3 usb 1-1.3: USB disconnect, device number 4 pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0 pl2303 1-1.3:1.0: device disconnected usb 1-2: USB disconnect, device number 2 usb 2-1: new full speed USB device number 2 using ohci_hcd usb 2-1: not running at top speed; connect to a high speed hub hub 2-1:1.0: USB hub found hub 2-1:1.0: 4 ports detected usb 3-1: new full speed USB device number 2 using ohci_hcd usb 3-1: not running at top speed; connect to a high speed hub cx231xx #1: New device Hauppauge Hauppauge Device @ 12 Mbps (2040:c200) with 3 interfaces cx231xx #1: registering interface 1 cx231xx #1: can't change interface 3 alt no. to 3: Max. Pkt size = 0 usb 3-1: selecting invalid altsetting 3 cx231xx #1: can't change interface 3 alt no. to 3 (err=-22) cx231xx #1: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #1: can't change interface 4 alt no. to 1 (err=-22) cx231xx #1: Identified as Hauppauge USB Live 2 (card=9) cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: can't change interface 5 alt no. to 0 (err=-22) cx231xx #1: Changing the i2c master port to 3 cx231xx #1: cx25840 subdev registration failure cx231xx #1: cx231xx #1: v4l2 driver version 0.0.1 cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: video_mux : 0 cx231xx #1: do_mode_ctrl_overrides : 0xb000 cx231xx #1: do_mode_ctrl_overrides NTSC cx231xx #1: cx231xx #1/0: registered device video1 [v4l2] cx231xx #1: cx231xx #1/0: registered device vbi1 cx231xx #1: V4L2 device registered as video1 and vbi1 cx231xx #1: EndPoint Addr 0x84, Alternate settings: 2 cx231xx #1: Alternate setting 0, max size= 64 cx231xx #1: Alternate setting 1, max size= 728 CPU 0 Unable to handle kernel paging request at virtual address , epc == 80f64e5c, ra == 80f64e30 Oops[#1]: Cpu 0 $ 0 : 1000fc00 81b97660
Re: cx231xx kernel oops
Andy Walls wrote: On Sun, 2011-12-04 at 18:01 -0800, Yan Seiner wrote: I am experiencing a kernel oops when trying to use a Hauppage USB Live 2 frame grabber. The oops is below. The system is a SOC 260Mhz Broadcom BCM47XX access point running OpenWRT. root@anchor:/# uname -a Linux anchor 3.0.3 #13 Sun Dec 4 08:04:41 PST 2011 mips GNU/Linux The OOPS could be due to the limited hardware or something else. I'd appreciate any suggestions for making this work. I was hoping with hardware compression I could make it work on this platform. I am currently using a Hauppage USB Live (saa7115 based) with no problems but with limited resolution. cx231xx v4l2 driver loaded. cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces cx231xx #0: registering interface 1 cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: Changing the i2c master port to 3 cx231xx #0: cx25840 subdev registration failure The cx231xx driver requires the cx25840 module. I'll wager you didn't install it on your router. Right in one. I did not because it didn't seem to be required - no missing symbols or error messages. Would a warning to syslog be possible? With 8MB of flash, I remove everything that is not required. --Yan -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: cx231xx kernel oops
Andy Walls wrote: On Sun, 2011-12-04 at 18:01 -0800, Yan Seiner wrote: I am experiencing a kernel oops when trying to use a Hauppage USB Live 2 frame grabber. The oops is below. The system is a SOC 260Mhz Broadcom BCM47XX access point running OpenWRT. root@anchor:/# uname -a Linux anchor 3.0.3 #13 Sun Dec 4 08:04:41 PST 2011 mips GNU/Linux The OOPS could be due to the limited hardware or something else. I'd appreciate any suggestions for making this work. I was hoping with hardware compression I could make it work on this platform. I am currently using a Hauppage USB Live (saa7115 based) with no problems but with limited resolution. cx231xx v4l2 driver loaded. cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces cx231xx #0: registering interface 1 cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: Changing the i2c master port to 3 cx231xx #0: cx25840 subdev registration failure The cx231xx driver requires the cx25840 module. I'll wager you didn't install it on your router. I made sure the module was loaded; same thing. :-( Module Size Used byTainted: G cx231xx 124608 0 cx2341x13552 1 cx231xx cx2584035568 2 rc_core12640 1 cx231xx videobuf_vmalloc3168 1 cx231xx videobuf_core 12384 2 cx231xx,videobuf_vmalloc I was not able to catch the first bit. cx231xx #1: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #1: can't change interface 4 alt no. to 1 (err=-22) cx231xx #1: Identified as Hauppauge USB Live 2 (card=9) cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: can't change interface 5 alt no. to 0 (err=-22) cx231xx #1: Changing the i2c master port to 3 cx25840 3-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #1) cx25840 3-0044: Firmware download size changed to 16 bytes max length cx25840 3-0044: unable to open firmware v4l-cx231xx-avcore-01.fw cx231xx #1: cx231xx #1: v4l2 driver version 0.0.1 cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: video_mux : 0 cx231xx #1: do_mode_ctrl_overrides : 0xb000 cx231xx #1: do_mode_ctrl_overrides NTSC cx231xx #1: cx231xx #1/0: registered device video1 [v4l2] cx231xx #1: cx231xx #1/0: registered device vbi1 cx231xx #1: V4L2 device registered as video1 and vbi1 cx231xx #1: EndPoint Addr 0x84, Alternate settings: 2 cx231xx #1: Alternate setting 0, max size= 64 cx231xx #1: Alternate setting 1, max size= 728 CPU 0 Unable to handle kernel paging request at virtual address , epc == 80f84e5c, ra == 80f84e30 Oops[#1]: Cpu 0 $ 0 : 1000fc00 80e2f860 80e2f800 $ 4 : 80f9ad58 5095 $ 8 : 000a 0001 0001 000d $12 : 00ff ffe0 8103f760 $16 : 81e3 80c9f800 80fa $20 : 0002 81e300f8 0001 $24 : 0002 801539e0 $28 : 80c74000 80c75a88 80fa 80f84e30 Hi: Lo: epc : 80f84e5c 0x80f84e5c Not tainted ra: 80f84e30 0x80f84e30 Status: 1000fc03KERNEL EXL IE Cause : 0088 BadVA : PrId : 00029006 (Broadcom BMIPS3300) Modules linked in: cx231xx cx2341x cx25840 rc_core videobuf_vmalloc videobuf_core saa7115 usbvision pl2303 v4l2_common videodev usb_storage usbserial i2c_dev i2c_core ohci_hcd nf_nat_irc nf_conntrack_irc nf_nat_ftp nf_conntrack_ftp ipt_MASQUERADE iptable_nat nf_nat xt_conntrack xt_NOTRACK iptable_raw xt_state nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack ehci_hcd sd_mod ipt_REJECT xt_TCPMSS ipt_LOG xt_comment xt_multiport xt_mac xt_limit iptable_mangle iptable_filter ip_tables xt_tcpudp x_tables tun vfat fat ext4 jbd2 mbcache b43legacy b43 nls_iso8859_1 nls_cp437 mac80211 usbcore scsi_mod nls_base crc16 cfg80211 compat input_core arc4 aes_generic crypto_algapi switch_robo switch_core diag Process khubd (pid: 596, threadinfo=80c74000, task=81a2d1a8, tls=) Stack : 802c4084 81e3 0001 02d8 2040 c200 0003 8011fa58 70756148 67756170 61482065 61707075 20656775 69766544 00206563 ... Call Trace:[8011fa58] 0x8011fa58 [80c8cd9c] 0x80c8cd9c [8015db94] 0x8015db94 [8015df14] 0x8015df14 [8015e118] 0x8015e118 [8015e0e8] 0x8015e0e8 [8015cb28] 0x8015cb28 [801197ac] 0x801197ac [8015dd14] 0x8015dd14 [8015b9e0] 0x8015b9e0 [80c89d54] 0x80c89d54 [80c8bf80] 0x80c8bf80 [800e15a8] 0x800e15a8 [80c92e58
Re: cx231xx kernel oops
Yan Seiner wrote: Andy Walls wrote: On Sun, 2011-12-04 at 18:01 -0800, Yan Seiner wrote: I am experiencing a kernel oops when trying to use a Hauppage USB Live 2 frame grabber. The oops is below. The system is a SOC 260Mhz Broadcom BCM47XX access point running OpenWRT. root@anchor:/# uname -a Linux anchor 3.0.3 #13 Sun Dec 4 08:04:41 PST 2011 mips GNU/Linux The OOPS could be due to the limited hardware or something else. I'd appreciate any suggestions for making this work. I was hoping with hardware compression I could make it work on this platform. I am currently using a Hauppage USB Live (saa7115 based) with no problems but with limited resolution. cx231xx v4l2 driver loaded. cx231xx #0: New device Hauppauge Hauppauge Device @ 480 Mbps (2040:c200) with 5 interfaces cx231xx #0: registering interface 1 cx231xx #0: can't change interface 3 alt no. to 3: Max. Pkt size = 0 cx231xx #0: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #0: Identified as Hauppauge USB Live 2 (card=9) cx231xx #0: cx231xx_dif_set_standard: setStandard to cx231xx #0: Changing the i2c master port to 3 cx231xx #0: cx25840 subdev registration failure The cx231xx driver requires the cx25840 module. I'll wager you didn't install it on your router. I made sure the module was loaded; same thing. :-( Module Size Used byTainted: G cx231xx 124608 0 cx2341x13552 1 cx231xx cx2584035568 2 rc_core12640 1 cx231xx videobuf_vmalloc3168 1 cx231xx videobuf_core 12384 2 cx231xx,videobuf_vmalloc I was not able to catch the first bit. cx231xx #1: can't change interface 4 alt no. to 1: Max. Pkt size = 0 cx231xx #1: can't change interface 4 alt no. to 1 (err=-22) cx231xx #1: Identified as Hauppauge USB Live 2 (card=9) cx231xx #1: cx231xx_dif_set_standard: setStandard to cx231xx #1: can't change interface 5 alt no. to 0 (err=-22) cx231xx #1: Changing the i2c master port to 3 cx25840 3-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #1) cx25840 3-0044: Firmware download size changed to 16 bytes max length cx25840 3-0044: unable to open firmware v4l-cx231xx-avcore-01.fw Maybe I need that, eh? :-) -- Few people are capable of expressing with equanimity opinions which differ from the prejudices of their social environment. Most people are even incapable of forming such opinions. Albert Einstein -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html