Set usb_pd to 0 when power operation mode leaving power delivery. That can avoid user-sepace read "yes" form the supports_usb_power_delivery_show() attribute but power operation mode already change form power delivery to others mode. Signed-off-by: Steven Syu <stevensyu7@xxxxxxxxx> --- drivers/usb/typec/class.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c index aeef453..2043e07 100644 --- a/drivers/usb/typec/class.c +++ b/drivers/usb/typec/class.c @@ -1718,6 +1718,8 @@ void typec_set_pwr_opmode(struct typec_port *port, partner->usb_pd = 1; sysfs_notify(&partner_dev->kobj, NULL, "supports_usb_power_delivery"); + } else if (opmode != TYPEC_PWR_MODE_PD && partner->usb_pd) { + partner->usb_pd = 0; } put_device(partner_dev); } -- 2.7.4