Hi, On Wed, May 10, 2023, Krishna Kurapati PSSNV wrote: > Hi Team, > > If we set maximum speed to "super-speed" for a SSP capable controller, I > see device mode working in SS but host mode still works in SSP. From the > yaml documentation of max-speed, I see the following: > > maximum-speed: > description: > Tells USB controllers we want to work up to a certain speed. Incase > this isn't passed via DT, USB controllers should default to their maximum HW > capability. > > Shouldn't this maximum speed get limited to gen1 even for host mode ? The description is ambiguous here. However, we only ever use this property to limit the speed for device mode (from what I see in the other drivers of the kernel). Should we ever need to limit this for host mode, IMHO, we should introduce a new property for that and clarify this property. > > If so, can we set LLUCTL Force_Gen1 bit if (Controller is Gen2 && max_speed > = SuperSpeed) somewhere after GCTL core soft reset is done in set_mode ? BTW, that's for dwc_usb31. For dwc_usb32, we use a different register to limit different eSS speeds and lanecount. To limit to highspeed for xhci, we can disable usb3 ports (clear the PORTSC.PP). I don't think we can force limit to full or low speed for dwc3 host mode. BR, Thinh > > The reason being, there were some compliance issues seen with SSP on some of > our targets and we wanted to drop down to Gen-1 in our targets, but limiting > maximum-speed is affecting only device mode. > > Regards, > Krishna,