diff mbox series

[v1] usb: typec: altmodes/displayport: send configure message on sop'

Message ID 20240223002302.3937235-2-rdbabiera@google.com (mailing list archive)
State Accepted
Commit 5424a44276ee60d39335ba037c7e142fad4a259a
Headers show
Series [v1] usb: typec: altmodes/displayport: send configure message on sop' | expand

Commit Message

RD Babiera Feb. 23, 2024, 12:23 a.m. UTC
When the port is setting the pin configuration when no configuration is
chosen, the DisplayPort driver will not send Configure to the cable plug
if it's available. Add transition to DP_STATE_CONFIGURE_PRIME.

Fixes: 71ba4fe56656 ("usb: typec: altmodes/displayport: add SOP' support")
Signed-off-by: RD Babiera <rdbabiera@google.com>
---
 drivers/usb/typec/altmodes/displayport.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)


base-commit: 3bf0514dc6f36f81ee11b1becd977cb87b4c90c6

Comments

Heikki Krogerus Feb. 26, 2024, 8:17 a.m. UTC | #1
On Fri, Feb 23, 2024 at 12:23:03AM +0000, RD Babiera wrote:
> When the port is setting the pin configuration when no configuration is
> chosen, the DisplayPort driver will not send Configure to the cable plug
> if it's available. Add transition to DP_STATE_CONFIGURE_PRIME.
> 
> Fixes: 71ba4fe56656 ("usb: typec: altmodes/displayport: add SOP' support")
> Signed-off-by: RD Babiera <rdbabiera@google.com>

Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> ---
>  drivers/usb/typec/altmodes/displayport.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmodes/displayport.c
> index 5a80776c7255..867f9796f8a8 100644
> --- a/drivers/usb/typec/altmodes/displayport.c
> +++ b/drivers/usb/typec/altmodes/displayport.c
> @@ -164,7 +164,8 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
>  	} else if (!(con & DP_CONF_CURRENTLY(dp->data.conf))) {
>  		ret = dp_altmode_configure(dp, con);
>  		if (!ret) {
> -			dp->state = DP_STATE_CONFIGURE;
> +			dp->state = dp->plug_prime ? DP_STATE_CONFIGURE_PRIME :
> +						     DP_STATE_CONFIGURE;
>  			if (dp->hpd != hpd) {
>  				dp->hpd = hpd;
>  				dp->pending_hpd = true;
> 
> base-commit: 3bf0514dc6f36f81ee11b1becd977cb87b4c90c6
> -- 
> 2.44.0.rc0.258.g7320e95886-goog
diff mbox series

Patch

diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmodes/displayport.c
index 5a80776c7255..867f9796f8a8 100644
--- a/drivers/usb/typec/altmodes/displayport.c
+++ b/drivers/usb/typec/altmodes/displayport.c
@@ -164,7 +164,8 @@  static int dp_altmode_status_update(struct dp_altmode *dp)
 	} else if (!(con & DP_CONF_CURRENTLY(dp->data.conf))) {
 		ret = dp_altmode_configure(dp, con);
 		if (!ret) {
-			dp->state = DP_STATE_CONFIGURE;
+			dp->state = dp->plug_prime ? DP_STATE_CONFIGURE_PRIME :
+						     DP_STATE_CONFIGURE;
 			if (dp->hpd != hpd) {
 				dp->hpd = hpd;
 				dp->pending_hpd = true;