arm64: dts: qcom: qrb2210-rb1: switch I2C2 to i2c-gpio
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Wed, 5 Jun 2024 08:55:56 +0000 (11:55 +0300)
committerBjorn Andersson <andersson@kernel.org>
Thu, 6 Jun 2024 02:39:32 +0000 (21:39 -0500)
On the Qualcomm RB1 platform the I2C bus connected to the LT9611UXC
bridge under some circumstances can go into a state when all transfers
timeout. This causes both issues with fetching of EDID and with
updating of the bridge's firmware. While we are debugging the issue,
switch corresponding I2C bus to use i2c-gpio driver. While using
i2c-gpio no communication issues are observed.

This patch is asusmed to be a temporary fix, so it is implemented in a
non-intrusive manner to simply reverting it later.

Fixes: 616eda24edd4 ("arm64: dts: qcom: qrb2210-rb1: Set up HDMI")
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Caleb Connolly <caleb.connolly@linaro.org>
Link: https://lore.kernel.org/r/20240605-rb12-i2c2g-pio-v2-1-946f5d6b6948@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/qrb2210-rb1.dts

index bb5191422660b82ef243fb111fb9d2515247a80e..8c27d52139a1b46402373fbb77962187b110a39e 100644 (file)
                };
        };
 
+       i2c2_gpio: i2c {
+               compatible = "i2c-gpio";
+
+               sda-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;
+               scl-gpios = <&tlmm 7 GPIO_ACTIVE_HIGH>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               status = "disabled";
+       };
+
        leds {
                compatible = "gpio-leds";
 
        status = "okay";
 };
 
-&i2c2 {
+&i2c2_gpio {
        clock-frequency = <400000>;
        status = "okay";