Hi, On Thu, Jun 02, 2016 at 07:31:03PM +0200, Hans de Goede wrote: > Some SoCs have a single phy-hw-block with multiple phys, this is > modelled by a single phy dts node, so we end up with multiple > controller nodes with a phys property pointing to the phy-node > of the otg-phy. > > Only one of these controllers typically is an otg controller, yet we Is it guaranteed that only one of them will be otg? > were checking the first controller who uses a phy from the block and > then end up looking for a dr_mode property in e.g. the ehci controller. > > Instead of looking for nodes with a phy property, look for nodes > with a dr_mode property, so that we actually access the dr_mode property > in a node which has it. Quote from Documentation/devicetree/bindings/usb/generic.txt: "- dr_mode: ... In case this attribute isn't passed via DT, USB DRD controllers should default to OTG." So it is not mandatory to define dr_mode in DT, then you wouldn't be able to find the controller in such case. Regards, -Bin. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html