[linux-sunxi] A20 + S5K4EC camera on CSI issues

2014-08-11 Thread Zsolt Gaspar
Hi,

I'm looking for help (or a developer to help me out as a project) with the 
S5K4EC camera connected to the A20 in the EU3000/HD22 TV Box 
.
Currently I ported the SDK driver for sunxi and it is compiling and 
communicating with the CMOS over I2C, setting up registers, FW... But when 
it starts to stream the CSI driver complains that nobody listening on the 
buffers.
I would appreciate if anybody can help or knows somebody who can help!

Full log attached, but here a summary (I added more debug info to the 
divers):

*[  119.500968] [CSI_DEBUG]buffer_setup*
*[  119.509083] [CSI_ERR]buffer count is invalid, set to 5*
*[  119.518695] [CSI]buffer_setup, buffer count=5, size=614400*
*[  119.527773] [CSI_DEBUG]mmap called, vma=0xee481ec8*
*[  119.537242] [CSI_DEBUG]vma start=0xb12b2000, size=614400, ret=0*
*[  119.546673] [CSI_DEBUG]mmap called, vma=0xee4817e8*
*[  119.556093] [CSI_DEBUG]vma start=0xb121c000, size=614400, ret=0*
*[  119.565682] [CSI_DEBUG]mmap called, vma=0xee481b00*
*[  119.575156] [CSI_DEBUG]vma start=0xb1186000, size=614400, ret=0*
*[  119.584626] [CSI_DEBUG]mmap called, vma=0xee481e18*
*[  119.594074] [CSI_DEBUG]vma start=0xb10f, size=614400, ret=0*
*[  119.603502] [CSI_DEBUG]mmap called, vma=0xee481d68*
*[  119.612942] [CSI_DEBUG]vma start=0xb105a000, size=614400, ret=0*
*[  119.621228] [CSI_DEBUG]buffer_prepare*
*[  119.627254] [CSI_DEBUG]buffer_prepare*
*[  119.633282] [CSI_DEBUG]buffer_prepare*
*[  119.639306] [CSI_DEBUG]buffer_prepare*
*[  119.645322] [CSI_DEBUG]buffer_prepare*
*[  119.656211] [CSI_DEBUG]video stream on*
*[  119.662277] [CSI_DEBUG]buffer_queue*
*[  119.667940] [CSI_DEBUG]buffer_queue*
*[  119.673598] [CSI_DEBUG]buffer_queue*
*[  119.679255] [CSI_DEBUG]buffer_queue*
*[  119.684912] [CSI_DEBUG]buffer_queue*
*[  119.690986] [CSI_DEBUG]buf ptr=ee7d3400*
*[  119.697863] [CSI_DEBUG]csi_buf_addr_y=380*
*[  119.705357] [CSI_DEBUG]csi_buf_addr_cb=380*
*[  119.712938] [CSI_DEBUG]csi_buf_addr_cr=380*
*[  119.773863] [CSI_DEBUG]csi_isr*
*[  119.779446] [CSI_DEBUG]buf ptr=ee7d3180*
*[  119.786320] [CSI_DEBUG]csi_buf_addr_y=3896000*
*[  119.793799] [CSI_DEBUG]csi_buf_addr_cb=3896000*
*[  119.801364] [CSI_DEBUG]csi_buf_addr_cr=3896000*
*[  119.840482] [CSI_DEBUG]csi_isr*
*[  119.846063] [CSI_DEBUG]buf ptr=ee7d3400*
*[  119.852424] [CSI_DEBUG]buf ptr=ee7d3080*
*[  119.859296] [CSI_DEBUG]csi_buf_addr_y=392c000*
*[  119.866775] [CSI_DEBUG]csi_buf_addr_cb=392c000*
*[  119.874341] [CSI_DEBUG]csi_buf_addr_cr=392c000*
*[  119.907109] [CSI_DEBUG]csi_isr*
*[  119.912705] [CSI_DEBUG]buf ptr=ee7d3180*
*[  119.922004] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 
0xee7d3180*
*[  119.931306] [CSI_DEBUG]buf ptr=ee7d3f00*
*[  119.938179] [CSI_DEBUG]csi_buf_addr_y=39c2000*
*[  119.945657] [CSI_DEBUG]csi_buf_addr_cb=39c2000*
*[  119.953223] [CSI_DEBUG]csi_buf_addr_cr=39c2000*
*[  119.973728] [CSI_DEBUG]csi_isr*
*[  119.979317] [CSI_DEBUG]buf ptr=ee7d3080*
*[  119.988617] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 
0xee7d3080*
*[  119.997918] [CSI_DEBUG]buf ptr=ee7d3800*
*[  120.004790] [CSI_DEBUG]csi_buf_addr_y=3a58000*
*[  120.012269] [CSI_DEBUG]csi_buf_addr_cb=3a58000*
*[  120.019835] [CSI_DEBUG]csi_buf_addr_cr=3a58000*
*[  120.040347] [CSI_DEBUG]csi_isr*
*[  120.045931] [CSI_DEBUG]buf ptr=ee7d3f00*
*[  120.055230] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 
0xee7d3f00*
*[  120.065832] [CSI_DEBUG]No more free frame on next time*
*[  120.073658] [CSI_DEBUG]csi_isr*
*[  120.079241] [CSI_DEBUG]buf ptr=ee7d3800*
*[  120.088539] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 
0xee7d3800*
*[  120.098014] [CSI_DEBUG]No more free frame*
*[  120.106967] [CSI_DEBUG]csi_isr*
*[  120.113325] [CSI_ERR]No active queue to serve*
*[  120.140282] [CSI_DEBUG]csi_isr*
*[  120.146651] [CSI_ERR]No active queue to serve*



In addition the programs compaining that it does not support querymenu:

*root@A20:~# streamer -c /dev/video1 -f rgb24 -r 15 -t 00:00:02 -o test.avi*
*avi / video: 24 bit TrueColor (LE: bgr) / audio: none*
*v4l2: ioctl(fildes = 3 "/dev/video1", request = VIDIOC_QUERYMENU, struct 
v4l2_querymenu *data = { id = V4L2_CID_COLORFX, index = 0 }) failed, 
Inappropriate ioctl for device (25, ENOTTY) because fildes is a video4linux 
character special device that does not support the ioctl VIDIOC_QUERYMENU 
system call*
*v4l2: ioctl(fildes = 3 "/dev/video1", request = VIDIOC_QUERYMENU, struct 
v4l2_querymenu *data = { id = 134217728, index = 0 }) failed, Inappropriate 
ioctl for device (25, ENOTTY) because fildes is a video4linux character 
special device that does not support the ioctl VIDIOC_QUERYMENU system call*

:

-- 
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 linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
[0.00] Booting Linux on

Re: [linux-sunxi] Re: Experimenting with eu3000 board

2014-07-25 Thread Zsolt Gaspar
Still does not work.
It seems that the lots of "[CSI_ERR]v4l2 sub device queryctrl error!" 
errors coming from a function discovery? have no idea
I try to capture with streamer:
root@A20:~# streamer -c /dev/video1 -f rgb24 -r 15 -t 00:00:02 -o test.avi
avi / video: 24 bit TrueColor (LE: bgr) / audio: none
v4l2: ioctl(fildes = 3 "/dev/video1", request = VIDIOC_QUERYMENU, struct 
v4l2_querymenu *data = { id = V4L2_CID_COLORFX, index = 0 }) failed, 
Inappropriate ioctl for device (25, ENOTTY) because fildes is a video4linux 
character special device that does not support the ioctl VIDIOC_QUERYMENU 
system call
v4l2: ioctl(fildes = 3 "/dev/video1", request = VIDIOC_QUERYMENU, struct 
v4l2_querymenu *data = { id = 134217728, index = 0 }) failed, Inappropriate 
ioctl for device (25, ENOTTY) because fildes is a video4linux character 
special device that does not support the ioctl VIDIOC_QUERYMENU system call


Full dmesg log attached, but it seams it starts to stream data, and ISR 
called well, but nobody taking data out of the data que from the CSI 
driver.:
[  119.500968] [CSI_DEBUG]buffer_setup
[  119.509083] [CSI_ERR]buffer count is invalid, set to 5
[  119.518695] [CSI]buffer_setup, buffer count=5, size=614400
[  119.527773] [CSI_DEBUG]mmap called, vma=0xee481ec8
[  119.537242] [CSI_DEBUG]vma start=0xb12b2000, size=614400, ret=0
[  119.546673] [CSI_DEBUG]mmap called, vma=0xee4817e8
[  119.556093] [CSI_DEBUG]vma start=0xb121c000, size=614400, ret=0
[  119.565682] [CSI_DEBUG]mmap called, vma=0xee481b00
[  119.575156] [CSI_DEBUG]vma start=0xb1186000, size=614400, ret=0
[  119.584626] [CSI_DEBUG]mmap called, vma=0xee481e18
[  119.594074] [CSI_DEBUG]vma start=0xb10f, size=614400, ret=0
[  119.603502] [CSI_DEBUG]mmap called, vma=0xee481d68
[  119.612942] [CSI_DEBUG]vma start=0xb105a000, size=614400, ret=0
[  119.621228] [CSI_DEBUG]buffer_prepare
[  119.627254] [CSI_DEBUG]buffer_prepare
[  119.633282] [CSI_DEBUG]buffer_prepare
[  119.639306] [CSI_DEBUG]buffer_prepare
[  119.645322] [CSI_DEBUG]buffer_prepare
[  119.656211] [CSI_DEBUG]video stream on
[  119.662277] [CSI_DEBUG]buffer_queue
[  119.667940] [CSI_DEBUG]buffer_queue
[  119.673598] [CSI_DEBUG]buffer_queue
[  119.679255] [CSI_DEBUG]buffer_queue
[  119.684912] [CSI_DEBUG]buffer_queue
[  119.690986] [CSI_DEBUG]buf ptr=ee7d3400
[  119.697863] [CSI_DEBUG]csi_buf_addr_y=380
[  119.705357] [CSI_DEBUG]csi_buf_addr_cb=380
[  119.712938] [CSI_DEBUG]csi_buf_addr_cr=380
[  119.773863] [CSI_DEBUG]csi_isr
[  119.779446] [CSI_DEBUG]buf ptr=ee7d3180
[  119.786320] [CSI_DEBUG]csi_buf_addr_y=3896000
[  119.793799] [CSI_DEBUG]csi_buf_addr_cb=3896000
[  119.801364] [CSI_DEBUG]csi_buf_addr_cr=3896000
[  119.840482] [CSI_DEBUG]csi_isr
[  119.846063] [CSI_DEBUG]buf ptr=ee7d3400
[  119.852424] [CSI_DEBUG]buf ptr=ee7d3080
[  119.859296] [CSI_DEBUG]csi_buf_addr_y=392c000
[  119.866775] [CSI_DEBUG]csi_buf_addr_cb=392c000
[  119.874341] [CSI_DEBUG]csi_buf_addr_cr=392c000
[  119.907109] [CSI_DEBUG]csi_isr
[  119.912705] [CSI_DEBUG]buf ptr=ee7d3180
[  119.922004] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 0xee7d3180
[  119.931306] [CSI_DEBUG]buf ptr=ee7d3f00
[  119.938179] [CSI_DEBUG]csi_buf_addr_y=39c2000
[  119.945657] [CSI_DEBUG]csi_buf_addr_cb=39c2000
[  119.953223] [CSI_DEBUG]csi_buf_addr_cr=39c2000
[  119.973728] [CSI_DEBUG]csi_isr
[  119.979317] [CSI_DEBUG]buf ptr=ee7d3080
[  119.988617] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 0xee7d3080
[  119.997918] [CSI_DEBUG]buf ptr=ee7d3800
[  120.004790] [CSI_DEBUG]csi_buf_addr_y=3a58000
[  120.012269] [CSI_DEBUG]csi_buf_addr_cb=3a58000
[  120.019835] [CSI_DEBUG]csi_buf_addr_cr=3a58000
[  120.040347] [CSI_DEBUG]csi_isr
[  120.045931] [CSI_DEBUG]buf ptr=ee7d3f00
[  120.055230] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 0xee7d3f00
[  120.065832] [CSI_DEBUG]No more free frame on next time
[  120.073658] [CSI_DEBUG]csi_isr
[  120.079241] [CSI_DEBUG]buf ptr=ee7d3800
[  120.088539] [CSI_DEBUG] Nobody is waiting on this buffer,buf = 0xee7d3800
[  120.098014] [CSI_DEBUG]No more free frame
[  120.106967] [CSI_DEBUG]csi_isr
[  120.113325] [CSI_ERR]No active queue to serve
[  120.140282] [CSI_DEBUG]csi_isr
[  120.146651] [CSI_ERR]No active queue to serve


Any suggestion?


On Wednesday, 23 July 2014 22:06:44 UTC+1, Zsolt Gaspar wrote:
>
> Here is some update:
>
> Hi,
>
> I followed Ivan Kozic suggestion and ported the new driver, mostly 
> removing AF related code (will put back part of it, just wanted to compile 
> now) and GPIO access.
>
>

-- 
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 linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
[0.00] Booting Linux on physical CPU 0
[0.00] Initializing cgroup subsys cpuset
[0.00] Initi