Linux Media Controller development
 help / color / mirror / Atom feed
* [PATCH v3 00/29] media: ov2680: Bugfixes + ACPI + selection(crop-tgt) API support
@ 2023-06-27 13:18 Hans de Goede
  2023-06-27 13:18 ` [PATCH v3 01/29] media: ov2680: Remove auto-gain and auto-exposure controls Hans de Goede
                   ` (30 more replies)
  0 siblings, 31 replies; 66+ messages in thread
From: Hans de Goede @ 2023-06-27 13:18 UTC (permalink / raw)
  To: Sakari Ailus, Laurent Pinchart, Rui Miguel Silva, Daniel Scally
  Cc: Hans de Goede, Mauro Carvalho Chehab, Andy Shevchenko, Kate Hsuan,
	Tommaso Merciai, linux-media

Hi All,

Here is v3 of my ov2680 sensor driver patch series.

Changes in v3:
- Add Rui Miguel Silva's Ack for the series
- 2 small fixes for remarks from Andy
- Add a new patch adding me as co-maintainer in MAINTAINERS

Changes in v2
- Drop "media: Add MIPI CCI register access helper functions"
  (being reviewed in its own thread / patch-submission)
- Drop "media: ov2680: Add g_skip_frames op support"
- Add "media: ov2680: Fix regulators being left enabled on
  ov2680_power_on() errors"
- Add "media: ov2680: Add link-freq and pixel-rate controls"
  with this the driver now works on IPU3 with ipu3-capture.sh
  (libcamera support requires adding a couple more controls)
- Limit line length to 80 chars everywhere
- Address various small remarks from Andy

During all the work done on the atomisp driver I have mostly been testing
on devices with an ov2680 sensor. As such I have also done a lot of work
on the atomisp-ov2680.c atomisp specific sensor driver.

With the latest atomisp code from:
https://git.kernel.org/pub/scm/linux/kernel/git/hansg/linux.git/tag/?h=media-atomisp-6.5-1

The atomisp code can now work with standard v4l2 sensor drivers using
the selections (crop-tgt) api and v4l2-async sensor driver registration.

This patch series modifies the main drivers/media/i2c/ov2680.c driver
to add bugfixes, ACPI enumeration, selection API support and further
improvments. After this the driver can be used with the atomisp driver
and atomisp-ov2680.c can be dropped.

This also gets the driver much closer to having everything needed for
use with IPU3 / libcamera. I have a Lenovo Miix 510 now with an IPU3 +
ov2680 sensor and with this series raw-capture using the ipu3-capture.sh
script works. I plan to work on libcamera support for this in the near
future.

This series consist of 3 parts:

1. Patches 1-8 are bugfixes these are put first for backporting

2. Patch 9 converts the ov2680 driver to the new CCI helpers,
the same has been done in the other series with the atomisp-ov2680
driver and this makes it much easier to sync things up.

Note this depends on the new CCI register helpers, these are being
reviewed here:

https://lore.kernel.org/linux-media/20230627125109.52354-1-hdegoede@redhat.com/

3. Patches 9 - 29 implement the ACPI enumeration,
selection API support and further improvments.

Regards,

Hans



Hans de Goede (29):
  media: ov2680: Remove auto-gain and auto-exposure controls
  media: ov2680: Fix ov2680_bayer_order()
  media: ov2680: Fix vflip / hflip set functions
  media: ov2680: Use select VIDEO_V4L2_SUBDEV_API
  media: ov2680: Don't take the lock for try_fmt calls
  media: ov2680: Add ov2680_fill_format() helper function
  media: ov2680: Fix ov2680_set_fmt() which == V4L2_SUBDEV_FORMAT_TRY
    not working
  media: ov2680: Fix regulators being left enabled on ov2680_power_on()
    errors
  media: ov2680: Convert to new CCI register access helpers
  media: ov2680: Store dev instead of i2c_client in ov2680_dev
  media: ov2680: Check for "powerdown" GPIO con-id before checking for
    "reset" GPIO con-id
  media: ov2680: Add runtime-pm support
  media: ov2680: Drop is_enabled flag
  media: ov2680: Add support for more clk setups
  media: ov2680: Add support for 19.2 MHz clock
  media: ov2680: Add endpoint matching support
  media: ov2680: Add support for ACPI enumeration
  media: ov2680: Fix ov2680_enum_frame_interval()
  media: ov2680: Annotate the per mode register setting lists
  media: ov2680: Add ov2680_mode struct
  media: ov2680: Make setting the mode algorithm based
  media: ov2680: Add an __ov2680_get_pad_format() helper function
  media: ov2680: Implement selection support
  media: ov2680: Fix exposure and gain ctrls range and default value
  media: ov2680: Add a bunch of register tweaks
  media: ov2680: Drop unnecessary pad checks
  media: ov2680: Read and log sensor revision during probe
  media: ov2680: Add link-freq and pixel-rate controls
  MAINTAINERS: Add Hans de Goede as OV2680 sensor driver maintainer

 MAINTAINERS                |    1 +
 drivers/media/i2c/Kconfig  |    2 +
 drivers/media/i2c/ov2680.c | 1318 +++++++++++++++++++-----------------
 3 files changed, 691 insertions(+), 630 deletions(-)

-- 
2.41.0


^ permalink raw reply	[flat|nested] 66+ messages in thread

end of thread, other threads:[~2023-08-01  8:43 UTC | newest]

Thread overview: 66+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-27 13:18 [PATCH v3 00/29] media: ov2680: Bugfixes + ACPI + selection(crop-tgt) API support Hans de Goede
2023-06-27 13:18 ` [PATCH v3 01/29] media: ov2680: Remove auto-gain and auto-exposure controls Hans de Goede
2023-06-27 13:18 ` [PATCH v3 02/29] media: ov2680: Fix ov2680_bayer_order() Hans de Goede
2023-06-27 13:18 ` [PATCH v3 03/29] media: ov2680: Fix vflip / hflip set functions Hans de Goede
2023-06-27 14:35   ` Jacopo Mondi
2023-06-27 14:38     ` Hans de Goede
2023-06-27 15:01       ` Jacopo Mondi
2023-06-27 13:18 ` [PATCH v3 04/29] media: ov2680: Use select VIDEO_V4L2_SUBDEV_API Hans de Goede
2023-06-27 13:18 ` [PATCH v3 05/29] media: ov2680: Don't take the lock for try_fmt calls Hans de Goede
2023-06-27 13:18 ` [PATCH v3 06/29] media: ov2680: Add ov2680_fill_format() helper function Hans de Goede
2023-06-27 13:18 ` [PATCH v3 07/29] media: ov2680: Fix ov2680_set_fmt() which == V4L2_SUBDEV_FORMAT_TRY not working Hans de Goede
2023-06-27 14:32   ` Dan Scally
2023-06-27 15:08   ` Jacopo Mondi
2023-06-27 16:55     ` Andy Shevchenko
2023-06-27 17:17       ` Hans de Goede
2023-06-27 21:49       ` Jacopo Mondi
2023-06-27 13:18 ` [PATCH v3 08/29] media: ov2680: Fix regulators being left enabled on ov2680_power_on() errors Hans de Goede
2023-06-27 13:18 ` [PATCH v3 09/29] media: ov2680: Convert to new CCI register access helpers Hans de Goede
2023-06-27 13:18 ` [PATCH v3 10/29] media: ov2680: Store dev instead of i2c_client in ov2680_dev Hans de Goede
2023-06-27 13:18 ` [PATCH v3 11/29] media: ov2680: Check for "powerdown" GPIO con-id before checking for "reset" GPIO con-id Hans de Goede
2023-06-27 14:40   ` Dan Scally
2023-06-27 13:18 ` [PATCH v3 12/29] media: ov2680: Add runtime-pm support Hans de Goede
2023-06-27 13:18 ` [PATCH v3 13/29] media: ov2680: Drop is_enabled flag Hans de Goede
2023-06-27 14:50   ` Dan Scally
2023-06-27 13:18 ` [PATCH v3 14/29] media: ov2680: Add support for more clk setups Hans de Goede
2023-07-03  6:58   ` Dan Scally
2023-07-03 11:01   ` Tommaso Merciai
2023-07-31 12:44   ` Sakari Ailus
2023-07-31 12:54     ` Hans de Goede
2023-07-31 13:35       ` Sakari Ailus
2023-07-31 13:47         ` Hans de Goede
2023-06-27 13:18 ` [PATCH v3 15/29] media: ov2680: Add support for 19.2 MHz clock Hans de Goede
2023-06-27 13:18 ` [PATCH v3 16/29] media: ov2680: Add endpoint matching support Hans de Goede
2023-06-27 13:18 ` [PATCH v3 17/29] media: ov2680: Add support for ACPI enumeration Hans de Goede
2023-06-27 13:18 ` [PATCH v3 18/29] media: ov2680: Fix ov2680_enum_frame_interval() Hans de Goede
2023-07-03  7:26   ` Dan Scally
2023-08-01  8:28     ` Hans de Goede
2023-06-27 13:18 ` [PATCH v3 19/29] media: ov2680: Annotate the per mode register setting lists Hans de Goede
2023-06-27 13:18 ` [PATCH v3 20/29] media: ov2680: Add ov2680_mode struct Hans de Goede
2023-06-27 13:18 ` [PATCH v3 21/29] media: ov2680: Make setting the mode algorithm based Hans de Goede
2023-07-03  8:50   ` Dan Scally
2023-08-01  8:42     ` Hans de Goede
2023-06-27 13:18 ` [PATCH v3 22/29] media: ov2680: Add an __ov2680_get_pad_format() helper function Hans de Goede
2023-06-27 13:18 ` [PATCH v3 23/29] media: ov2680: Implement selection support Hans de Goede
2023-06-27 13:18 ` [PATCH v3 24/29] media: ov2680: Fix exposure and gain ctrls range and default value Hans de Goede
2023-06-27 15:16   ` Jacopo Mondi
2023-06-27 16:26     ` Hans de Goede
2023-06-27 22:09       ` Jacopo Mondi
2023-06-27 13:18 ` [PATCH v3 25/29] media: ov2680: Add a bunch of register tweaks Hans de Goede
2023-06-27 13:18 ` [PATCH v3 26/29] media: ov2680: Drop unnecessary pad checks Hans de Goede
2023-06-27 13:18 ` [PATCH v3 27/29] media: ov2680: Read and log sensor revision during probe Hans de Goede
2023-06-27 13:18 ` [PATCH v3 28/29] media: ov2680: Add link-freq and pixel-rate controls Hans de Goede
2023-07-04  9:22   ` Dan Scally
2023-07-04  9:44     ` Hans de Goede
2023-07-04 11:23       ` Dave Stevenson
2023-07-04 11:29         ` Hans de Goede
2023-07-04 11:32           ` Hans de Goede
2023-07-04 11:37             ` Dan Scally
2023-07-04 12:19             ` Dave Stevenson
2023-07-04 14:36               ` Andy Shevchenko
2023-06-27 13:18 ` [PATCH v3 29/29] MAINTAINERS: Add Hans de Goede as OV2680 sensor driver maintainer Hans de Goede
2023-07-03  7:24   ` Rui Miguel Silva
2023-07-04  9:23   ` Dan Scally
2023-06-27 14:11 ` [PATCH v3 00/29] media: ov2680: Bugfixes + ACPI + selection(crop-tgt) API support Jacopo Mondi
2023-06-27 14:30   ` Hans de Goede
2023-06-27 14:29 ` [PATCH v3 12/29] media: ov2680: Add runtime-pm support Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox