diff options
-rw-r--r-- | zephyr/projects/corsola/src/kingler/usbc_config.c | 2 | ||||
-rw-r--r-- | zephyr/projects/corsola/src/usbc_config.c | 12 | ||||
-rw-r--r-- | zephyr/projects/corsola/usbc_kingler.dts | 10 | ||||
-rw-r--r-- | zephyr/projects/corsola/usbc_krabby.dts | 10 | ||||
-rw-r--r-- | zephyr/projects/corsola/usbc_magikarp.dts | 10 | ||||
-rw-r--r-- | zephyr/projects/corsola/usbc_tentacruel.dts | 10 |
6 files changed, 40 insertions, 14 deletions
diff --git a/zephyr/projects/corsola/src/kingler/usbc_config.c b/zephyr/projects/corsola/src/kingler/usbc_config.c index 79bb2680fa..8c0ca86454 100644 --- a/zephyr/projects/corsola/src/kingler/usbc_config.c +++ b/zephyr/projects/corsola/src/kingler/usbc_config.c @@ -49,7 +49,7 @@ void board_usb_mux_init(void) { if (corsola_get_db_type() == CORSOLA_DB_TYPEC) { /* Disable DCI function. This is not needed for ARM. */ - ps8743_field_update(&usb_muxes[1], PS8743_REG_DCI_CONFIG_2, + ps8743_field_update(usb_muxes[1].mux, PS8743_REG_DCI_CONFIG_2, PS8743_AUTO_DCI_MODE_MASK, PS8743_AUTO_DCI_MODE_FORCE_USB); } diff --git a/zephyr/projects/corsola/src/usbc_config.c b/zephyr/projects/corsola/src/usbc_config.c index 851beb0d08..3b8bc07917 100644 --- a/zephyr/projects/corsola/src/usbc_config.c +++ b/zephyr/projects/corsola/src/usbc_config.c @@ -255,6 +255,11 @@ static void baseboard_x_ec_gpio2_init(void) static struct ppc_drv virtual_ppc_drv = { 0 }; static struct tcpm_drv virtual_tcpc_drv = { 0 }; static struct bc12_drv virtual_bc12_drv = { 0 }; + static const struct usb_mux virtual_usb_mux = { + .usb_port = USBC_PORT_C1, + .driver = &virtual_usb_mux_driver, + .hpd_update = &virtual_hpd_update, + }; /* no sub board */ if (corsola_get_db_type() == CORSOLA_DB_NONE) { @@ -286,11 +291,8 @@ static void baseboard_x_ec_gpio2_init(void) bc12_ports[USBC_PORT_C1] = (const struct bc12_config){ .drv = &virtual_bc12_drv }; /* Use virtual mux to notify AP the mainlink direction. */ - usb_muxes[USBC_PORT_C1] = (struct usb_mux){ - .usb_port = USBC_PORT_C1, - .driver = &virtual_usb_mux_driver, - .hpd_update = &virtual_hpd_update, - }; + usb_muxes[USBC_PORT_C1].mux = &virtual_usb_mux; + usb_muxes[USBC_PORT_C1].next = NULL; /* * If a HDMI DB is attached, C1 port tasks will be exiting in that diff --git a/zephyr/projects/corsola/usbc_kingler.dts b/zephyr/projects/corsola/usbc_kingler.dts index 15c3f8bbc9..eb27d7d272 100644 --- a/zephyr/projects/corsola/usbc_kingler.dts +++ b/zephyr/projects/corsola/usbc_kingler.dts @@ -14,8 +14,11 @@ bc12 = <&bc12_port0>; tcpc = <&tcpc_port0>; ppc = <&ppc_port0>; - usb-muxes = <&anx7447_mux_0 &virtual_mux_0>; chg = <&charger>; + usb-mux-chain-0 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&anx7447_mux_0 &virtual_mux_0>; + }; }; port0-muxes { @@ -33,7 +36,10 @@ bc12 = <&bc12_port1>; tcpc = <&tcpc_port1>; ppc = <&ppc_port1>; - usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + usb-mux-chain-0 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + }; }; port1-muxes { diff --git a/zephyr/projects/corsola/usbc_krabby.dts b/zephyr/projects/corsola/usbc_krabby.dts index 8c1a51c5d3..8437e8e236 100644 --- a/zephyr/projects/corsola/usbc_krabby.dts +++ b/zephyr/projects/corsola/usbc_krabby.dts @@ -15,7 +15,10 @@ ppc = <&bc12_ppc_port0>; tcpc = <&usbpd0>; chg = <&charger>; - usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + usb-mux-chain-0 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + }; }; port0-muxes { virtual_mux_0: virtual-mux-0 { @@ -29,7 +32,10 @@ bc12 = <&bc12_port1>; ppc = <&ppc_port1>; tcpc = <&usbpd1>; - usb-muxes = <&tusb1064_mux_1 &virtual_mux_1>; + usb-mux-chain-1 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&tusb1064_mux_1 &virtual_mux_1>; + }; }; port1-muxes { virtual_mux_1: virtual-mux-1 { diff --git a/zephyr/projects/corsola/usbc_magikarp.dts b/zephyr/projects/corsola/usbc_magikarp.dts index f0118b57d2..d3069beca0 100644 --- a/zephyr/projects/corsola/usbc_magikarp.dts +++ b/zephyr/projects/corsola/usbc_magikarp.dts @@ -15,7 +15,10 @@ ppc = <&bc12_ppc_port0>; tcpc = <&usbpd0>; chg = <&charger>; - usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + usb-mux-chain-0 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + }; }; port0-muxes { virtual_mux_0: virtual-mux-0 { @@ -29,7 +32,10 @@ bc12 = <&bc12_port1>; ppc = <&ppc_port1>; tcpc = <&usbpd1>; - usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + usb-mux-chain-1 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + }; }; port1-muxes { virtual_mux_1: virtual-mux-1 { diff --git a/zephyr/projects/corsola/usbc_tentacruel.dts b/zephyr/projects/corsola/usbc_tentacruel.dts index f0118b57d2..d3069beca0 100644 --- a/zephyr/projects/corsola/usbc_tentacruel.dts +++ b/zephyr/projects/corsola/usbc_tentacruel.dts @@ -15,7 +15,10 @@ ppc = <&bc12_ppc_port0>; tcpc = <&usbpd0>; chg = <&charger>; - usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + usb-mux-chain-0 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&it5205_mux_0 &virtual_mux_0>; + }; }; port0-muxes { virtual_mux_0: virtual-mux-0 { @@ -29,7 +32,10 @@ bc12 = <&bc12_port1>; ppc = <&ppc_port1>; tcpc = <&usbpd1>; - usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + usb-mux-chain-1 { + compatible = "cros-ec,usb-mux-chain"; + usb-muxes = <&ps8743_mux_1 &virtual_mux_1>; + }; }; port1-muxes { virtual_mux_1: virtual-mux-1 { |