1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 #ifndef __DRIVERS_INTEL_PMC_MUX_CONN_H__
4 #define __DRIVERS_INTEL_PMC_MUX_CONN_H__
6 #include <boot/coreboot_tables.h>
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
;
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
24 bool intel_pmc_mux_conn_get_ports(const struct device
*conn
, unsigned int *usb2_port
,
25 unsigned int *usb3_port
);
27 #endif /* __DRIVERS_INTEL_PMC_MUX_CONN_H__ */