Skip to content

Commit 7990be4

Browse files
Prashant Malanigregkh
authored andcommitted
usb: typec: mux: intel: Handle alt mode HPD_HIGH
According to the PMC Type C Subsystem (TCSS) Mux programming guide rev 0.6, when a device is transitioning to DP Alternate Mode state, if the HPD_STATE (bit 7) field in the status update command VDO is set to HPD_HIGH, the HPD_HIGH field in the Alternate Mode request “mode_data” field (bit 14) should also be set. Ensure the bit is correctly handled while issuing the Alternate Mode request. Signed-off-by: Prashant Malani <[email protected]> Fixes: 6701adf ("usb: typec: driver for Intel PMC mux control") Acked-by: Heikki Krogerus <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 2bef9ae commit 7990be4

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

drivers/usb/typec/mux/intel_pmc_mux.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,10 @@ pmc_usb_mux_dp(struct pmc_usb_port *port, struct typec_mux_state *state)
157157
req.mode_data |= (state->mode - TYPEC_STATE_MODAL) <<
158158
PMC_USB_ALTMODE_DP_MODE_SHIFT;
159159

160+
if (data->status & DP_STATUS_HPD_STATE)
161+
req.mode_data |= PMC_USB_DP_HPD_LVL <<
162+
PMC_USB_ALTMODE_DP_MODE_SHIFT;
163+
160164
return pmc_usb_command(port, (void *)&req, sizeof(req));
161165
}
162166

0 commit comments

Comments
 (0)