 +{
 +	struct i2c_client *client = v4l2_get_subdevdata(sd);
 +	struct ov10635_priv *priv = to_ov10635(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] = OV10635_VERSION_REG >> 8;
++	edid->edid[9] = OV10635_VERSION_REG & 0xff;
 +
 +	return 0;
 +}

 drivers/media/i2c/soc_camera/Makefile              |    4 +
 drivers/media/i2c/soc_camera/max9286_max9271.c     |  467 ++++++++
 drivers/media/i2c/soc_camera/max9286_max9271.h     |  231 ++++
 .../media/i2c/soc_camera/max9286_max9271_ov10635.c |  604 ++++++++++
 .../media/i2c/soc_camera/max9286_max9271_ov10635.h | 1149 ++++++++++++++++++++
 .../media/i2c/soc_camera/max9286_max9271_ov106xx.c |   93 ++
 .../i2c/soc_camera/max9286_max9271_ov490_ov10640.c |  813 ++++++++++++++
 .../i2c/soc_camera/max9286_max9271_ov490_ov10640.h |   35 +
 drivers/media/platform/soc_camera/rcar_csi2.c      |  159 ++-
 drivers/media/platform/soc_camera/rcar_vin.c       |   78 +-

+{
+	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;
+}
