1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 3 #ifndef __DRIVERS_INTEL_PMC_MUX_CONN_H__ 4 #define __DRIVERS_INTEL_PMC_MUX_CONN_H__ 5 6 #include <boot/coreboot_tables.h> 7 8 struct drivers_intel_pmc_mux_conn_config { 9 /* A pointer to the SoC's USB-2 device */ 10 DEVTREE_CONST struct device *usb2_port; 11 /* A pointer to the SoC's USB-3 device */ 12 DEVTREE_CONST struct device *usb3_port; 13 /* Orientation of the sideband signals (SBU) */ 14 enum type_c_orientation sbu_orientation; 15 /* Orientation of the High Speed lines */ 16 enum type_c_orientation hsl_orientation; 17 }; 18 19 /* 20 * Method verifies input "conn" device. 21 * Returns 'true' if device passed is Intel PMC MUX Conn device else returns 'false'. 22 * Method also outputs the usb2 and usb3 port numbers associated with the 'conn' device 23 */ 24 bool intel_pmc_mux_conn_get_ports(const struct device *conn, unsigned int *usb2_port, 25 unsigned int *usb3_port); 26 27 #endif /* __DRIVERS_INTEL_PMC_MUX_CONN_H__ */ 28