[PATCH v2 07/11] media: atomisp: Add Yoga Book camera configuration
From: Maurizio Casciano
Date: Thu Aug 27 2026 - 14:23:04 EST
The Yoga Book YB1-X91 firmware lacks usable AtomISP configuration for
both cameras. Rear INT3477 OV8858 uses four CSI-2 lanes and a WV517S
actuator; front OVTI2740 uses two lanes and no actuator.
Add both sensor configurations and a DMI-scoped two-lane override for
OVTI2740:00. Keep the quirk limited to Lenovo YB1-X91L systems.
Binding and media nodes do not prove streaming; both sensors and the
focus actuator still require physical tests.
Signed-off-by: Maurizio Casciano <mauriziocasciano7@xxxxxxxxx>
Assisted-by: Codex:gpt-5.6-sol sparse
---
.../media/atomisp/pci/atomisp_csi2_bridge.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c b/drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c
index cca91c6d71a5..207ab69385b5 100644
--- a/drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c
+++ b/drivers/staging/media/atomisp/pci/atomisp_csi2_bridge.c
@@ -74,6 +74,12 @@ static struct gmin_cfg_var lenovo_ideapad_miix_310_vars[] = {
{}
};
+static struct gmin_cfg_var lenovo_yogabook_x91_vars[] = {
+ /* The vendor driver and sensor modes use two CSI data lanes. */
+ { "OVTI2740:00", "CsiLanes", "2" },
+ {}
+};
+
static struct gmin_cfg_var xiaomi_mipad2_vars[] = {
/* _DSM contains the wrong CsiPort for the front facing OV5693 sensor */
{ "INT33BE:00", "CsiPort", "0" },
@@ -83,6 +89,14 @@ static struct gmin_cfg_var xiaomi_mipad2_vars[] = {
};
static const struct dmi_system_id gmin_cfg_dmi_overrides[] = {
+ {
+ /* Lenovo Yoga Book X91L */
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_NAME, "Lenovo YB1-X91L"),
+ },
+ .driver_data = lenovo_yogabook_x91_vars,
+ },
{
/* Lenovo Ideapad Miix 310 */
.matches = {
@@ -360,6 +374,8 @@ static const struct acpi_device_id atomisp_sensor_configs[] = {
* an i2c-client for the VCM, so it is disabled for now.
*/
ATOMISP_SENSOR_CONFIG("INT33BE", 2, false), /* OV5693 */
+ ATOMISP_SENSOR_CONFIG("INT3477", 4, true), /* OV8858 */
+ ATOMISP_SENSOR_CONFIG("OVTI2740", 2, false), /* OV2740 */
{}
};
--
2.53.0