/* Copyright 2022 The Chromium OS Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include / { named-i2c-ports { compatible = "named-i2c-ports"; i2c_sensor: sensor { i2c-port = <&i2c0_0>; enum-names = "I2C_PORT_SENSOR"; }; tcpc0_2: tcpc0_2 { i2c-port = <&i2c1_0>; enum-names = "I2C_PORT_USB_C0_C2_TCPC"; }; tcpc1: tcpc1 { i2c-port = <&i2c4_1>; enum-names = "I2C_PORT_USB_C1_TCPC"; dynamic-speed; }; c0_c2_bc12: c0_c2_bc12 { i2c-port = <&i2c2_0>; enum-names = "I2C_PORT_USB_C0_C2_PPC", "I2C_PORT_USB_C0_C2_BC12"; }; c1_bc12: c1_bc12 { i2c-port = <&i2c6_1>; enum-names = "I2C_PORT_USB_C1_PPC", "I2C_PORT_USB_C1_BC12"; dynamic-speed; }; retimer0_2: retimer0_2 { i2c-port = <&i2c3_0>; enum-names = "I2C_PORT_USB_C0_C2_MUX"; }; battery { i2c-port = <&i2c5_0>; enum-names = "I2C_PORT_BATTERY"; }; i2c_charger: charger { i2c-port = <&i2c7_0>; enum-names = "I2C_PORT_CHARGER", "I2C_PORT_EEPROM", "I2C_PORT_MP2964"; }; }; }; &i2c0_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>; pinctrl-names = "default"; }; &i2c_ctrl0 { status = "okay"; }; &i2c1_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c1_0_sda_scl_gp87_90>; pinctrl-names = "default"; tcpc_port0: nct38xx@70 { compatible = "nuvoton,nct38xx"; reg = <0x70>; gpio-dev = <&nct3808_0_P1>; tcpc-flags = <( TCPC_FLAGS_TCPCI_REV2_0 | TCPC_FLAGS_NO_DEBUG_ACC_CONTROL)>; }; nct3808_0_P1: nct3808_0_P1@70 { #address-cells = <1>; #size-cells = <0>; compatible = "nuvoton,nct38xx-gpio"; reg = <0x70>; label = "NCT3808_0_P1"; ioex_port1: gpio@0 { compatible = "nuvoton,nct38xx-gpio-port"; reg = <0x0>; label = "NCT3808_0_P1_GPIO0"; gpio-controller; #gpio-cells = <2>; ngpios = <8>; pin_mask = <0xdc>; pinmux_mask = <0xff>; }; }; tcpc_port2: nct38xx@74 { compatible = "nuvoton,nct38xx"; reg = <0x74>; gpio-dev = <&nct3808_0_P2>; tcpc-flags = <(TCPC_FLAGS_TCPCI_REV2_0)>; }; nct3808_0_P2: nct3808_0_P2@74 { #address-cells = <1>; #size-cells = <0>; compatible = "nuvoton,nct38xx-gpio"; reg = <0x74>; label = "NCT3808_0_P2"; ioex_port2: gpio@0 { compatible = "nuvoton,nct38xx-gpio-port"; reg = <0x0>; label = "NCT3808_0_P2_GPIO0"; gpio-controller; #gpio-cells = <2>; ngpios = <8>; pin_mask = <0xdc>; pinmux_mask = <0xff>; }; }; nct3808_alert_1 { compatible = "nuvoton,nct38xx-gpio-alert"; irq-gpios = <&gpioe 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; nct38xx-dev = <&nct3808_0_P1 &nct3808_0_P2>; label = "NCT3808_ALERT_1"; }; }; &i2c_ctrl1 { status = "okay"; }; &i2c2_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c2_0_sda_scl_gp91_92>; pinctrl-names = "default"; bc12_port0: pi3usb9201@5f { compatible = "pericom,pi3usb9201"; status = "okay"; reg = <0x5f>; irq = <&int_usb_c0_bc12>; }; bc12_port2: pi3usb9201@5d { compatible = "pericom,pi3usb9201"; status = "okay"; reg = <0x5d>; irq = <&int_usb_c2_bc12>; }; }; &i2c_ctrl2 { status = "okay"; }; &i2c3_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c3_0_sda_scl_gpd0_d1>; pinctrl-names = "default"; usb_c0_bb_retimer: jhl8040r-c0@56 { compatible = "intel,jhl8040r"; reg = <0x56>; int-pin = <&usb_c0_rt_int_odl>; reset-pin = <&usb_c0_rt_rst_odl>; }; usb_c2_bb_retimer: jhl8040r-c2@57 { compatible = "intel,jhl8040r"; reg = <0x57>; int-pin = <&usb_c2_rt_int_odl>; reset-pin = <&usb_c2_rt_rst_odl>; }; }; &i2c_ctrl3 { status = "okay"; }; &i2c4_1 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c4_1_sda_scl_gpf2_f3>; pinctrl-names = "default"; tcpc_port1: ps8xxx@b { compatible = "parade,ps8xxx"; reg = <0xb>; tcpc-flags = <( TCPC_FLAGS_TCPCI_REV2_0 | TCPC_FLAGS_TCPCI_REV2_0_NO_VSAFE0V | TCPC_FLAGS_CONTROL_VCONN | TCPC_FLAGS_CONTROL_FRS)>; }; }; &i2c_ctrl4 { status = "okay"; }; &i2c5_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c5_0_sda_scl_gp33_36>; pinctrl-names = "default"; }; &i2c_ctrl5 { status = "okay"; }; &i2c6_1 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c6_1_sda_scl_gpe3_e4>; pinctrl-names = "default"; bc12_port1: pi3usb9201@5f { compatible = "pericom,pi3usb9201"; status = "okay"; reg = <0x5f>; irq = <&int_usb_c1_bc12>; }; }; &i2c_ctrl6 { status = "okay"; }; &i2c7_0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c7_0_sda_scl_gpb2_b3>; pinctrl-names = "default"; pmic_mp2964: pmic_mp2964@20 { compatible = "mps,mp2964"; reg = <0x20>; label = "I2C_ADDR_MP2964_FLAGS"; }; charger: bq25710@9 { compatible = "ti,bq25710"; status = "okay"; reg = <0x9>; }; cbi_eeprom: eeprom@50 { compatible = "atmel,at24"; reg = <0x50>; size = <2048>; pagesize = <16>; address-width = <8>; timeout = <5>; }; }; &i2c_ctrl7 { status = "okay"; };