public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] usb: typec: altmodes/displayport: reorder dp_altmode_configured()
@ 2021-10-06  4:32 lindsey.stanpoor
  2021-10-08  8:09 ` Heikki Krogerus
  2021-10-08  8:52 ` Hans de Goede
  0 siblings, 2 replies; 3+ messages in thread
From: lindsey.stanpoor @ 2021-10-06  4:32 UTC (permalink / raw)
  To: intel-gfx, linux-usb; +Cc: hdegoede, heikki.krogerus, gregkh, cnemo

From: Cameron Nemo <cnemo@tutanota.com>

A recent commit [1] introduced an unintended behavioral change by
reordering certain function calls. The sysfs_notify call for
pin_assignment should only be invoked when the dp_altmode_notify call
returns 0, and in the dp->data.conf == 0 case.

[1] https://lore.kernel.org/r/20210817215201.795062-8-hdegoede@redhat.com

Signed-off-by: Cameron Nemo <cnemo@tutanota.com>
---
 drivers/usb/typec/altmodes/displayport.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmodes/displayport.c
index c1d8c23baa39..a15ae78066e3 100644
--- a/drivers/usb/typec/altmodes/displayport.c
+++ b/drivers/usb/typec/altmodes/displayport.c
@@ -154,10 +154,17 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
 
 static int dp_altmode_configured(struct dp_altmode *dp)
 {
+	int ret;
+
 	sysfs_notify(&dp->alt->dev.kobj, "displayport", "configuration");
+
+	ret = dp_altmode_notify(dp);
+	if (ret || !dp->data.conf)
+		return ret;
+
 	sysfs_notify(&dp->alt->dev.kobj, "displayport", "pin_assignment");
 
-	return dp_altmode_notify(dp);
+	return 0;
 }
 
 static int dp_altmode_configure_vdm(struct dp_altmode *dp, u32 conf)
-- 
2.33.0


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

end of thread, other threads:[~2021-10-08  8:52 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-06  4:32 [PATCH 1/1] usb: typec: altmodes/displayport: reorder dp_altmode_configured() lindsey.stanpoor
2021-10-08  8:09 ` Heikki Krogerus
2021-10-08  8:52 ` Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox