Hi, Removing mugunthan...@ti.com, who is no longer working for TI.
On Wednesday 06 September 2017 02:02 AM, Maxime Ripard wrote: > Hi, > > I've been working with USB-Ethernet gadget for quite some time on the > Allwinner SoCs, especially because most Allwinner boards lack an > ethernet controller. > > The thing is, it wasn't really upstreamable all this time since we've > had also some boards that had a controller with DM_ETH. And usb_ether > didn't have DM_ETH support until recently. > > So I gave it a shot, and encountered a few weird things that prevented > it from working (and still do): > > 1) I converted our musb glue to support the DM even in the peripheral > mode. Here is the code: http://code.bulix.org/m846ni-194479 > > It almost works, except that usb_scan_bus in usb-uclass.c for some > reason unknown to me tries to scan the peripheral device, and > fails. Skipping that scan makes fastboot works, so I guess the > peripheral is working. Is there any particular reason that the > DM_USB code tries to scan even peripheral devices ? > > 2) I can't manage to get usb_ether to probe after that, using the > DM. It seems that we need to call usb_ether_init, and that it looks > for UCLASS_USB_DEV_GENERIC devices and binds the usb_ether gadget > to it. > > However, every board or arch hooks I tried seems to be much earlier > than the USB controller, leading to the binding failing since we > don't have a controller to bind to yet. > am33xx probes MISC devices in arch_misc_init() (arch/arm/mach-omap2/am33xx/board.c) > Adding that code right after the USB controller initialisation in > the musb probe solves that issue, but for some other reason, it > looks for a device of the USB_DEV_GENERIC uclass, while the uclass > for the USB controllers seems to be USB. Actually, I don't seem to > find any user of the USB_DEV_GENERIC uclass but the usb_ether > driver, so I'm not really sure how it's supposed to work either... > Sorry, DM based eth gadget support is still missing for am33xx. This patch in particular was asked to be reworked: https://patchwork.ozlabs.org/patch/696033/ > Is there some user of this in U-Boot right now? the only call there is > to usb_ether_init seems to be for the am33xx SoCs, whose usb glue > don't register a peripheral controller (yet), so I don't really know > how that can work either. > Last time I tried to upstream dwc3 usb ethernet gaget and rndis boot support, Lukasz Majewski had ideas to move towards adding DM infrastructure for USB gadget: https://patchwork.ozlabs.org/patch/775110/ -- Regards Vignesh _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot