aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/typec
diff options
context:
space:
mode:
authorUday M Bhat <uday.m.bhat@intel.com>2023-09-06 12:57:17 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-10-02 13:54:42 +0200
commit8929f62f1d7a45d109cd747cdeb60f3eae1c0717 (patch)
tree9ebaa38a476821167c0d34df90d822b15a33ae43 /drivers/usb/typec
parentusb: musb: dsps: Fix vbus vs tps65217-charger irq conflict (diff)
downloadlinux-rng-8929f62f1d7a45d109cd747cdeb60f3eae1c0717.tar.xz
linux-rng-8929f62f1d7a45d109cd747cdeb60f3eae1c0717.zip
usb: typec: intel_pmc_mux: enable sysfs usb role access
The OS, such as ChromeOS, uses Android Runtime to run Android applications. This necessitates supporting tools, for example, Android Debugger (ADB). On host to host setup xHC.DbC shall support ADB with USB. This requires user space to control USB roles. Enable user space control to modify the USB Type-C role. At run time it will create a role attribute in /sys/class/usb_role/<switch>/. Attribute can be modified based on the values suggested in the Documentation/ABI/testing/sysfs-class-usb_role. Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Uday M Bhat <uday.m.bhat@intel.com> Link: https://lore.kernel.org/r/20230906072717.32485-1-uday.m.bhat@intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/typec')
-rw-r--r--drivers/usb/typec/mux/intel_pmc_mux.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/typec/mux/intel_pmc_mux.c b/drivers/usb/typec/mux/intel_pmc_mux.c
index 60ed1f809130..12a4f49e870e 100644
--- a/drivers/usb/typec/mux/intel_pmc_mux.c
+++ b/drivers/usb/typec/mux/intel_pmc_mux.c
@@ -599,6 +599,7 @@ static int pmc_usb_register_port(struct pmc_usb *pmc, int index,
desc.driver_data = port;
desc.name = fwnode_get_name(fwnode);
desc.set = pmc_usb_set_role;
+ desc.allow_userspace_control = true;
port->usb_sw = usb_role_switch_register(pmc->dev, &desc);
if (IS_ERR(port->usb_sw)) {