From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steve Rae Date: Fri, 23 Jan 2015 15:48:15 -0800 Subject: [U-Boot] [PATCH 2/4] usb: add 'bcm_udc_otg' support In-Reply-To: <201501220805.53148.marex@denx.de> References: <1421793730-8179-1-git-send-email-srae@broadcom.com> <1421793730-8179-3-git-send-email-srae@broadcom.com> <201501220805.53148.marex@denx.de> Message-ID: <54C2DDBF.7010007@broadcom.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 15-01-21 11:05 PM, Marek Vasut wrote: > On Tuesday, January 20, 2015 at 11:42:08 PM, Steve Rae wrote: >> Implement the UDC support for the USB OTG interface. >> >> Signed-off-by: Steve Rae >> --- > > General question -- this bcm controller you're adding here isn't by > any chance a DWC2 controller, or is it ? There's already a driver > for DWC2 in drivers/usb/gadget/s3c_udc_otg.c . This driver should really > be properly renamed though ;-/ > > If this is not DWC2, do you know what controller this is please ? yes -- it is a DWC2.... So, I have had a quick look at the s3c_udc_otg*.c code.... First observation is that there is a completely different philosophy in the implementation. For example, the the interrupt handler routine(s), Broadcom is using #defines (sysmap.h which BTW are autogenerated by our Device Team) whereas "S3C" is using a "s3c_usbotg_reg" structure for the 'address' and #defines for the 'data/masks'. I'm not suggesting that one is better than the other, they are just different. So, how do we proceed? - is the ultimate goal to get to a proper gadget driver for DWC2? (I don't really know enough about this yet, so I apologize for these questions....) - is the "S3C" code a proper 'gadget' driver and/or is it a better starting point to get to a gadget driver? - I don't have enough time right now to really investigate the existing "S3C" and implement it on our board(s); they are significantly different and it looks like it will take a lot of effort - is there someone (Denx or community) that could assist me? - Could we continue to review this patchset and accept it; then establish a team to provide a "DWC2 gadget" that could be used going forward? Note: this patchset is relatively small: 6938ae5 usb: fastboot: implement fastboot M drivers/usb/gadget/Makefile A drivers/usb/gadget/bcm_usb_gadget.c M include/configs/bcm28155_ap.h b85657d usb: update 'sysmap.h' M arch/arm/include/asm/arch-bcm281xx/sysmap.h d590d41 usb: add 'bcm_udc_otg' support A drivers/usb/gadget/bcm_udc_otg.c A drivers/usb/gadget/bcm_udc_otg.h 5f1d857 usb: gadget: fastboot: add CONFIG_FASTBOOT_NO_GADGET support M drivers/usb/gadget/f_fastboot.c Thanks in advance, Steve > > [...] [... snip ...]