Skip to content

Commit 7c6bbdf

Browse files
uhpatelgregkh
authored andcommitted
usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in Alternate modes
According to the PMC Type C Subsystem (TCSS) Mux programming guide rev 0.7, bits 4 and 5 are reserved in Alternate modes. SBU Orientation and HSL Orientation needs to be configured only during initial cable detection in USB connect flow based on device property of "sbu-orientation" and "hsl-orientation". Configuring these reserved bits in the Alternate modes may result in delay in display link training or some unexpected behaviour. So do not configure them while issuing Alternate Mode requests. Fixes: ff4a30d ("usb: typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation") Signed-off-by: Utkarsh Patel <[email protected]> Cc: stable <[email protected]> Signed-off-by: Heikki Krogerus <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 294955f commit 7c6bbdf

File tree

1 file changed

+0
-8
lines changed

1 file changed

+0
-8
lines changed

drivers/usb/typec/mux/intel_pmc_mux.c

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,6 @@ enum {
6161

6262
#define PMC_USB_ALTMODE_ORI_SHIFT 1
6363
#define PMC_USB_ALTMODE_UFP_SHIFT 3
64-
#define PMC_USB_ALTMODE_ORI_AUX_SHIFT 4
65-
#define PMC_USB_ALTMODE_ORI_HSL_SHIFT 5
6664

6765
/* DP specific Mode Data bits */
6866
#define PMC_USB_ALTMODE_DP_MODE_SHIFT 8
@@ -178,9 +176,6 @@ pmc_usb_mux_dp(struct pmc_usb_port *port, struct typec_mux_state *state)
178176
req.mode_data = (port->orientation - 1) << PMC_USB_ALTMODE_ORI_SHIFT;
179177
req.mode_data |= (port->role - 1) << PMC_USB_ALTMODE_UFP_SHIFT;
180178

181-
req.mode_data |= sbu_orientation(port) << PMC_USB_ALTMODE_ORI_AUX_SHIFT;
182-
req.mode_data |= hsl_orientation(port) << PMC_USB_ALTMODE_ORI_HSL_SHIFT;
183-
184179
req.mode_data |= (state->mode - TYPEC_STATE_MODAL) <<
185180
PMC_USB_ALTMODE_DP_MODE_SHIFT;
186181

@@ -208,9 +203,6 @@ pmc_usb_mux_tbt(struct pmc_usb_port *port, struct typec_mux_state *state)
208203
req.mode_data = (port->orientation - 1) << PMC_USB_ALTMODE_ORI_SHIFT;
209204
req.mode_data |= (port->role - 1) << PMC_USB_ALTMODE_UFP_SHIFT;
210205

211-
req.mode_data |= sbu_orientation(port) << PMC_USB_ALTMODE_ORI_AUX_SHIFT;
212-
req.mode_data |= hsl_orientation(port) << PMC_USB_ALTMODE_ORI_HSL_SHIFT;
213-
214206
if (TBT_ADAPTER(data->device_mode) == TBT_ADAPTER_TBT3)
215207
req.mode_data |= PMC_USB_ALTMODE_TBT_TYPE;
216208

0 commit comments

Comments
 (0)