diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/usb/typec/bus.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/typec/bus.c b/drivers/usb/typec/bus.c index 7e94e8c46ab3..8f6d8933d72e 100644 --- a/drivers/usb/typec/bus.c +++ b/drivers/usb/typec/bus.c @@ -101,6 +101,9 @@ int typec_altmode_enter(struct typec_altmode *adev) if (!pdev->ops || !pdev->ops->enter) return -EOPNOTSUPP; + if (is_typec_port(pdev->dev.parent) && !pdev->active) + return -EPERM; + /* Moving to USB Safe State */ ret = typec_altmode_set_state(adev, TYPEC_STATE_SAFE); if (ret) |