Commit 8929f62f authored by Uday M Bhat's avatar Uday M Bhat Committed by Greg Kroah-Hartman

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: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: default avatarUday M Bhat <uday.m.bhat@intel.com>
Link: https://lore.kernel.org/r/20230906072717.32485-1-uday.m.bhat@intel.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 2f07592c
...@@ -599,6 +599,7 @@ static int pmc_usb_register_port(struct pmc_usb *pmc, int index, ...@@ -599,6 +599,7 @@ static int pmc_usb_register_port(struct pmc_usb *pmc, int index,
desc.driver_data = port; desc.driver_data = port;
desc.name = fwnode_get_name(fwnode); desc.name = fwnode_get_name(fwnode);
desc.set = pmc_usb_set_role; desc.set = pmc_usb_set_role;
desc.allow_userspace_control = true;
port->usb_sw = usb_role_switch_register(pmc->dev, &desc); port->usb_sw = usb_role_switch_register(pmc->dev, &desc);
if (IS_ERR(port->usb_sw)) { if (IS_ERR(port->usb_sw)) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment