On 12/08/2019 15:46, Felipe Balbi wrote: > > Hi, > > Roger Quadros <rogerq@xxxxxx> writes: >>> The sysfs file we expose from the class for the role switches is >>> primarily meant for supporting proprietary protocols that require us >>> to basically override the connector USB data role. The default role >>> should always be selected in the drivers. >> >> OK. Let's take this example >> - Port is dual-role port micro AB. >> - microAB to type-A adapter is connected which pulls ID low. port transitions >> to "host" role by the controller driver. >> - proprietary protocol want to switch role to device role so writes "device" to >> mode switch sysfs. port transitions to "device" role. >> >> Now, how does controller driver know to fall back to HW based role switching? > > Use a 'disconnect' or 'suspend' event to go reset it? But that should, > probably, be done at kernel space, no? > Yes that could be one option. So after a disconnect, sysfs role should reflect actual hardware role. correct? cheers, -roger -- Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki