[PATCH v7 00/16] media: Add Yoga Book camera support

Maurizio Casciano posted 16 patches 3 weeks, 2 days ago
MAINTAINERS                                   |   1 +
drivers/media/i2c/Kconfig                     |  11 +
drivers/media/i2c/Makefile                    |   1 +
drivers/media/i2c/ov2740.c                    | 114 +++++++--
drivers/media/i2c/ov8858.c                    | 220 ++++++++++++++----
drivers/media/i2c/wv517s.c                    | 206 ++++++++++++++++
drivers/media/pci/intel/ipu-bridge.c          |  19 +-
.../staging/media/atomisp/pci/atomisp_cmd.c   |  80 ++++---
.../staging/media/atomisp/pci/atomisp_cmd.h   |   6 +-
.../staging/media/atomisp/pci/atomisp_csi2.c  |  20 +-
.../media/atomisp/pci/atomisp_csi2_bridge.c   |  30 ++-
.../staging/media/atomisp/pci/atomisp_ioctl.c |  34 ++-
.../media/atomisp/pci/atomisp_subdev.c        |   4 +-
.../media/atomisp/pci/atomisp_subdev.h        |   3 +-
include/media/ipu-bridge.h                    |   3 +
15 files changed, 617 insertions(+), 135 deletions(-)
create mode 100644 drivers/media/i2c/wv517s.c
[PATCH v7 00/16] media: Add Yoga Book camera support
Posted by Maurizio Casciano 3 weeks, 2 days ago
Hi,

This series adds the sensor, bridge, AtomISP and lens-actuator support
needed by the front and rear cameras of the Lenovo Yoga Book YB1-X91.

It covers the OV8858 19.2 MHz clock and Cherry Trail gain programming,
OV2740 288 MHz link frequency and manual white balance, firmware IDs and
IPU bridge data, AtomISP raw capture and CSI-2 timing, and the WV517S lens
actuator.

Changes in v7:
- In patch 2, keep digital gain independent of the external clock and
  expose the manual red and blue gains as separate controls, as requested
  by Sakari Ailus. Keep green at unity and accumulate register-write
  errors across the three manual white-balance channels.
- Move the 24 MHz PLL and global timing registers out of the common mode
  tables into revision- and lane-specific arrays. Select both 19.2 MHz and
  24 MHz clock programming explicitly when starting a stream.
- Clarify the patch 2 assistance disclosure as
  `Assisted-by: LLM [Codex] [Sparse]`.
- No changes to patches 1 and 3 through 16.

Validation:
- Strict checkpatch over all 16 patches: no errors or warnings.
- W=1 object build of drivers/media/i2c/ov8858.o.
- Sparse C=2 check of drivers/media/i2c/ov8858.c.
- OV8858 R2A, four CSI-2 lanes and 19.2 MHz input on the Yoga Book:
  digital gain and the red and blue balance controls were changed
  independently during active streaming.
- Three complete real raw Bayer frames captured from each camera:
  OV2740 BA10 1932x1092 and OV8858 BG10 1632x1224.
- Front and rear camera streaming validated in Cheese.

Maurizio Casciano (16):
  media: ov8858: Extract digital gain programming
  media: ov8858: support 19.2 MHz clock and CHT gain setup
  media: ov2740: Use C99 initializers for ACPI IDs
  media: ov2740: Add OVTI2740 ACPI ID
  media: ov8858: Add INT3477 ACPI ID
  media: intel: ipu-bridge: Add Yoga Book camera sensors
  media: atomisp: Add Yoga Book camera configuration
  media: ov2740: support 288 MHz link frequency
  media: intel: ipu-bridge: allow sensor-specific link frequencies
  media: atomisp: derive CSI-2 timing from sensor link frequency
  media: atomisp: provide Yoga Book OV2740 link frequency
  media: ov2740: release group hold after gain write errors
  media: ov2740: add manual white balance controls
  media: atomisp: Use struct v4l2_area for padding
  media: atomisp: allow raw Bayer capture
  media: i2c: Add WV517S lens actuator driver

 MAINTAINERS                                   |   1 +
 drivers/media/i2c/Kconfig                     |  11 +
 drivers/media/i2c/Makefile                    |   1 +
 drivers/media/i2c/ov2740.c                    | 114 +++++++--
 drivers/media/i2c/ov8858.c                    | 220 ++++++++++++++----
 drivers/media/i2c/wv517s.c                    | 206 ++++++++++++++++
 drivers/media/pci/intel/ipu-bridge.c          |  19 +-
 .../staging/media/atomisp/pci/atomisp_cmd.c   |  80 ++++---
 .../staging/media/atomisp/pci/atomisp_cmd.h   |   6 +-
 .../staging/media/atomisp/pci/atomisp_csi2.c  |  20 +-
 .../media/atomisp/pci/atomisp_csi2_bridge.c   |  30 ++-
 .../staging/media/atomisp/pci/atomisp_ioctl.c |  34 ++-
 .../media/atomisp/pci/atomisp_subdev.c        |   4 +-
 .../media/atomisp/pci/atomisp_subdev.h        |   3 +-
 include/media/ipu-bridge.h                    |   3 +
 15 files changed, 617 insertions(+), 135 deletions(-)
 create mode 100644 drivers/media/i2c/wv517s.c

-- 
2.53.0
Re: [PATCH v7 00/16] media: Add Yoga Book camera support
Posted by Andy Shevchenko 3 weeks, 2 days ago
On Wed, Sep 02, 2026 at 04:53:29PM +0200, Maurizio Casciano wrote:
> 
> This series adds the sensor, bridge, AtomISP and lens-actuator support
> needed by the front and rear cameras of the Lenovo Yoga Book YB1-X91.
> 
> It covers the OV8858 19.2 MHz clock and Cherry Trail gain programming,
> OV2740 288 MHz link frequency and manual white balance, firmware IDs and
> IPU bridge data, AtomISP raw capture and CSI-2 timing, and the WV517S lens
> actuator.

> Changes in v7:
> - In patch 2, keep digital gain independent of the external clock and
>   expose the manual red and blue gains as separate controls, as requested
>   by Sakari Ailus. Keep green at unity and accumulate register-write
>   errors across the three manual white-balance channels.
> - Move the 24 MHz PLL and global timing registers out of the common mode
>   tables into revision- and lane-specific arrays. Select both 19.2 MHz and
>   24 MHz clock programming explicitly when starting a stream.
> - Clarify the patch 2 assistance disclosure as
>   `Assisted-by: LLM [Codex] [Sparse]`.
> - No changes to patches 1 and 3 through 16.

Wait at least a few days before sending a new version.

There will be a v8 as far as I can tell, but send it next week after all comments
were addressed (or settled down).

-- 
With Best Regards,
Andy Shevchenko
Re: [PATCH v7 00/16] media: Add Yoga Book camera support
Posted by Andy Shevchenko 3 weeks, 2 days ago
On Thu, Sep 03, 2026 at 07:44:30AM +0300, Andy Shevchenko wrote:
> On Wed, Sep 02, 2026 at 04:53:29PM +0200, Maurizio Casciano wrote:
> > 
> > This series adds the sensor, bridge, AtomISP and lens-actuator support
> > needed by the front and rear cameras of the Lenovo Yoga Book YB1-X91.
> > 
> > It covers the OV8858 19.2 MHz clock and Cherry Trail gain programming,
> > OV2740 288 MHz link frequency and manual white balance, firmware IDs and
> > IPU bridge data, AtomISP raw capture and CSI-2 timing, and the WV517S lens
> > actuator.
> 
> > Changes in v7:
> > - In patch 2, keep digital gain independent of the external clock and
> >   expose the manual red and blue gains as separate controls, as requested
> >   by Sakari Ailus. Keep green at unity and accumulate register-write
> >   errors across the three manual white-balance channels.
> > - Move the 24 MHz PLL and global timing registers out of the common mode
> >   tables into revision- and lane-specific arrays. Select both 19.2 MHz and
> >   24 MHz clock programming explicitly when starting a stream.
> > - Clarify the patch 2 assistance disclosure as
> >   `Assisted-by: LLM [Codex] [Sparse]`.
> > - No changes to patches 1 and 3 through 16.
> 
> Wait at least a few days before sending a new version.
> 
> There will be a v8 as far as I can tell, but send it next week after all comments
> were addressed (or settled down).

To collect given tags use `b4` tool.

And general comment about AI, try to do some work yourself, AI does not
guarantee 100% correct results.

-- 
With Best Regards,
Andy Shevchenko