USB Role Switch Support

modulename: roles.ko

configname: CONFIG_USB_ROLE_SWITCH

Linux Kernel Configuration
└─>Device Drivers
└─>USB support
└─>USB Role Switch Support
In linux kernel since version 3.10 (release Date: 2013-06-30)  
USB Role Switch is a device that can select the USB role - host or
device - for a USB port (connector). In most cases dual-role capable
USB controller will also represent the switch, but on some platforms
multiplexer/demultiplexer switch is used to route the data lines on
the USB connector between separate USB host and device controllers.

Say Y here if your USB connectors support both device and host roles.
To compile the driver as module, choose M here: the module will be
called roles.ko.

source code: