#ifndef USBC_MUX_H_
#define USBC_MUX_H_

#define USBC_MUX_ADDR		(0xA8u) // For use with UNSHIFTED address type, 0b1010.100W, where W is the read/write bit
#define USBC_MUX_DISABLE	(0x00u) // Config = [000], power down
#define USBC_MUX_FLIP_CC1	(0x02u) // Config = [010], DP 4 lanes, TX/RX2 (pins 30-34) go to DPML0 and 1, TX/RX1 (pins 24-28) go to DPML2 and 3, aux unflipped
#define USBC_MUX_FLIP_CC2	(0x03u) // Config = [011], DP 4 lanes, TX/RX1 (pins 24-28) go to DPML0 and 1, TX/RX2 (pins 30-34) go to DPML2 and 3, aux flipped

void usbc_mux_flip(I2C_Handle* hi2c, USB_Flip_State_t flip);

#endif /* USBC_MUX_H_ */
