Never mind looks like you got a handle on it. On Feb 13, 2014 9:42 AM, "Neal Peacock" <[email protected]> wrote:
> I put in a simple patch to initialize one of the related variables on > sun4i csi. If you can find that it might be related, I never put the same > fix in for sun5i but I think it had the same problem. > On Feb 8, 2014 10:01 AM, "hunter hu" <[email protected]> wrote: > >> Hi, >> >> I am having a hard time to get sun5i_csi0 working on an A13 iview 435tpc >> tablet running Debian 7 Wheezy. >> >> After building and loading the new kernel image using sunxi-bsp onto the >> target, >> >> The sun5i_csi0 driver init fine: >> >> /home/debian# modprobe sun5i_csi0 >> Feb 8 17:06:08 debian-armhf kernel: [ 357.074779] Linux video capture >> interface: v2.00 >> Feb 8 17:06:08 debian-armhf kernel: [ 357.145149] [CSI]Welcome to CSI >> driver >> Feb 8 17:06:08 debian-armhf kernel: [ 357.146771] [CSI]csi_init >> Feb 8 17:06:08 debian-armhf kernel: [ 357.186431] [CSI]registered subdevice >> ,input_num = 0 >> Feb 8 17:06:08 debian-armhf kernel: [ 357.189966] [CSI]power on andpower >> off camera >> ! >> Feb 8 17:06:09 debian-armhf kernel: [ 357.337829] [CSI]V4L2 device >> registered as video0 >> /home/debian# lsmod >> Module Size Used by >> gc0308 13439 1 >> sun5i_csi0 30537 0 >> videobuf_dma_contig 7326 1 sun5i_csi0 >> videobuf_core 22410 2 sun5i_csi0,videobuf_dma_contig >> v4l2_common 9112 2 gc0308,sun5i_csi0 >> videodev 81433 3 gc0308,v4l2_common,sun5i_csi0 >> mali 113219 0 >> ump 35383 1 mali >> >> But when I am actually trying to use it: >> >> root@debian-armhf:/home/debian# fswebcam >> --- Opening /dev/video0... >> Trying source module v4l2... >> /dev/video0 opened. >> No input was specified, using the first. >> Adjusting resolution from 384x288 to 640x480. >> >> >> Message from syslogd@debian-armhf at Feb 8 17:10:37 ... >> kernel:[ 624.775339] Internal error: Oops - BUG: 0 [#1] PREEMPT ARM >> >> >> Message from syslogd@debian-armhf at Feb 8 17:10:37 ... >> kernel:[ 625.236690] Process fswebcam (pid: 2400, stack limit = >> 0xd5a762e8) >> ... >> >> The dmesg: >> >> Feb 8 17:10:36 debian-armhf kernel: [ 624.540776] [CSI_ERR]v4l2 subdevice >> queryctrl error >> ! >> Feb 8 17:10:36 debian-armhf kernel: [ 624.544807] [CSI_ERR]v4l2 subdevice >> queryctrl error >> ! >> ...(tons of the queryctrl error) >> Feb 8 17:10:36 debian-armhf kernel: [ 624.716342] [CSI_ERR]v4l2 subdevice >> queryctrl error >> ! >> Feb 8 17:10:36 debian-armhf kernel: [ 624.721427] [CSI_ERR]Fourccformat >> (0x4745504a) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.725739] [CSI_ERR]Fourccformat >> (0x47504a4d) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.731129] [CSI_ERR]Fourccformat >> (0x31363553) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.735440] [CSI_ERR]Fourccformat >> (0x33424752) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.740801] [CSI_ERR]Fourccformat >> (0x33524742) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.745337] [CSI_ERR]Fourccformat >> (0x34424752) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.750436] [CSI_ERR]Fourccformat >> (0x34524742) invalid. >> Feb 8 17:10:36 debian-armhf kernel: [ 624.756742] [CSI]buffer_setup,buffer >> count >> =4, size=614400 >> Feb 8 17:10:37 debian-armhf kernel: [ 624.761926] ------------[ cut >> here ]------------ >> >> The trace: >> >> Message from syslogd@debian-armhf at Feb 8 17:10:37 ... >> kernel:[ 625.332677] 7e40: d597ca00 bf039184 000481c2 bf039454 >> 000002ecc0b9caa0 >> 00000000 00000001 >> Feb 8 17:10:37 debian-armhf kernel: [ 625.436157] [<bf05c4d0>] ( >> videobuf_next_field+0x30/0x34 [videobuf_core]) from [<bf05c7cc>] ( >> videobuf_qbuf+0x2f8/0x4bc [videobuf_core]) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.446645] [<bf05c7cc>] ( >> videobuf_qbuf+0x2f8/0x4bc [videobuf_core]) from [<bf03b334>] ( >> __video_do_ioctl+0x1ee0/0x4ae4 [videodev]) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.456753] [<bf03b334>] ( >> __video_do_ioctl+0x1ee0/0x4ae4 [videodev]) from [<bf039184>] ( >> video_usercopy+0x280/0x544 [videodev]) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.466159] [<bf039184>] ( >> video_usercopy+0x280/0x544 [videodev]) from [<bf0383ec>] (v4l2_ioctl+ >> 0x134/0x150 [videodev]) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.474441] [<bf0383ec>] ( >> v4l2_ioctl+0x134/0x150 [videodev]) from [<c00d2b94>] (do_vfs_ioctl+0x3cc/ >> 0x5cc) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.481491] [<c00d2b94>] ( >> do_vfs_ioctl+0x3cc/0x5cc) from [<c00d2dc8>] (sys_ioctl+0x34/0x60) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.488631] [<c00d2dc8>] ( >> sys_ioctl+0x34/0x60) from [<c000ea40>] (ret_fast_syscall+0x0/0x30) >> Feb 8 17:10:37 debian-armhf kernel: [ 625.513930] ---[ end trace >> 2ea2b3b07ac67c8f ]--- >> >> The trace points to the following code snippet BUG_ON(): >> >> /* drivers/media/video/videobuf-core.c */ >> 295 /* Locking: Caller holds q->vb_lock */ >> 296 enum v4l2_field videobuf_next_field(struct videobuf_queue *q) >> 297 { >> 298 enum v4l2_field field = q->field; >> 299 >> 300 BUG_ON(V4L2_FIELD_ANY == field); >> >> 301 >> 302 if (V4L2_FIELD_ALTERNATE == field) { >> 303 if (V4L2_FIELD_TOP == q->last) { >> 304 field = V4L2_FIELD_BOTTOM; >> 305 q->last = V4L2_FIELD_BOTTOM; >> 306 } else { >> 307 field = V4L2_FIELD_TOP; >> 308 q->last = V4L2_FIELD_TOP; >> 309 } >> 310 } >> 311 return field; >> 312 } >> 313 EXPORT_SYMBOL_GPL(videobuf_next_field); >> >> What could be wrong? The stock android kernel runs well on the tablet and >> I can use the webcam with camera app, and the adb shell output on Kernel >> version: >> >> root@android:/ # cat /proc/version >> >> Linux version 3.0.8+ (inet_zw@inetsuperserver) (gcc version 4.5.1 ( >> Sourcery G++ Lite 2010.09-50) ) #28 PREEMPT Tue Mar 5 14:57:55 CST 2013 >> >> >> I have done lots of researches but didn't have any luck so far to get is >> working :-(. >> >> Any help will be appreciated. >> Thanks, >> -Hunter >> >> >> >> >> >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "linux-sunxi" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> For more options, visit https://groups.google.com/groups/opt_out. >> > -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
