summaryrefslogtreecommitdiff
path: root/zephyr/shim/include/usbc/tcpci_usb_mux.h
diff options
context:
space:
mode:
Diffstat (limited to 'zephyr/shim/include/usbc/tcpci_usb_mux.h')
-rw-r--r--zephyr/shim/include/usbc/tcpci_usb_mux.h49
1 files changed, 22 insertions, 27 deletions
diff --git a/zephyr/shim/include/usbc/tcpci_usb_mux.h b/zephyr/shim/include/usbc/tcpci_usb_mux.h
index 9fa29c7c85..1a5dd38241 100644
--- a/zephyr/shim/include/usbc/tcpci_usb_mux.h
+++ b/zephyr/shim/include/usbc/tcpci_usb_mux.h
@@ -1,4 +1,4 @@
-/* Copyright 2022 The Chromium OS Authors. All rights reserved.
+/* Copyright 2022 The ChromiumOS Authors
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
@@ -10,41 +10,36 @@
#include "tcpm/ps8xxx_public.h"
#include "tcpm/tcpci.h"
-#define TCPCI_TCPM_USB_MUX_COMPAT cros_ec_usbc_mux_tcpci
-#define PS8XXX_USB_MUX_COMPAT parade_usbc_mux_ps8xxx
+#define TCPCI_TCPM_USB_MUX_COMPAT cros_ec_usbc_mux_tcpci
+#define PS8XXX_USB_MUX_COMPAT parade_usbc_mux_ps8xxx
/**
* Add I2C configuration and USB_MUX_FLAG_NOT_TCPC to enforce it when
* mux_read()/mux_write() functions are used.
*/
-#define USB_MUX_CONFIG_TCPCI_TCPM_WITH_I2C(mux_id, port_id, idx) \
- { \
- USB_MUX_COMMON_FIELDS_WITH_FLAGS(mux_id, port_id, idx, \
- USB_MUX_FLAG_NOT_TCPC, \
- USB_MUX_FLAG_NOT_TCPC),\
- .driver = &tcpci_tcpm_usb_mux_driver, \
- .hpd_update = USB_MUX_CALLBACK_OR_NULL(mux_id, \
- hpd_update), \
- .i2c_port = I2C_PORT(DT_PHANDLE(mux_id, port)), \
- .i2c_addr_flags = DT_PROP(mux_id, i2c_addr_flags), \
+#define USB_MUX_CONFIG_TCPCI_TCPM_WITH_I2C(mux_id) \
+ { \
+ USB_MUX_COMMON_FIELDS_WITH_FLAGS( \
+ mux_id, USB_MUX_FLAG_NOT_TCPC, USB_MUX_FLAG_NOT_TCPC), \
+ .driver = &tcpci_tcpm_usb_mux_driver, \
+ .hpd_update = \
+ USB_MUX_CALLBACK_OR_NULL(mux_id, hpd_update), \
+ .i2c_port = I2C_PORT_BY_DEV(mux_id), \
+ .i2c_addr_flags = DT_REG_ADDR(mux_id), \
}
/** Use I2C configuration from TCPC */
-#define USB_MUX_CONFIG_TCPCI_TCPM_WO_I2C(mux_id, port_id, idx) \
- { \
- USB_MUX_COMMON_FIELDS(mux_id, port_id, idx), \
- .driver = &tcpci_tcpm_usb_mux_driver, \
- .hpd_update = USB_MUX_CALLBACK_OR_NULL(mux_id, \
- hpd_update), \
+#define USB_MUX_CONFIG_TCPCI_TCPM_WO_I2C(mux_id) \
+ { \
+ USB_MUX_COMMON_FIELDS(mux_id), \
+ .driver = &tcpci_tcpm_usb_mux_driver, \
+ .hpd_update = \
+ USB_MUX_CALLBACK_OR_NULL(mux_id, hpd_update), \
}
-/** This macro will fail if only port or i2c_addr_flags property is present */
-#define USB_MUX_CONFIG_TCPCI_TCPM(mux_id, port_id, idx) \
- COND_CODE_1(UTIL_OR(DT_NODE_HAS_PROP(mux_id, port), \
- DT_NODE_HAS_PROP(mux_id, i2c_addr_flags)), \
- (USB_MUX_CONFIG_TCPCI_TCPM_WITH_I2C(mux_id, port_id,\
- idx)), \
- (USB_MUX_CONFIG_TCPCI_TCPM_WO_I2C(mux_id, port_id, \
- idx)))
+#define USB_MUX_CONFIG_TCPCI_TCPM(mux_id) \
+ COND_CODE_1(DT_NODE_HAS_PROP(mux_id, reg), \
+ (USB_MUX_CONFIG_TCPCI_TCPM_WITH_I2C(mux_id)), \
+ (USB_MUX_CONFIG_TCPCI_TCPM_WO_I2C(mux_id)))
#endif /* __ZEPHYR_SHIM_TCPCI_USB_MUX_H */