Re: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 13-01-2011 10:58, Mauro Carvalho Chehab escreveu: Em 13-01-2011 06:46, Andrzej Pietrasiewicz escreveu: Hello Mauro, On Wednesday, January 12, 2011 9:24 PM Mauro Carvalho Chehab wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. The last 2 patches are for SAA7134 driver and are only to show that videobuf2-dma-sg works correctly. On my first test with saa7134, it hanged. It seems that the code reached a dead lock. On my test environment, I'm using a remote machine, without monitor. My test is using qv4l2 via a remote X server. Using a remote X server is an interesting test, as it will likely loose some frames, increasing the probability of races and dead locks. We did a similar test using a remote machine and qv4l2 with X forwarding. Both userptr and mmap worked. Read does not work because it is not implemented, but there was no freeze anyway, just green screen in qv4l2. However, we set Capture Image Formats to YUV - 4:2:2 packed, YUV, TV Standard to PAL. I enclose a (lengthy) log for reference - it is a log of a short session when modules where loaded, qv4l2 started, userptr mode run for a while and then mmap mode run for a while. We did it on a 32-bit system. We are going to repeat the test on a 64-bit system, it just takes some time to set it up. Perhaps this is the difference. Yeah, I tested where with PAL/M and 64-bits, but I don't think that the hangs have something due to 64 bits. It is probably because of the high delay introduced by using the 100 Mbps Ethernet connection to display the stream. This introduces a high delay (the max frame rate drops from 30 fps to about 6 fps on my setup). So, qv4l2 will loose frames. This increases the possibility of a race between qbuf/dqbuf. There are still some issued with saa7134, but I don't want to delay the upstream submission for vb2 due to those issues, as they may be caused by the saa7134 port to vb2. So, I'll be adding on my tree, and I'll be sending it upstream. Yet, I suggest that you finish the saa7134 backport, to allow more people to test it, as we have tons of users with saa7134 and they can help to double check if is there any bad locking inside vb2. Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hello again, Mauro, On Thursday, January 13, 2011 9:46 AM Andrzej Pietrasiewicz wrote: Hello Mauro, On Wednesday, January 12, 2011 9:24 PM Mauro Carvalho Chehab wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. The last 2 patches are for SAA7134 driver and are only to show that videobuf2-dma-sg works correctly. On my first test with saa7134, it hanged. It seems that the code reached a dead lock. On my test environment, I'm using a remote machine, without monitor. My test is using qv4l2 via a remote X server. Using a remote X server is an interesting test, as it will likely loose some frames, increasing the probability of races and dead locks. We did a similar test using a remote machine and qv4l2 with X forwarding. Both userptr and mmap worked. Read does not work because it is not implemented, but there was no freeze anyway, just green screen in qv4l2. However, we set Capture Image Formats to YUV - 4:2:2 packed, YUV, TV Standard to PAL. I enclose a (lengthy) log for reference - it is a log of a short session when modules where loaded, qv4l2 started, userptr mode run for a while and then mmap mode run for a while. We did it on a 32-bit system. We are going to repeat the test on a 64- bit system, it just takes some time to set it up. Perhaps this is the difference. We did the test on a 64-bit system, both locally and with X forwarding to a remote machine. It works in both cases. Our TV card is Avermedia AverTV Super 007 pure analog. Yours is a hybrid analog/ISDB card. Does your card work with videobuf 1? Perhaps you could do such a test: please use code from the commit f73e66a8e91e4ebb v4l: saa7134: remove radio, vbi, mpeg, input, alsa, tvaudio, saa6752hs support and see if you TV card works with videobuf (not videobuf2)? Andrzej -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 13-01-2011 01:05, Pawel Osciak escreveu: Hi Mauro, On Wed, Jan 12, 2011 at 10:49, Mauro Carvalho Chehab mche...@redhat.com wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. Thanks! As before, I'll be commenting the patches as I'll be seeing any issues. Pawel Osciak (2): Fix mmap() example in the V4L2 API DocBook In fact, the check for retval 0 instead of retval == -1 is not a fix. According with mmap man pages: RETURN VALUE On success, mmap() returns a pointer to the mapped area. On error, the value MAP_FAILED (that is, (void *) -1) is returned, and errno is set appropriately. On success, munmap() returns 0, on failure -1, and errno is set (probably to EINVAL). The change is not wrong, as -1 is lower than 0, but using -1 is more compliant with libc. So, I'll be applying just the CodingStyle fixes on it. Sorry, but I think you got it wrong. The example is called mmap() example. But I did not change return value checking of mmap() calls. I changed return value checking of ioctl() calls. So I believe the patch is correct. From ioctl man page: RETURN VALUE Usually, on success zero is returned. A few ioctl() requests use the return value as an output parameter and return a non-negative value on success. On error, -1 is returned, and errno is set appropriately. So, at least on glibc, it will return -1 for errors, storing the error code at errno var, and 0 for OK. Several V4L2 applications do error checks with -1. So, if some non-glibc implementation is returning a different return value, that means that several V4L applications will not work properly. Do you know any case where ioctl is implemented on a different way? Cheers, Mauro. -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 13-01-2011 06:46, Andrzej Pietrasiewicz escreveu: Hello Mauro, On Wednesday, January 12, 2011 9:24 PM Mauro Carvalho Chehab wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. The last 2 patches are for SAA7134 driver and are only to show that videobuf2-dma-sg works correctly. On my first test with saa7134, it hanged. It seems that the code reached a dead lock. On my test environment, I'm using a remote machine, without monitor. My test is using qv4l2 via a remote X server. Using a remote X server is an interesting test, as it will likely loose some frames, increasing the probability of races and dead locks. We did a similar test using a remote machine and qv4l2 with X forwarding. Both userptr and mmap worked. Read does not work because it is not implemented, but there was no freeze anyway, just green screen in qv4l2. However, we set Capture Image Formats to YUV - 4:2:2 packed, YUV, TV Standard to PAL. I enclose a (lengthy) log for reference - it is a log of a short session when modules where loaded, qv4l2 started, userptr mode run for a while and then mmap mode run for a while. We did it on a 32-bit system. We are going to repeat the test on a 64-bit system, it just takes some time to set it up. Perhaps this is the difference. Yeah, I tested where with PAL/M and 64-bits, but I don't think that the hangs have something due to 64 bits. It is probably because of the high delay introduced by using the 100 Mbps Ethernet connection to display the stream. This introduces a high delay (the max frame rate drops from 30 fps to about 6 fps on my setup). So, qv4l2 will loose frames. This increases the possibility of a race between qbuf/dqbuf. Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 13-01-2011 10:13, Andrzej Pietrasiewicz escreveu: Hello again, Mauro, On Thursday, January 13, 2011 9:46 AM Andrzej Pietrasiewicz wrote: Hello Mauro, On Wednesday, January 12, 2011 9:24 PM Mauro Carvalho Chehab wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. The last 2 patches are for SAA7134 driver and are only to show that videobuf2-dma-sg works correctly. On my first test with saa7134, it hanged. It seems that the code reached a dead lock. On my test environment, I'm using a remote machine, without monitor. My test is using qv4l2 via a remote X server. Using a remote X server is an interesting test, as it will likely loose some frames, increasing the probability of races and dead locks. We did a similar test using a remote machine and qv4l2 with X forwarding. Both userptr and mmap worked. Read does not work because it is not implemented, but there was no freeze anyway, just green screen in qv4l2. However, we set Capture Image Formats to YUV - 4:2:2 packed, YUV, TV Standard to PAL. I enclose a (lengthy) log for reference - it is a log of a short session when modules where loaded, qv4l2 started, userptr mode run for a while and then mmap mode run for a while. We did it on a 32-bit system. We are going to repeat the test on a 64- bit system, it just takes some time to set it up. Perhaps this is the difference. We did the test on a 64-bit system, both locally and with X forwarding to a remote machine. It works in both cases. Our TV card is Avermedia AverTV Super 007 pure analog. Yours is a hybrid analog/ISDB card. Does your card work with videobuf 1? Yes, it works (well, sort of - there's a problem a the tuner driver that I didn't fix yet, so, I'm receiving just static on it, but yet, it is a stream, and this works fine with videobuf1). Perhaps you could do such a test: please use code from the commit f73e66a8e91e4ebb v4l: saa7134: remove radio, vbi, mpeg, input, alsa, tvaudio, saa6752hs support and see if you TV card works with videobuf (not videobuf2)? Ok, I'll do that, or maybe I'll just replace by an analog-only board. Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. The last 2 patches are for SAA7134 driver and are only to show that videobuf2-dma-sg works correctly. The following changes since commit 15af3ad8cafe8028f09d1b6c014bb2e997937694: [media] vb2 core: Fix a few printk warnings (2011-01-11 18:19:24 -0200) are available in the git repository at: git://git.infradead.org/users/kmpark/linux-2.6-samsung vb2_test Andrzej Pietrasiewicz (2): v4l: saa7134: remove radio, vbi, mpeg, input, alsa, tvaudio, saa6752hs support v4l: saa7134: quick and dirty port to videobuf2 Hyunwoong Kim (5): [media] s5p-fimc: fix the value of YUV422 1-plane formats [media] s5p-fimc: Configure scaler registers depending on FIMC version [media] s5p-fimc: update checking scaling ratio range [media] s5p-fimc: Support stop_streaming and job_abort [media] s5p-fimc: fix MSCTRL.FIFO_CTRL for performance enhancement Marek Szyprowski (2): v4l: mem2mem: port to videobuf2 v4l: mem2mem: port m2m_testdev to vb2 Pawel Osciak (2): Fix mmap() example in the V4L2 API DocBook Add multi-planar API documentation Sungchun Kang (1): [media] s5p-fimc: fimc_stop_capture bug fix Sylwester Nawrocki (14): v4l: Add multiplanar format fourccs for s5p-fimc driver v4l: Add DocBook documentation for YU12M, NV12M image formats [media] s5p-fimc: Porting to videobuf 2 [media] s5p-fimc: Conversion to multiplanar formats [media] s5p-fimc: Use v4l core mutex in ioctl and file operations [media] s5p-fimc: Rename s3c_fimc* to s5p_fimc* [media] s5p-fimc: Derive camera bus width from mediabus pixelcode [media] s5p-fimc: Enable interworking without subdev s_stream [media] s5p-fimc: Use default input DMA burst count [media] s5p-fimc: Enable simultaneous rotation and flipping [media] s5p-fimc: Add control of the external sensor clock [media] s5p-fimc: Move scaler details handling to the register API file [media] Add chip identity for NOON010PC30 camera sensor [media] Add v4l2 subdev driver for NOON010PC30L image sensor Documentation/DocBook/media-entities.tmpl |8 + Documentation/DocBook/v4l/common.xml |2 + Documentation/DocBook/v4l/compat.xml | 11 + Documentation/DocBook/v4l/dev-capture.xml | 13 +- Documentation/DocBook/v4l/dev-output.xml | 13 +- Documentation/DocBook/v4l/func-mmap.xml | 10 +- Documentation/DocBook/v4l/func-munmap.xml |3 +- Documentation/DocBook/v4l/io.xml | 287 - Documentation/DocBook/v4l/pixfmt-nv12m.xml| 154 +++ Documentation/DocBook/v4l/pixfmt-yuv420m.xml | 162 +++ Documentation/DocBook/v4l/pixfmt.xml | 118 ++- Documentation/DocBook/v4l/planar-apis.xml | 81 ++ Documentation/DocBook/v4l/v4l2.xml| 21 +- Documentation/DocBook/v4l/vidioc-enum-fmt.xml |2 + Documentation/DocBook/v4l/vidioc-g-fmt.xml| 15 +- Documentation/DocBook/v4l/vidioc-qbuf.xml | 24 +- Documentation/DocBook/v4l/vidioc-querybuf.xml | 14 +- Documentation/DocBook/v4l/vidioc-querycap.xml | 24 +- drivers/media/video/Kconfig | 12 +- drivers/media/video/Makefile |1 + drivers/media/video/mem2mem_testdev.c | 227 ++--- drivers/media/video/noon010pc30.c | 792 ++ drivers/media/video/s5p-fimc/fimc-capture.c | 550 ++ drivers/media/video/s5p-fimc/fimc-core.c | 872 --- drivers/media/video/s5p-fimc/fimc-core.h | 134 ++-- drivers/media/video/s5p-fimc/fimc-reg.c | 199 ++-- drivers/media/video/s5p-fimc/regs-fimc.h | 29 +- drivers/media/video/saa7134/Kconfig |2 +- drivers/media/video/saa7134/Makefile |8 +- drivers/media/video/saa7134/saa7134-cards.c | 1415 + drivers/media/video/saa7134/saa7134-core.c| 466 +++-- drivers/media/video/saa7134/saa7134-video.c | 854 ++-- drivers/media/video/saa7134/saa7134.h | 48 +- drivers/media/video/v4l2-mem2mem.c| 232 ++-- include/linux/videodev2.h |7 + include/media/noon010pc30.h | 28 + include/media/{s3c_fimc.h = s5p_fimc.h} | 20 +- include/media/v4l2-chip-ident.h |3 + include/media/v4l2-mem2mem.h | 56 +- 39 files changed, 3961 insertions(+), 2956 deletions(-) create mode 100644 Documentation/DocBook/v4l/pixfmt-nv12m.xml create mode 100644 Documentation/DocBook/v4l/pixfmt-yuv420m.xml create mode 100644 Documentation/DocBook/v4l/planar-apis.xml create mode 100644 drivers/media/video/noon010pc30.c create mode 100644 include/media/noon010pc30.h rename include/media/{s3c_fimc.h = s5p_fimc.h} (75%) -- To unsubscribe from this list: send the line unsubscribe
Re: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
On 01/11/2011 10:57 PM, Mauro Carvalho Chehab wrote: Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Please pull from our tree for the following items: 4. s5p-fimc driver conversion to Videbuf2 and multiplane ext. and various driver updates and bugfixes, 5. Siliconfile NOON010PC30 sensor subdev driver, Those patches seem ok. I have just a couple comments about them. See bellow. After having them solved, please send the patches against my vb2 test tree: git://linuxtv.org/mchehab/experimental.git vb2_test I've tested already vb2 with vivi. I'll be testing them now with saa7134. After testing it, I'll give you a feedback about vb2 and, if ok, I'll merge both multiplane and vb2 on my main tree. Hyunwoong Kim (5): [media] s5p-fimc: fix the value of YUV422 1-plane formats I don't have an arm cross-compilation handy, but... that means that, before this patch, compilation were broken? If so, please, don't do that, as it breaks bisect. Instead, merge the patch withthe one that broke compilation. No, the purpose of this patch is to only change the values programmed into the H/W registers. The patch summary line seem not to be too accurate. This patch doesn't fix any compilation problems. I always try to test the patches against compilation breakage one by one. But this time unfortunately I didn't do enough tests of the mem2mem conversion changes when sending the pull request. Regards, Sylwester -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. Thanks! As before, I'll be commenting the patches as I'll be seeing any issues. Pawel Osciak (2): Fix mmap() example in the V4L2 API DocBook In fact, the check for retval 0 instead of retval == -1 is not a fix. According with mmap man pages: RETURN VALUE On success, mmap() returns a pointer to the mapped area. On error, the value MAP_FAILED (that is, (void *) -1) is returned, and errno is set appropriately. On success, munmap() returns 0, on failure -1, and errno is set (probably to EINVAL). The change is not wrong, as -1 is lower than 0, but using -1 is more compliant with libc. So, I'll be applying just the CodingStyle fixes on it. Cheers, mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hi Mauro, On Wed, Jan 12, 2011 at 10:49, Mauro Carvalho Chehab mche...@redhat.com wrote: Em 12-01-2011 08:25, Marek Szyprowski escreveu: Hello Mauro, I've rebased our fimc and saa patches onto http://linuxtv.org/git/mchehab/experimental.git vb2_test branch. Thanks! As before, I'll be commenting the patches as I'll be seeing any issues. Pawel Osciak (2): Fix mmap() example in the V4L2 API DocBook In fact, the check for retval 0 instead of retval == -1 is not a fix. According with mmap man pages: RETURN VALUE On success, mmap() returns a pointer to the mapped area. On error, the value MAP_FAILED (that is, (void *) -1) is returned, and errno is set appropriately. On success, munmap() returns 0, on failure -1, and errno is set (probably to EINVAL). The change is not wrong, as -1 is lower than 0, but using -1 is more compliant with libc. So, I'll be applying just the CodingStyle fixes on it. Sorry, but I think you got it wrong. The example is called mmap() example. But I did not change return value checking of mmap() calls. I changed return value checking of ioctl() calls. So I believe the patch is correct. -- Best regards, Pawel Osciak -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hi Sylwester, I've created a tree/branch for my tests with vb2 and for the multiplane patches, at: git://linuxtv.org/git/mchehab/experimental.git vb2_test I'll be putting there the patches I'm working with. For now, I've reviewed the multiplane patches. Please see my comments bellow. I'll be sending you other emails after reviewing the remaining patches. Thanks, Mauro. Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Please pull from our tree for the following items: 1. V4L2 multiplane extension, 2. The Videobuf2 framework, 3. Mem2mem framework and vivi conversion to Videbuf2, 4. s5p-fimc driver conversion to Videbuf2 and multiplane ext. and various driver updates and bugfixes, 5. Siliconfile NOON010PC30 sensor subdev driver, 6. Patches for SAA7134 driver for Videbuf2 testing. The patch series has been rebased onto staging/for_v2.6.38 branch on top of s5p-fimc driver patches that were recently added to v2.6.37-rc8. The SAA7134 driver patches are meant for Vb2 testing only. The test hardware for those was the Avermedia AVerTV Super 007 TV card. Thanks! Sylwester The following changes since commit 6d09afc3bdf7f6b52358c30490b9434ba18d6344: [media] s5p-fimc: Fix output DMA handling in S5PV310 IP revisions (2010-12-28 15:50:50 +0100) are available in the git repository at: git://git.infradead.org/users/kmpark/linux-2.6-samsung vb2 Andrzej Pietrasiewicz (3): v4l: videobuf2: add DMA scatter/gather allocator v4l: saa7134: remove radio, vbi, mpeg, input, alsa, tvaudio, saa6752hs support v4l: saa7134: quick and dirty port to videobuf2 Hyunwoong Kim (5): [media] s5p-fimc: fix the value of YUV422 1-plane formats [media] s5p-fimc: Configure scaler registers depending on FIMC version [media] s5p-fimc: update checking scaling ratio range [media] s5p-fimc: Support stop_streaming and job_abort [media] s5p-fimc: fix MSCTRL.FIFO_CTRL for performance enhancement Marek Szyprowski (4): v4l: videobuf2: add generic memory handling routines v4l: videobuf2: add read() and write() emulator v4l: vivi: port to videobuf2 v4l: mem2mem: port to videobuf2 Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API v4l: Add multi-planar ioctl handling code v4l: Add compat functions for the multi-planar API v4l: fix copy sizes in compat32 for ext controls Are you sure that we need to add compat32 stuff for the multi-planar definitions? Had you test if the compat32 code is actually working? Except if you use things that have different sizes on 32 and 64 bit architectures, there's no need to add anything for compat. Anyway, I'll be merging the two compat functions into just one patch, as it will help to track any regressions there, if ever needed. They are at my temporary branch, but, if they are not needed, I'll drop when merging upstream. v4l: v4l2-ioctl: add buffer type conversion for multi-planar-aware ioctls NACK. We shouldn't be doing those videobuf memcpy operations inside the kernel. If you want such feature, please implement it on libv4l. v4l: add videobuf2 Video for Linux 2 driver framework v4l: videobuf2: add vmalloc allocator v4l: videobuf2: add DMA coherent allocator Sungchun Kang (1): [media] s5p-fimc: fimc_stop_capture bug fix Sylwester Nawrocki (15): v4l: v4l2-ioctl: Fix conversion between multiplane and singleplane buffers NACK. We shouldn't be doing those videobuf memcpy operations inside the kernel. If you want such feature, please implement it on libv4l. v4l: mem2mem: port m2m_testdev to vb2 v4l: Add multiplanar format fourccs for s5p-fimc driver [media] s5p-fimc: Porting to videobuf 2 [media] s5p-fimc: Conversion to multiplanar formats [media] s5p-fimc: Use v4l core mutex in ioctl and file operations [media] s5p-fimc: Rename s3c_fimc* to s5p_fimc* [media] s5p-fimc: Derive camera bus width from mediabus pixelcode [media] s5p-fimc: Enable interworking without subdev s_stream [media] s5p-fimc: Use default input DMA burst count [media] s5p-fimc: Enable simultaneous rotation and flipping [media] s5p-fimc: Add control of the external sensor clock [media] s5p-fimc: Move scaler details handling to the register API file [media] Add chip identity for NOON010PC30 camera sensor [media] Add v4l2 subdev driver for NOON010PC30L image sensor drivers/media/video/Kconfig | 36 +- drivers/media/video/Makefile|7 + drivers/media/video/mem2mem_testdev.c | 227 ++-- drivers/media/video/noon010pc30.c | 792 drivers/media/video/s5p-fimc/fimc-capture.c | 550 + drivers/media/video/s5p-fimc/fimc-core.c| 872 +++-- drivers/media/video/s5p-fimc/fimc-core.h| 133 +--
Re: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hi Mauro, On Tue, Jan 11, 2011 at 10:23, Mauro Carvalho Chehab mche...@redhat.com wrote: Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API v4l: Add multi-planar ioctl handling code v4l: Add compat functions for the multi-planar API v4l: fix copy sizes in compat32 for ext controls Are you sure that we need to add compat32 stuff for the multi-planar definitions? Had you test if the compat32 code is actually working? Except if you use things that have different sizes on 32 and 64 bit architectures, there's no need to add anything for compat. v4l2_buffer and v4l2_plane contain pointers to buffers and/or arrays of planes. In fact buffer conversion was already there, I only added the new planes field. I believe those additions to the compat code are needed... Anyway, I'll be merging the two compat functions into just one patch, as it will help to track any regressions there, if ever needed. They are at my temporary branch, but, if they are not needed, I'll drop when merging upstream. v4l: v4l2-ioctl: add buffer type conversion for multi-planar-aware ioctls NACK. We shouldn't be doing those videobuf memcpy operations inside the kernel. If you want such feature, please implement it on libv4l. I can see your point. We don't really use it. It was to prevent applications from using two versions of API and thus being overcomplicated. It allowed using old drivers with the new API. If you think it is a bad idea, the patch can just be dropped without affecting anything else. I will fix the documentation if you decide to do so. -- Best regards, Pawel Osciak -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 11-01-2011 14:42, Pawel Osciak escreveu: Hi Mauro, On Tue, Jan 11, 2011 at 10:23, Mauro Carvalho Chehab mche...@redhat.com wrote: Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API v4l: Add multi-planar ioctl handling code v4l: Add compat functions for the multi-planar API v4l: fix copy sizes in compat32 for ext controls Are you sure that we need to add compat32 stuff for the multi-planar definitions? Had you test if the compat32 code is actually working? Except if you use things that have different sizes on 32 and 64 bit architectures, there's no need to add anything for compat. v4l2_buffer and v4l2_plane contain pointers to buffers and/or arrays of planes. In fact buffer conversion was already there, I only added the new planes field. I believe those additions to the compat code are needed... Ok. Anyway, I'll be merging the two compat functions into just one patch, as it will help to track any regressions there, if ever needed. They are at my temporary branch, but, if they are not needed, I'll drop when merging upstream. v4l: v4l2-ioctl: add buffer type conversion for multi-planar-aware ioctls NACK. We shouldn't be doing those videobuf memcpy operations inside the kernel. If you want such feature, please implement it on libv4l. I can see your point. We don't really use it. It was to prevent applications from using two versions of API and thus being overcomplicated. It allowed using old drivers with the new API. If you think it is a bad idea, the patch can just be dropped without affecting anything else. I will fix the documentation if you decide to do so. Yeah, I prefer to not have such conversions in Kernel. We've made already a lot of efforts to remove V4L1 compat conversion from kernel. It is interesting to add it to libv4l, together with other conversions that are already done there. Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Marek Szyprowski (4): v4l: mem2mem: port to videobuf2 This one didn't compile: drivers/media/video/mem2mem_testdev.c: In function ‘device_process’: drivers/media/video/mem2mem_testdev.c:232: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c:233: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c: In function ‘vidioc_g_fmt’: drivers/media/video/mem2mem_testdev.c:429: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c: In function ‘vidioc_s_fmt’: drivers/media/video/mem2mem_testdev.c:528: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c: In function ‘m2mtest_buf_queue’: drivers/media/video/mem2mem_testdev.c:828: warning: passing argument 2 of ‘v4l2_m2m_buf_queue’ from incompatible pointer type include/media/v4l2-mem2mem.h:134: note: expected ‘struct vb2_buffer *’ but argument is of type ‘struct videobuf_queue *’ drivers/media/video/mem2mem_testdev.c:828: error: too many arguments to function ‘v4l2_m2m_buf_queue’ drivers/media/video/mem2mem_testdev.c: In function ‘m2mtest_open’: drivers/media/video/mem2mem_testdev.c:869: warning: passing argument 1 of ‘v4l2_m2m_ctx_init’ from incompatible pointer type include/media/v4l2-mem2mem.h:128: note: expected ‘struct v4l2_m2m_dev *’ but argument is of type ‘struct m2mtest_ctx *’ drivers/media/video/mem2mem_testdev.c:869: warning: passing argument 3 of ‘v4l2_m2m_ctx_init’ from incompatible pointer type include/media/v4l2-mem2mem.h:128: note: expected ‘int (*)(void *, struct vb2_queue *, struct vb2_queue *)’ but argument is of type ‘void (*)(void *, struct videobuf_queue *, enum v4l2_buf_type)’ I'm removing it from my queue. Please, resend it with the fixes against my experimental tree. Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Please pull from our tree for the following items: Sylwester Nawrocki (15): v4l: mem2mem: port m2m_testdev to vb2 This one is also broken: drivers/media/video/mem2mem_testdev.c: In function ‘device_isr’: drivers/media/video/mem2mem_testdev.c:360: error: implicit declaration of function ‘v4l2_m2m_buf_done’ drivers/media/video/mem2mem_testdev.c: In function ‘vidioc_g_fmt’: drivers/media/video/mem2mem_testdev.c:437: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c: In function ‘vidioc_s_fmt’: drivers/media/video/mem2mem_testdev.c:536: warning: assignment from incompatible pointer type drivers/media/video/mem2mem_testdev.c: In function ‘m2mtest_buf_queue’: drivers/media/video/mem2mem_testdev.c:795: warning: passing argument 2 of ‘v4l2_m2m_buf_queue’ from incompatible pointer type include/media/v4l2-mem2mem.h:118: note: expected ‘struct videobuf_queue *’ but argument is of type ‘struct vb2_buffer *’ drivers/media/video/mem2mem_testdev.c:795: error: too few arguments to function ‘v4l2_m2m_buf_queue’ drivers/media/video/mem2mem_testdev.c: In function ‘queue_init’: drivers/media/video/mem2mem_testdev.c:813: error: invalid application of ‘sizeof’ to incomplete type ‘struct v4l2_m2m_buffer’ drivers/media/video/mem2mem_testdev.c:825: error: invalid application of ‘sizeof’ to incomplete type ‘struct v4l2_m2m_buffer’ drivers/media/video/mem2mem_testdev.c: In function ‘m2mtest_open’: drivers/media/video/mem2mem_testdev.c:850: warning: passing argument 2 of ‘v4l2_m2m_ctx_init’ from incompatible pointer type include/media/v4l2-mem2mem.h:113: note: expected ‘struct v4l2_m2m_dev *’ but argument is of type ‘struct m2mtest_ctx *’ drivers/media/video/mem2mem_testdev.c:850: warning: passing argument 3 of ‘v4l2_m2m_ctx_init’ from incompatible pointer type include/media/v4l2-mem2mem.h:113: note: expected ‘void (*)(void *, struct videobuf_queue *, enum v4l2_buf_type)’ but argument is of type ‘int (*)(void *, struct vb2_queue *, struct vb2_queue *)’ drivers/media/video/mem2mem_testdev.c: At top level: drivers/media/video/mem2mem_testdev.c:917: error: unknown field ‘lock’ specified in initializer drivers/media/video/mem2mem_testdev.c:917: warning: excess elements in struct initializer drivers/media/video/mem2mem_testdev.c:917: warning: (near initialization for ‘m2m_ops’) drivers/media/video/mem2mem_testdev.c:918: error: unknown field ‘unlock’ specified in initializer drivers/media/video/mem2mem_testdev.c:918: warning: excess elements in struct initializer drivers/media/video/mem2mem_testdev.c:918: warning: (near initialization for ‘m2m_ops’) Cheers, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Please pull from our tree for the following items: 4. s5p-fimc driver conversion to Videbuf2 and multiplane ext. and various driver updates and bugfixes, 5. Siliconfile NOON010PC30 sensor subdev driver, Those patches seem ok. I have just a couple comments about them. See bellow. After having them solved, please send the patches against my vb2 test tree: git://linuxtv.org/mchehab/experimental.git vb2_test I've tested already vb2 with vivi. I'll be testing them now with saa7134. After testing it, I'll give you a feedback about vb2 and, if ok, I'll merge both multiplane and vb2 on my main tree. Hyunwoong Kim (5): [media] s5p-fimc: fix the value of YUV422 1-plane formats I don't have an arm cross-compilation handy, but... that means that, before this patch, compilation were broken? If so, please, don't do that, as it breaks bisect. Instead, merge the patch withthe one that broke compilation. Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API Where are the corresponding DocBook changes? Thanks, Mauro -- 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: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Hi Mauro, Please pull from our tree for the following items: 6. Patches for SAA7134 driver for Videbuf2 testing. There's something wrong with those patches. I got lots of errors: CC [M] /home/v4l/new_build/v4l/saa7134-tvaudio.o /home/v4l/new_build/v4l/saa7134-core.c: In function 'saa7134_dma_free': /home/v4l/new_build/v4l/saa7134-core.c:262: warning: unused variable 'dma' /home/v4l/new_build/v4l/saa7134-core.c: In function 'saa7134_finidev': /home/v4l/new_build/v4l/saa7134-core.c:1006: warning: unused variable 'mops' /home/v4l/new_build/v4l/saa7134-core.c: In function 'saa7134_buffer_requeue': /home/v4l/new_build/v4l/saa7134-core.c:1085: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-core.c:1085: warning: type defaults to 'int' in declaration of '__mptr' /home/v4l/new_build/v4l/saa7134-core.c:1085: warning: initialization from incompatible pointer type /home/v4l/new_build/v4l/saa7134-core.c:1085: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c: In function 'buffer_activate': /home/v4l/new_build/v4l/saa7134-ts.c:49: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:54: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c: In function 'buffer_prepare': /home/v4l/new_build/v4l/saa7134-ts.c:79: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:79: warning: type defaults to 'int' in declaration of '__mptr' /home/v4l/new_build/v4l/saa7134-ts.c:79: warning: initialization from incompatible pointer type /home/v4l/new_build/v4l/saa7134-ts.c:79: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:89: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:89: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:92: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:93: warning: passing argument 1 of 'saa7134_dma_free' from incompatible pointer type /home/v4l/new_build/v4l/saa7134.h:728: note: expected 'struct vb2_queue *' but argument is of type 'struct videobuf_queue *' /home/v4l/new_build/v4l/saa7134-ts.c:96: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:98: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:102: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:103: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:104: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:107: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:118: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:120: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:124: warning: passing argument 1 of 'saa7134_dma_free' from incompatible pointer type /home/v4l/new_build/v4l/saa7134.h:728: note: expected 'struct vb2_queue *' but argument is of type 'struct videobuf_queue *' /home/v4l/new_build/v4l/saa7134-ts.c: In function 'buffer_queue': /home/v4l/new_build/v4l/saa7134-ts.c:144: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:144: warning: type defaults to 'int' in declaration of '__mptr' /home/v4l/new_build/v4l/saa7134-ts.c:144: warning: initialization from incompatible pointer type /home/v4l/new_build/v4l/saa7134-ts.c:144: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c: In function 'buffer_release': /home/v4l/new_build/v4l/saa7134-ts.c:151: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:151: warning: type defaults to 'int' in declaration of '__mptr' /home/v4l/new_build/v4l/saa7134-ts.c:151: warning: initialization from incompatible pointer type /home/v4l/new_build/v4l/saa7134-ts.c:151: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-ts.c:157: warning: passing argument 1 of 'saa7134_dma_free' from incompatible pointer type /home/v4l/new_build/v4l/saa7134.h:728: note: expected 'struct vb2_queue *' but argument is of type 'struct videobuf_queue *' /home/v4l/new_build/v4l/saa7134-ts.c: In function 'saa7134_irq_ts_done': /home/v4l/new_build/v4l/saa7134-ts.c:306: error: 'struct saa7134_buf' has no member named 'vb' /home/v4l/new_build/v4l/saa7134-tvaudio.c: In function 'mute_input_7134': /home/v4l/new_build/v4l/saa7134-tvaudio.c:197: error: 'struct saa7134_board' has no member named 'radio' /home/v4l/new_build/v4l/saa7134-tvaudio.c: In function 'tvaudio_thread_ddep': /home/v4l/new_build/v4l/saa7134-tvaudio.c:791: error: 'struct
Re: [GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hi Mauro, On Tue, Jan 11, 2011 at 13:57, Mauro Carvalho Chehab mche...@redhat.com wrote: Em 03-01-2011 14:48, Sylwester Nawrocki escreveu: Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API Where are the corresponding DocBook changes? They are at: https://patchwork.kernel.org/patch/462571/ They may depend on a small fix for DocBook that I posted earlier: https://patchwork.kernel.org/patch/462561/ -- Best regards, Pawel Osciak -- 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
[GIT PATCHES FOR 2.6.38] Videbuf2 framework, NOON010PC30 sensor driver and s5p-fimc updates
Hi Mauro, Please pull from our tree for the following items: 1. V4L2 multiplane extension, 2. The Videobuf2 framework, 3. Mem2mem framework and vivi conversion to Videbuf2, 4. s5p-fimc driver conversion to Videbuf2 and multiplane ext. and various driver updates and bugfixes, 5. Siliconfile NOON010PC30 sensor subdev driver, 6. Patches for SAA7134 driver for Videbuf2 testing. The patch series has been rebased onto staging/for_v2.6.38 branch on top of s5p-fimc driver patches that were recently added to v2.6.37-rc8. The SAA7134 driver patches are meant for Vb2 testing only. The test hardware for those was the Avermedia AVerTV Super 007 TV card. Thanks! Sylwester The following changes since commit 6d09afc3bdf7f6b52358c30490b9434ba18d6344: [media] s5p-fimc: Fix output DMA handling in S5PV310 IP revisions (2010-12-28 15:50:50 +0100) are available in the git repository at: git://git.infradead.org/users/kmpark/linux-2.6-samsung vb2 Andrzej Pietrasiewicz (3): v4l: videobuf2: add DMA scatter/gather allocator v4l: saa7134: remove radio, vbi, mpeg, input, alsa, tvaudio, saa6752hs support v4l: saa7134: quick and dirty port to videobuf2 Hyunwoong Kim (5): [media] s5p-fimc: fix the value of YUV422 1-plane formats [media] s5p-fimc: Configure scaler registers depending on FIMC version [media] s5p-fimc: update checking scaling ratio range [media] s5p-fimc: Support stop_streaming and job_abort [media] s5p-fimc: fix MSCTRL.FIFO_CTRL for performance enhancement Marek Szyprowski (4): v4l: videobuf2: add generic memory handling routines v4l: videobuf2: add read() and write() emulator v4l: vivi: port to videobuf2 v4l: mem2mem: port to videobuf2 Pawel Osciak (8): v4l: Add multi-planar API definitions to the V4L2 API v4l: Add multi-planar ioctl handling code v4l: Add compat functions for the multi-planar API v4l: fix copy sizes in compat32 for ext controls v4l: v4l2-ioctl: add buffer type conversion for multi-planar-aware ioctls v4l: add videobuf2 Video for Linux 2 driver framework v4l: videobuf2: add vmalloc allocator v4l: videobuf2: add DMA coherent allocator Sungchun Kang (1): [media] s5p-fimc: fimc_stop_capture bug fix Sylwester Nawrocki (15): v4l: v4l2-ioctl: Fix conversion between multiplane and singleplane buffers v4l: mem2mem: port m2m_testdev to vb2 v4l: Add multiplanar format fourccs for s5p-fimc driver [media] s5p-fimc: Porting to videobuf 2 [media] s5p-fimc: Conversion to multiplanar formats [media] s5p-fimc: Use v4l core mutex in ioctl and file operations [media] s5p-fimc: Rename s3c_fimc* to s5p_fimc* [media] s5p-fimc: Derive camera bus width from mediabus pixelcode [media] s5p-fimc: Enable interworking without subdev s_stream [media] s5p-fimc: Use default input DMA burst count [media] s5p-fimc: Enable simultaneous rotation and flipping [media] s5p-fimc: Add control of the external sensor clock [media] s5p-fimc: Move scaler details handling to the register API file [media] Add chip identity for NOON010PC30 camera sensor [media] Add v4l2 subdev driver for NOON010PC30L image sensor drivers/media/video/Kconfig | 36 +- drivers/media/video/Makefile|7 + drivers/media/video/mem2mem_testdev.c | 227 ++-- drivers/media/video/noon010pc30.c | 792 drivers/media/video/s5p-fimc/fimc-capture.c | 550 + drivers/media/video/s5p-fimc/fimc-core.c| 872 +++-- drivers/media/video/s5p-fimc/fimc-core.h| 133 +-- drivers/media/video/s5p-fimc/fimc-reg.c | 201 ++-- drivers/media/video/s5p-fimc/regs-fimc.h| 29 +- drivers/media/video/saa7134/Kconfig |2 +- drivers/media/video/saa7134/Makefile|8 +- drivers/media/video/saa7134/saa7134-cards.c | 1415 - drivers/media/video/saa7134/saa7134-core.c | 454 +++- drivers/media/video/saa7134/saa7134-video.c | 859 + drivers/media/video/saa7134/saa7134.h | 48 +- drivers/media/video/v4l2-compat-ioctl32.c | 229 +++- drivers/media/video/v4l2-ioctl.c| 626 +- drivers/media/video/v4l2-mem2mem.c | 232 ++-- drivers/media/video/videobuf2-core.c| 1804 +++ drivers/media/video/videobuf2-dma-contig.c | 185 +++ drivers/media/video/videobuf2-dma-sg.c | 292 + drivers/media/video/videobuf2-memops.c | 232 drivers/media/video/videobuf2-vmalloc.c | 132 ++ drivers/media/video/vivi.c | 357 +++--- include/linux/videodev2.h | 131 ++- include/media/noon010pc30.h | 28 + include/media/{s3c_fimc.h = s5p_fimc.h}| 20 +- include/media/v4l2-chip-ident.h |3 + include/media/v4l2-ioctl.h | 16 + include/media/v4l2-mem2mem.h