stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1] usb: typec: tcpm: Update PD of Type-C port upon pd_set
@ 2024-03-11 17:23 Kyle Tso
  2024-03-12 10:25 ` Heikki Krogerus
  0 siblings, 1 reply; 2+ messages in thread
From: Kyle Tso @ 2024-03-11 17:23 UTC (permalink / raw)
  To: linux, heikki.krogerus, gregkh
  Cc: badhri, linux-kernel, linux-usb, Kyle Tso, stable

The PD of Type-C port needs to be updated in pd_set. Unlink the Type-C
port device to the old PD before linking it to a new one.

Fixes: cd099cde4ed2 ("usb: typec: tcpm: Support multiple capabilities")
Cc: stable@vger.kernel.org
Signed-off-by: Kyle Tso <kyletso@google.com>
---
 drivers/usb/typec/tcpm/tcpm.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
index 3d505614bff1..896f594b9328 100644
--- a/drivers/usb/typec/tcpm/tcpm.c
+++ b/drivers/usb/typec/tcpm/tcpm.c
@@ -6907,7 +6907,9 @@ static int tcpm_pd_set(struct typec_port *p, struct usb_power_delivery *pd)
 
 	port->port_source_caps = data->source_cap;
 	port->port_sink_caps = data->sink_cap;
+	typec_port_set_usb_power_delivery(p, NULL);
 	port->selected_pd = pd;
+	typec_port_set_usb_power_delivery(p, port->selected_pd);
 unlock:
 	mutex_unlock(&port->lock);
 	return ret;
-- 
2.44.0.278.ge034bb2e1d-goog


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v1] usb: typec: tcpm: Update PD of Type-C port upon pd_set
  2024-03-11 17:23 [PATCH v1] usb: typec: tcpm: Update PD of Type-C port upon pd_set Kyle Tso
@ 2024-03-12 10:25 ` Heikki Krogerus
  0 siblings, 0 replies; 2+ messages in thread
From: Heikki Krogerus @ 2024-03-12 10:25 UTC (permalink / raw)
  To: Kyle Tso; +Cc: linux, gregkh, badhri, linux-kernel, linux-usb, stable

On Tue, Mar 12, 2024 at 01:23:06AM +0800, Kyle Tso wrote:
> The PD of Type-C port needs to be updated in pd_set. Unlink the Type-C
> port device to the old PD before linking it to a new one.
> 
> Fixes: cd099cde4ed2 ("usb: typec: tcpm: Support multiple capabilities")
> Cc: stable@vger.kernel.org
> Signed-off-by: Kyle Tso <kyletso@google.com>

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

> ---
>  drivers/usb/typec/tcpm/tcpm.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
> index 3d505614bff1..896f594b9328 100644
> --- a/drivers/usb/typec/tcpm/tcpm.c
> +++ b/drivers/usb/typec/tcpm/tcpm.c
> @@ -6907,7 +6907,9 @@ static int tcpm_pd_set(struct typec_port *p, struct usb_power_delivery *pd)
>  
>  	port->port_source_caps = data->source_cap;
>  	port->port_sink_caps = data->sink_cap;
> +	typec_port_set_usb_power_delivery(p, NULL);
>  	port->selected_pd = pd;
> +	typec_port_set_usb_power_delivery(p, port->selected_pd);
>  unlock:
>  	mutex_unlock(&port->lock);
>  	return ret;
> -- 
> 2.44.0.278.ge034bb2e1d-goog

-- 
heikki

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-03-12 10:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-03-11 17:23 [PATCH v1] usb: typec: tcpm: Update PD of Type-C port upon pd_set Kyle Tso
2024-03-12 10:25 ` Heikki Krogerus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).