All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jacopo Mondi <jacopo@jmondi.org>
To: linux-media@vger.kernel.org
Cc: Jacopo Mondi <jacopo@jmondi.org>,
	mchehab@kernel.org, sakari.ailus@linux.intel.com,
	hverkuil@xs4all.nl, laurent.pinchart@ideasonboard.com,
	roman.kovalivskyi@globallogic.com,
	dafna.hirschfeld@collabora.com, dave.stevenson@raspberrypi.org,
	naush@raspberrypi.com, erosca@de.adit-jv.com
Subject: [PATCH v3 00/29]  media: ov5647: Support RaspberryPi Camera Module v1
Date: Mon,  9 Nov 2020 17:49:05 +0100	[thread overview]
Message-ID: <20201109164934.134919-1-jacopo@jmondi.org> (raw)

Third iteration following:
v2: https://patchwork.linuxtv.org/project/linux-media/list/?series=3782
v1: https://patchwork.linuxtv.org/project/linux-media/list/?series=2765

Major changes are:
- Address Dave's comments
  - Remove superseded patch:
    "media: ov5647: Program mode only if it has changed"
  - Remove Raw Bayer pattern from mode names
  - Remove cosmetic re-flow of register-value tables

- Address Hans' comment:
  - Add support for V4L2_SEL_TGT_CROP_BOUNDS
  - Redefine the CROP rectangle relatively to the native pixel array as per
    "[PATCH 4/4] media: i2c: imx219: Selection compliance fixes"

- New patches:
  - media: ov5647: Support VIDIOC_SUBSCRIBE_EVENT
  Fix v4l2-compliance error:
  fail: v4l2-test-controls.cpp(823): subscribe event for control 'User Controls' failed

  - media: ov5647: Remove 640x480 SBGGR8 mode
  The 640x480 8-bit mode is broken, at least when capturing on RaspberryPi4.
  As the receiver works when capturing in 8-bit mode with other sensors, it
  might be legit to think the mode is broken. As I've no way to fix it, it's
  probably better to remove it completely.


v4l2-compliance output:
-------------------------------------------------------------------------------
v4l2-compliance 1.21.0-4679, 32 bits, 32-bit time_t
v4l2-compliance SHA: 225c6c2a17be 2020-10-30 15:13:07

Compliance test for device /dev/v4l-subdev0:


Required ioctls:

Allow for multiple opens:
	test second /dev/v4l-subdev0 open: OK
	test for unlimited opens: OK

	test invalid ioctls: OK
Debug ioctls:
	test VIDIOC_LOG_STATUS: OK (Not Supported)

Input ioctls:
	test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
	test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
	test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
	test VIDIOC_ENUMAUDIO: OK (Not Supported)
	test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
	test VIDIOC_G/S_AUDIO: OK (Not Supported)
	Inputs: 0 Audio Inputs: 0 Tuners: 0

Output ioctls:
	test VIDIOC_G/S_MODULATOR: OK (Not Supported)
	test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
	test VIDIOC_ENUMAUDOUT: OK (Not Supported)
	test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
	test VIDIOC_G/S_AUDOUT: OK (Not Supported)
	Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
	test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
	test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
	test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
	test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls:
	test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
	test VIDIOC_QUERYCTRL: OK
	test VIDIOC_G/S_CTRL: OK
	test VIDIOC_G/S/TRY_EXT_CTRLS: OK
	test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
	test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
	Standard Controls: 12 Private Controls: 0

Format ioctls:
	test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
	test VIDIOC_G/S_PARM: OK (Not Supported)
	test VIDIOC_G_FBUF: OK (Not Supported)
	test VIDIOC_G_FMT: OK (Not Supported)
	test VIDIOC_TRY_FMT: OK (Not Supported)
	test VIDIOC_S_FMT: OK (Not Supported)
	test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
	test Cropping: OK (Not Supported)
	test Composing: OK (Not Supported)
	test Scaling: OK (Not Supported)

Codec ioctls:
	test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
	test VIDIOC_G_ENC_INDEX: OK (Not Supported)
	test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls:
	test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK (Not Supported)
	test VIDIOC_EXPBUF: OK (Not Supported)
	test Requests: OK (Not Supported)

Total for device /dev/v4l-subdev0: 41, Succeeded: 41, Failed: 0, Warnings: 0
-------------------------------------------------------------------------------

Thanks
   j

Dave Stevenson (8):
  media: ov5647: Add support for PWDN GPIO.
  media: ov5647: Add support for non-continuous clock mode
  media: ov5647: Add set_fmt and get_fmt calls.
  media: ov5647: Add support for get_selection()
  media: ov5647: Set V4L2_SUBDEV_FL_HAS_EVENTS flag
  media: ov5647: Support V4L2_CID_PIXEL_RATE
  media: ov5647: Support V4L2_CID_VBLANK control
  media: ov5647: Advertise the correct exposure range

David Plowman (1):
  media: ov5647: Support gain, exposure and AWB controls

Jacopo Mondi (20):
  media: ov5647: Fix format initialization
  media: ov5647: Fix style issues
  media: ov5647: Replace license with SPDX identifier
  media: ov5647: Fix return value from read/write
  media: ov5647: Program mode at s_stream(1) time
  media: ov5647: Implement enum_frame_size()
  media: ov5647: Protect s_stream() with mutex
  media: ov5647: Rationalize driver structure name
  media: ov5647: Break out format handling
  media: ov5647: Rename SBGGR8 VGA mode
  media: ov5647: Add SGGBR10_1X10 modes
  media: ov5647: Use SBGGR10_1X10 640x480 as default
  media: ov5647: Implement set_fmt pad operation
  media: ov5647: Support V4L2_CID_HBLANK control
  media: ov5647: Use pm_runtime infrastructure
  media: ov5647: Rework s_stream() operation
  media: ov5647: Apply controls only when powered
  media: ov5647: Constify oe_enable/disable reglist
  media: ov5647: Support VIDIOC_SUBSCRIBE_EVENT
  media: ov5647: Remove 640x480 SBGGR8 mode

 drivers/media/i2c/ov5647.c | 1290 ++++++++++++++++++++++++++++++------
 1 file changed, 1079 insertions(+), 211 deletions(-)

--
2.29.1


             reply	other threads:[~2020-11-09 16:49 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-09 16:49 Jacopo Mondi [this message]
2020-11-09 16:49 ` [PATCH v3 01/29] media: ov5647: Add support for PWDN GPIO Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 02/29] media: ov5647: Add support for non-continuous clock mode Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 03/29] media: ov5647: Add set_fmt and get_fmt calls Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 04/29] media: ov5647: Fix format initialization Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 05/29] media: ov5647: Fix style issues Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 06/29] media: ov5647: Replace license with SPDX identifier Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 07/29] media: ov5647: Fix return value from read/write Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 08/29] media: ov5647: Program mode at s_stream(1) time Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 09/29] media: ov5647: Implement enum_frame_size() Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 10/29] media: ov5647: Protect s_stream() with mutex Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 11/29] media: ov5647: Support gain, exposure and AWB controls Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 12/29] media: ov5647: Rationalize driver structure name Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 13/29] media: ov5647: Break out format handling Jacopo Mondi
2020-11-18 20:18   ` Sakari Ailus
2020-11-09 16:49 ` [PATCH v3 14/29] media: ov5647: Add support for get_selection() Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 15/29] media: ov5647: Rename SBGGR8 VGA mode Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 16/29] media: ov5647: Add SGGBR10_1X10 modes Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 17/29] media: ov5647: Use SBGGR10_1X10 640x480 as default Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 18/29] media: ov5647: Implement set_fmt pad operation Jacopo Mondi
2020-11-18 20:42   ` Sakari Ailus
2020-11-19 11:39     ` Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 19/29] media: ov5647: Set V4L2_SUBDEV_FL_HAS_EVENTS flag Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 20/29] media: ov5647: Support V4L2_CID_PIXEL_RATE Jacopo Mondi
2020-11-18 20:43   ` Sakari Ailus
2020-11-09 16:49 ` [PATCH v3 21/29] media: ov5647: Support V4L2_CID_HBLANK control Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 22/29] media: ov5647: Support V4L2_CID_VBLANK control Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 23/29] media: ov5647: Advertise the correct exposure range Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 24/29] media: ov5647: Use pm_runtime infrastructure Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 25/29] media: ov5647: Rework s_stream() operation Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 26/29] media: ov5647: Apply controls only when powered Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 27/29] media: ov5647: Constify oe_enable/disable reglist Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 28/29] media: ov5647: Support VIDIOC_SUBSCRIBE_EVENT Jacopo Mondi
2020-11-09 16:49 ` [PATCH v3 29/29] media: ov5647: Remove 640x480 SBGGR8 mode Jacopo Mondi
2020-11-18 20:48   ` Sakari Ailus
2020-11-19 10:07     ` Jacopo Mondi
2020-11-18 20:50 ` [PATCH v3 00/29] media: ov5647: Support RaspberryPi Camera Module v1 Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201109164934.134919-1-jacopo@jmondi.org \
    --to=jacopo@jmondi.org \
    --cc=dafna.hirschfeld@collabora.com \
    --cc=dave.stevenson@raspberrypi.org \
    --cc=erosca@de.adit-jv.com \
    --cc=hverkuil@xs4all.nl \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=naush@raspberrypi.com \
    --cc=roman.kovalivskyi@globallogic.com \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.