summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyrrh Periwinkle <myrrhperiwinkle@qtmlabs.xyz>2025-07-21 09:32:51 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-07-21 17:33:23 +0300
commit7616f006db07017ef5d4ae410fca99279aaca7aa (patch)
tree0c67d65cf1eadd6235c38613b28e0f30465891a4
parentaf833e7f7db3cf4c82f063668e1b52297a30ec18 (diff)
downloadlinux-7616f006db07017ef5d4ae410fca99279aaca7aa.tar.xz
usb: typec: ucsi: Update power_supply on power role change
The current power direction of an USB-C port also influences the power_supply's online status, so a power role change should also update the power_supply. Fixes an issue on some systems where plugging in a normal USB device in for the first time after a reboot will cause upower to erroneously consider the system to be connected to AC power. Cc: stable <stable@kernel.org> Fixes: 0e6371fbfba3 ("usb: typec: ucsi: Report power supply changes") Signed-off-by: Myrrh Periwinkle <myrrhperiwinkle@qtmlabs.xyz> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Link: https://lore.kernel.org/r/20250721-fix-ucsi-pwr-dir-notify-v1-1-e53d5340cb38@qtmlabs.xyz Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/typec/ucsi/ucsi.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/typec/ucsi/ucsi.c b/drivers/usb/typec/ucsi/ucsi.c
index e913d099f934..5739ea2abdd1 100644
--- a/drivers/usb/typec/ucsi/ucsi.c
+++ b/drivers/usb/typec/ucsi/ucsi.c
@@ -1245,6 +1245,7 @@ static void ucsi_handle_connector_change(struct work_struct *work)
if (change & UCSI_CONSTAT_POWER_DIR_CHANGE) {
typec_set_pwr_role(con->port, role);
+ ucsi_port_psy_changed(con);
/* Complete pending power role swap */
if (!completion_done(&con->complete))