]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
ARM: dts: renesas: r9a06g032-rzn1d400-db: Describe I2C bus
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Fri, 28 Mar 2025 15:31:35 +0000 (16:31 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 14 Apr 2025 08:17:54 +0000 (10:17 +0200)
Schematics mention a 24cs64 on the bus, but I definitely have only a
24c64. So, it is only mentioned as a comment.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20250328153134.2881-9-wsa+renesas@sang-engineering.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
arch/arm/boot/dts/renesas/r9a06g032-rzn1d400-db.dts

index 31cdca3e623cde58da4a64292ec4fdb55e484580..d50a1d91e9684e44014dfbe1f0407a115fc39837 100644 (file)
        };
 };
 
+&i2c2 {
+       pinctrl-0 = <&pins_i2c2>;
+       pinctrl-names = "default";
+       status = "okay";
+       clock-frequency = <400000>;
+
+       pca9698: gpio@20 {
+               compatible = "nxp,pca9698";
+               reg = <0x20>;
+               gpio-controller;
+               #gpio-cells = <2>;
+
+               /* configure the analog switch to let i2c2 access the eeprom */
+               max4662-in1-hog {
+                       gpio-hog;
+                       gpios = <16 0>;
+                       output-high;
+               };
+               max4662-in2-hog {
+                       gpio-hog;
+                       gpios = <17 0>;
+                       output-low;
+               };
+               max4662-in3-hog {
+                       gpio-hog;
+                       gpios = <18 0>;
+                       output-low;
+               };
+       };
+
+       /* Some revisions may have a 24cs64 at address 0x58 */
+       eeprom@50 {
+               compatible = "atmel,24c64";
+               pagesize = <32>;
+               reg = <0x50>;
+       };
+};
+
 &mii_conv4 {
        renesas,miic-input = <MIIC_SWITCH_PORTB>;
        status = "okay";
                bias-disable;
        };
 
+       pins_i2c2: pins_i2c2 {
+               pinmux = <RZN1_PINMUX(115, RZN1_FUNC_I2C)>,
+                        <RZN1_PINMUX(116, RZN1_FUNC_I2C)>;
+               drive-strength = <12>;
+       };
+
        pins_mdio1: pins_mdio1 {
                pinmux = <RZN1_PINMUX(152, RZN1_FUNC_MDIO1_SWITCH)>,
                         <RZN1_PINMUX(153, RZN1_FUNC_MDIO1_SWITCH)>;