All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] media: Driver for OV1063x camera sensor
@ 2021-01-04  5:39 Laurent Pinchart
  2021-01-04  5:39 ` [PATCH 1/2] dt-bindings: media: Add bindings for OmniVision OV1063x sensors Laurent Pinchart
  2021-01-04  5:39 ` [PATCH 2/2] media: i2c: Add OV1063x sensor driver Laurent Pinchart
  0 siblings, 2 replies; 17+ messages in thread
From: Laurent Pinchart @ 2021-01-04  5:39 UTC (permalink / raw)
  To: linux-media; +Cc: Sakari Ailus, Benoit Parrot

Hello,

This patch series adds a driver for the OV10633 and OV10635 camera
sensors, along with corresponding DT bindings.

As detailed in the commit message of patch 2/2, the driver originates
from a submission from Phil Edworthy 7 and a half years ago. It went
through the TI kernel tree, and is now a candidate for mainline again.

Large parts of the driver have been rewritten compared to the version
present in the TI kernel, to bring the code to the latest kernel APIs,
fix issues and apply various cleanups. There are known issues, listed in
TODO comments in the driver, and some of them will require access to
more documentation in order to develop fixes (I only have a leaked
OV10633 datasheet).

I'd appreciate if reviewers could have a look at the TODO comment and
let me know which issues are blocking and which could be addressed
later. The code is functional, and has been tested successfully with
multiple resolutions, with a TI AM572x EVM and the TI VIP capture driver
(which I will submit in the near future in a separate series).

One potential blocker is the split of the driver in multiple subdevs as
that would affect the userspace API. I will work on this, but I maye be
limited by lack of information in the documentation I have access to, as
it's not always clear what the exact hardware features are.

Still, a best effort split is likely possible. On this topic, the sensor
seems to support vertical skipping in the pixel array by a factor of 2
or 4 (this isn't entirely clear), and horizontal and vertical
sub-sampling (using either summing, averaging or skipping) in the ISP,
the latter seemingly in the YUV domain (I kid you not...). There's also
an analog crop rectangle that can crop any portion of the image
vertically but is limited to a centered region of 1312, 768 or 656
pixels horizontally, and a digital crop rectangle that seems more
standard, applied (if I'm not mistaken) after pixel array vertical
skipping and before ISP sub-sampling. Advices on how to meaningfully
expose these features through the subdev API would be welcome (cursing
hardware designers is not mandatory).

Benoit Parrot (1):
  dt-bindings: media: Add bindings for OmniVision OV1063x sensors

Laurent Pinchart (1):
  media: i2c: Add OV1063x sensor driver

 .../bindings/media/i2c/ov1063x.yaml           |   97 +
 MAINTAINERS                                   |    9 +
 drivers/media/i2c/Kconfig                     |   12 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/ov1063x.c                   | 1692 +++++++++++++++++
 drivers/media/i2c/ov1063x_regs.h              |  626 ++++++
 6 files changed, 2437 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/ov1063x.yaml
 create mode 100644 drivers/media/i2c/ov1063x.c
 create mode 100644 drivers/media/i2c/ov1063x_regs.h

-- 
Regards,

Laurent Pinchart


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

end of thread, other threads:[~2021-12-06 22:24 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-04  5:39 [PATCH 0/2] media: Driver for OV1063x camera sensor Laurent Pinchart
2021-01-04  5:39 ` [PATCH 1/2] dt-bindings: media: Add bindings for OmniVision OV1063x sensors Laurent Pinchart
2021-01-05 17:49   ` Rob Herring
2021-01-12  9:31   ` Tomi Valkeinen
2021-01-04  5:39 ` [PATCH 2/2] media: i2c: Add OV1063x sensor driver Laurent Pinchart
2021-01-04 11:41   ` Sakari Ailus
2021-01-04 13:56     ` Laurent Pinchart
2021-12-06 22:23     ` Laurent Pinchart
2021-01-04 12:47   ` Sakari Ailus
2021-01-04 13:05     ` Laurent Pinchart
2021-01-04 13:55       ` Sakari Ailus
2021-01-12 13:32   ` Tomi Valkeinen
2021-01-14  5:32     ` Laurent Pinchart
2021-01-18 14:04   ` Tomi Valkeinen
2021-01-20  8:26     ` Laurent Pinchart
2021-01-20 11:52       ` Tomi Valkeinen
2021-02-08 14:18   ` Tomi Valkeinen

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.