usb: typec: Check for ops->exit instead of ops->enter in altmode_exit
authorSven Peter <sven@svenpeter.dev>
Mon, 14 Nov 2022 16:59:24 +0000 (17:59 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:14:27 +0000 (13:14 +0100)
[ Upstream commit b6ddd180e3d9f92c1e482b3cdeec7dda086b1341 ]

typec_altmode_exit checks if ops->enter is not NULL but then calls
ops->exit a few lines below. Fix that and check for the function
pointer it's about to call instead.

Fixes: 8a37d87d72f0 ("usb: typec: Bus type for alternate modes")
Signed-off-by: Sven Peter <sven@svenpeter.dev>
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Link: https://lore.kernel.org/r/20221114165924.33487-1-sven@svenpeter.dev
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/usb/typec/bus.c

index 78e0e78..0aefb9e 100644 (file)
@@ -134,7 +134,7 @@ int typec_altmode_exit(struct typec_altmode *adev)
        if (!adev || !adev->active)
                return 0;
 
-       if (!pdev->ops || !pdev->ops->enter)
+       if (!pdev->ops || !pdev->ops->exit)
                return -EOPNOTSUPP;
 
        /* Moving to USB Safe State */