Hi folks, I'm trying to find out which CPU's that are supported by Linux have USB controllers that support gadget mode. In theory, this should be a relatively straightforward matter, given the device tree descriptions, I think. But I am struggling to figure out how to actually create a list of these devices, and which attributes to look for. For example, one device that I am interested in is the Mediatek 7621. >From what I can see from drivers/staging/mt7621-dts/mt7621.dts, this device has an xhci node that is compatible with the mt8173-xhci driver. >From arch/arm64/boot/dts/mediatek/mt8173.dtsi, I see a node u3phy, with details for a combined USB2/3 port, and a USB2 port, which declares itself compatible with mt8173-u3phy. Grepping for mt8173-u3phy, I find drivers/phy/mediatek/phy-mtk-tphy.c, and eventually, searching for OTG, I find: static void u2_phy_instance_set_mode(struct mtk_tphy *tphy, struct mtk_phy_instance *instance, enum phy_mode mode) which can set various host/device/otg modes. Firstly, am I correct in my reasoning, that the MT7621 should therefore support (at least) USB2 device mode, and likely USB3 Dual Role Device too? Secondly, is there an easier way to reach this conclusion? Many thanks! Rogan