v3/ec: configure I2C buses for DDC

The STM32 has connections to allow it to intercept the DDC I2C
bus. Configure these pins are input/pull-up so that they don't
interfere with the IT68051's DDC bus.

BUG=b:162915510
TEST=N/A

Change-Id: I15b510e9a7002cab2bf09f313fa287c7952c9c4b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/chameleon/+/2740634
Tested-by: Paul Fagerburg <pfagerburg@chromium.org>
Reviewed-by: Alexandru M Stan <amstan@chromium.org>
Commit-Queue: Paul Fagerburg <pfagerburg@chromium.org>
diff --git a/v3/ec/boards/arm/chameleon/chameleon.dts b/v3/ec/boards/arm/chameleon/chameleon.dts
index f17f35f..a2333da 100644
--- a/v3/ec/boards/arm/chameleon/chameleon.dts
+++ b/v3/ec/boards/arm/chameleon/chameleon.dts
@@ -267,6 +267,51 @@
 			gpios = <&gpioe 15 GPIO_OUTPUT_LOW>;
 			label = "GP213_IT68051P1_HPD";
 		};
+
+		/*
+		 * I2C signals for STM32 to provide the EDID (future use)
+		 * Right now, set them input/pull-up so they don't interfere with
+		 * the IT68051's I2C bus.
+		 */
+		gp213_it68051p0_ddc_scl {
+			gpios = <&gpiod 7 GPIO_INPUT_PULL_UP>;
+			label = "GP213_IT68051P0_DDC_SCL";
+		};
+
+		gp213_it68051p0_ddc_sda {
+			gpios = <&gpiod 8 GPIO_INPUT_PULL_UP>;
+			label = "GP213_IT68051P0_DDC_SDA";
+		};
+
+		stm32_it68051p0_ddc_scl {
+			gpios = <&gpiod 9 GPIO_INPUT_PULL_UP>;
+			label = "STM32_IT68051P0_DDC_SCL";
+		};
+
+		stm32_it68051p0_ddc_sda {
+			gpios = <&gpiod 10 GPIO_INPUT_PULL_UP>;
+			label = "STM32_IT68051P0_DDC_SDA";
+		};
+
+		gp213_it68051p1_ddc_scl {
+			gpios = <&gpiod 12 GPIO_INPUT_PULL_UP>;
+			label = "GP213_IT68051P1_DDC_SCL";
+		};
+
+		gp213_it68051p1_ddc_sda {
+			gpios = <&gpiod 13 GPIO_INPUT_PULL_UP>;
+			label = "GP213_IT68051P1_DDC_SDA";
+		};
+
+		stm32_it68051p1_ddc_scl {
+			gpios = <&gpiod 14 GPIO_INPUT_PULL_UP>;
+			label = "STM32_IT68051P1_DDC_SCL";
+		};
+
+		stm32_it68051p1_ddc_sda {
+			gpios = <&gpiod 15 GPIO_INPUT_PULL_UP>;
+			label = "STM32_IT68051P1_DDC_SDA";
+		};
 	};
 
 	hotplug {
diff --git a/v3/ec/include/io.h b/v3/ec/include/io.h
index 5eea2e1..681e1e1 100644
--- a/v3/ec/include/io.h
+++ b/v3/ec/include/io.h
@@ -50,6 +50,14 @@
 	it68051p0_ddc_bp_l,
 	it68051p1_ddc_bp_l,
 	gp213_it68051p1_hpd,
+	gp213_it68051p0_ddc_scl,
+	gp213_it68051p0_ddc_sda,
+	stm32_it68051p0_ddc_scl,
+	stm32_it68051p0_ddc_sda,
+	gp213_it68051p1_ddc_scl,
+	gp213_it68051p1_ddc_sda,
+	stm32_it68051p1_ddc_scl,
+	stm32_it68051p1_ddc_sda,
 	dp1_auxp_det,
 	dp1_auxn_det,
 	dp2_auxp_det,
diff --git a/v3/ec/src/io.c b/v3/ec/src/io.c
index 166a0b0..3f3c7ad 100644
--- a/v3/ec/src/io.c
+++ b/v3/ec/src/io.c
@@ -68,6 +68,14 @@
 	GPIO(it68051, it68051p0_ddc_bp_l),
 	GPIO(it68051, it68051p1_ddc_bp_l),
 	GPIO(it68051, gp213_it68051p1_hpd),
+	GPIO(it68051, gp213_it68051p0_ddc_scl),
+	GPIO(it68051, gp213_it68051p0_ddc_sda),
+	GPIO(it68051, stm32_it68051p0_ddc_scl),
+	GPIO(it68051, stm32_it68051p0_ddc_sda),
+	GPIO(it68051, gp213_it68051p1_ddc_scl),
+	GPIO(it68051, gp213_it68051p1_ddc_sda),
+	GPIO(it68051, stm32_it68051p1_ddc_scl),
+	GPIO(it68051, stm32_it68051p1_ddc_sda),
 	GPIO(hotplug, dp1_auxp_det),
 	GPIO(hotplug, dp1_auxn_det),
 	GPIO(hotplug, dp2_auxp_det),