 +	maxim_reg8_write(client, 0x01, maxim_map[0][idx] << 1);	/* MAX9286-CAM0 I2C */
 +	maxim_reg8_write(client, 0x00, maxim_map[1][idx] << 1);	/* MAX9271-CAM0 I2C new */
 +	usleep_range(2000, 2500);				/* wait 2ms */
++	/* put MAX9271 in configuration link state  */
++	client->addr = maxim_map[1][idx];			/* MAX9271-CAMx I2C new */
++	maxim_reg8_write(client, 0x04, 0x43);			/* enable reverse_control/conf_link */
 +#ifdef MAXIM_DUMP
 +	client->addr = maxim_map[0][idx];			/* MAX9286-CAMx I2C */
 +	maxim_max927x_dump_regs(client);

---
 drivers/media/i2c/soc_camera/Kconfig               |   32 +
 drivers/media/i2c/soc_camera/Makefile              |    4 +
 drivers/media/i2c/soc_camera/max9286_max9271.c     |  486 +++++++++
 drivers/media/i2c/soc_camera/max9286_max9271.h     |  231 ++++
 .../media/i2c/soc_camera/max9286_max9271_ov10635.c |  603 ++++++++++
 .../media/i2c/soc_camera/max9286_max9271_ov10635.h | 1149 ++++++++++++++++++++

 obj-$(CONFIG_SOC_CAMERA_MT9T031)	+= mt9t031.o
diff --git a/drivers/media/i2c/soc_camera/max9286_max9271.c b/drivers/media/i2c/soc_camera/max9286_max9271.c
new file mode 100644
index 0000000..ee4aafd
--- /dev/null
+++ b/drivers/media/i2c/soc_camera/max9286_max9271.c
@@ -0,0 +1,487 @@
+/*
+ * MAXIM R-Car H3 Demo board setup driver
+ *
