[libcamera-devel,v4,0/4] libcamera: Fix issues with vimc and Linux v5.2
mbox series

Message ID 20190810011333.8731-1-niklas.soderlund@ragnatech.se
Headers show
Series
  • libcamera: Fix issues with vimc and Linux v5.2
Related show

Message

Niklas Söderlund Aug. 10, 2019, 1:13 a.m. UTC
Hi,

The recently release Linux v5.2 changes the vimc drivers behavior in a
way which breaks libcameras vimc pipeline and some of our tests. This
small series aims to solve this and keep libcamera functioning on both
v5.1 (and earlier) and v5.2.

Patch 1/4 is a small preparation patch. While 2/4 switches the vimc
pipeline to use the RGB/YUV capture video node instead of a raw capture
node. Patch 3/4 fixes issues introduced by [1] and finally 4/4 fixes an
issue introduced by [2]. The whole series is tested on v5.1 and v5.2 on
top of libcamera master branch and all tests pass again.

1. 85ab1aa1fac17bcd ("media: vimc: deb: fix default sink bayer format")
2. b6c61a6c37317efd ("media: vimc: propagate pixel format in the stream")

* Changes since v3
- Change minimum resolution of a vimc camera from 16x16 to 48x48 to 
  satisfy scaler requirement.
- Declare link variable where it's first used.
- Fold PipelineHandlerVimc::initLinks() into VimcCameraData::init().
- Mention test change in commit message in 2/4.
- Update comments.

* Changes since v2
- Switch to vimc RGB/YUV capture video node.

Niklas Söderlund (4):
  libcamera: pipeline: vimc: Initialize device pointers
  libcamera: pipeline: vimc: Switch to using the RGB/YUV Capture video
    node
  tests: v4l2_videodevice: Set media bus and pixel formats for vimc
  tests: camera-sensor: Test using invalid media bus format

 src/libcamera/pipeline/vimc.cpp               | 93 +++++++++++++++++--
 test/camera-sensor.cpp                        |  3 +-
 test/camera/buffer_import.cpp                 | 10 +-
 .../v4l2_videodevice_test.cpp                 | 26 ++++++
 test/v4l2_videodevice/v4l2_videodevice_test.h |  7 +-
 5 files changed, 123 insertions(+), 16 deletions(-)

Comments

Niklas Söderlund Aug. 11, 2019, 12:19 a.m. UTC | #1
Hi,

I have now pushed this series.

On 2019-08-10 03:13:29 +0200, Niklas Söderlund wrote:
> Hi,
> 
> The recently release Linux v5.2 changes the vimc drivers behavior in a
> way which breaks libcameras vimc pipeline and some of our tests. This
> small series aims to solve this and keep libcamera functioning on both
> v5.1 (and earlier) and v5.2.
> 
> Patch 1/4 is a small preparation patch. While 2/4 switches the vimc
> pipeline to use the RGB/YUV capture video node instead of a raw capture
> node. Patch 3/4 fixes issues introduced by [1] and finally 4/4 fixes an
> issue introduced by [2]. The whole series is tested on v5.1 and v5.2 on
> top of libcamera master branch and all tests pass again.
> 
> 1. 85ab1aa1fac17bcd ("media: vimc: deb: fix default sink bayer format")
> 2. b6c61a6c37317efd ("media: vimc: propagate pixel format in the stream")
> 
> * Changes since v3
> - Change minimum resolution of a vimc camera from 16x16 to 48x48 to 
>   satisfy scaler requirement.
> - Declare link variable where it's first used.
> - Fold PipelineHandlerVimc::initLinks() into VimcCameraData::init().
> - Mention test change in commit message in 2/4.
> - Update comments.
> 
> * Changes since v2
> - Switch to vimc RGB/YUV capture video node.
> 
> Niklas Söderlund (4):
>   libcamera: pipeline: vimc: Initialize device pointers
>   libcamera: pipeline: vimc: Switch to using the RGB/YUV Capture video
>     node
>   tests: v4l2_videodevice: Set media bus and pixel formats for vimc
>   tests: camera-sensor: Test using invalid media bus format
> 
>  src/libcamera/pipeline/vimc.cpp               | 93 +++++++++++++++++--
>  test/camera-sensor.cpp                        |  3 +-
>  test/camera/buffer_import.cpp                 | 10 +-
>  .../v4l2_videodevice_test.cpp                 | 26 ++++++
>  test/v4l2_videodevice/v4l2_videodevice_test.h |  7 +-
>  5 files changed, 123 insertions(+), 16 deletions(-)
> 
> -- 
> 2.22.0
>