[PATCH v2 0/3] media: ov02c10: get_selection and 26 MHz clock support

From: Felipe Calliari

Date: Wed Sep 23 2026 - 12:13:26 EST


Some Meteor Lake / Lunar Lake laptops (e.g. the Samsung Galaxy Book3/4
series) wire the OV02C10 to a 26 MHz external clock, which the driver
rejects at probe today. This series adds support for it, together with
two small changes found along the way.

Patch 1 drops a duplicated register write, patch 2 implements
.get_selection so libcamera can query the sensor geometry, and patch 3
accepts a 26 MHz clock and re-programs the OP and VT PLL multipliers so
that the MIPI link stays at the nominal 400 MHz.

Tested on a Samsung Galaxy Book3 (two CSI-2 lanes, 26 MHz clock):
capture runs at a steady 30.01 fps by buffer timestamp, against ~40 fps
with the unmodified register tables. v1 was also tested on a Galaxy
Book3 Pro; that Tested-by is carried on patches 1 and 2 only, since
patch 3 was rewritten.

Changes in v2:
- Rebased onto media next; patch 2 takes the new
const struct v4l2_subdev_client_info * argument of .get_selection.
- Patch 3: re-program the PLL multipliers instead of advertising a
scaled 541.667 MHz link frequency (Sakari), and drop the second
V4L2_CID_LINK_FREQ entry. No ipu-bridge change is needed any more.

v1: https://lore.kernel.org/linux-media/20260905030732.39196-1-calliarifelipe@xxxxxxxxx/

Felipe Calliari (3):
media: ov02c10: Drop duplicate register write
media: ov02c10: Implement get_selection
media: ov02c10: Accept a 26 MHz external clock

drivers/media/i2c/ov02c10.c | 78 +++++++++++++++++++++++++++++++++++--
1 file changed, 74 insertions(+), 4 deletions(-)

base-commit: 0c795849fd70d6bdb99aea5dd08d9b43128612f6
--
2.55.0