 +{
 +	struct i2c_client *client = v4l2_get_subdevdata(sd);
 +	struct ov490_priv *priv = to_ov490(client);
++	int cam_idx = client->addr - CAM;
 +
 +	memcpy(edid->edid, priv->id, 6);
++
++	edid->edid[6] = maxim_map[0][cam_idx] == DES0 ? 0 : 1;
++	edid->edid[7] = maxim_map[0][cam_idx] == DES0 ? cam_idx : cam_idx - 4;
++	edid->edid[8] = OV490_VERSION_REG >> 8;
++	edid->edid[9] = OV490_VERSION_REG & 0xff;
 +
 +	return 0;
 +}

+MODULE_LICENSE("GPL");
diff --git a/drivers/media/i2c/soc_camera/max9286_max9271_ov490_ov10640.c b/drivers/media/i2c/soc_camera/max9286_max9271_ov490_ov10640.c
new file mode 100644
index 0000000..b105b71
--- /dev/null
+++ b/drivers/media/i2c/soc_camera/max9286_max9271_ov490_ov10640.c
@@ -0,0 +1,813 @@
+/*
+ * MAXIM max9286-max9271 with OmniVision ov490-ov10640 sensor camera driver
+ *

\ No newline at end of file
diff --git a/drivers/media/i2c/soc_camera/max9286_max9271_ov10635.c b/drivers/media/i2c/soc_camera/max9286_max9271_ov10635.c
new file mode 100644
index 0000000..4096629
--- /dev/null
+++ b/drivers/media/i2c/soc_camera/max9286_max9271_ov10635.c
@@ -0,0 +1,610 @@
+/*
+ * MAXIM max9286-max9271 with OmniVision ov10635 sensor camera driver
+ *
