Hi Marek, > Add example of an USB UDC configuration with DFU and UMS. > > Signed-off-by: Marek Vasut <ma...@denx.de> > Cc: Chin Liang See <cl...@altera.com> > Cc: Dinh Nguyen <dingu...@opensource.altera.com> > Cc: Vince Bridgers <vbrid...@altera.com> > Cc: Pavel Machek <pa...@denx.de> > Cc: Stefan Roese <s...@denx.de> > Cc: Lukasz Majewski <l.majew...@samsung.com> > --- > board/altera/socfpga/socfpga_cyclone5.c | 21 +++++++++++++++++++++ > include/configs/socfpga_common.h | 30 > +++++++++++++++++++++++++++++- 2 files changed, 50 insertions(+), 1 > deletion(-) > > diff --git a/board/altera/socfpga/socfpga_cyclone5.c > b/board/altera/socfpga/socfpga_cyclone5.c index 0f81d89..ce625e5 > 100644 --- a/board/altera/socfpga/socfpga_cyclone5.c > +++ b/board/altera/socfpga/socfpga_cyclone5.c > @@ -8,6 +8,10 @@ > #include <asm/arch/reset_manager.h> > #include <asm/io.h> > > +#include <usb.h> > +#include <usb/s3c_udc.h> > +#include <usb_mass_storage.h> > + > #include <netdev.h> > > DECLARE_GLOBAL_DATA_PTR; > @@ -39,3 +43,20 @@ int board_init(void) > > return 0; > } > + > +#ifdef CONFIG_USB_GADGET > +struct s3c_plat_otg_data socfpga_otg_data = { > + .regs_otg = CONFIG_USB_DWC2_REG_ADDR, > + .usb_gusbcfg = 0x1417, > +}; > + > +int board_usb_init(int index, enum usb_init_type init) > +{ > + return s3c_udc_probe(&socfpga_otg_data); > +} > + > +int g_dnl_board_usb_cable_connected(void) > +{ > + return 1; > +} > +#endif > diff --git a/include/configs/socfpga_common.h > b/include/configs/socfpga_common.h index 1df886b..9823be6 100644 > --- a/include/configs/socfpga_common.h > +++ b/include/configs/socfpga_common.h > @@ -37,7 +37,7 @@ > */ > #define CONFIG_NR_DRAM_BANKS 1 > #define PHYS_SDRAM_1 0x0 > -#define CONFIG_SYS_MALLOC_LEN (10 * 1024 * 1024) > +#define CONFIG_SYS_MALLOC_LEN (64 * 1024 * 1024) > #define CONFIG_SYS_MEMTEST_START PHYS_SDRAM_1 > #define CONFIG_SYS_MEMTEST_END PHYS_SDRAM_1_SIZE > > @@ -191,6 +191,34 @@ > #endif > > /* > + * USB Gadget (DFU, UMS) > + */ > +#if defined(CONFIG_CMD_DFU) || defined(CONFIG_CMD_USB_MASS_STORAGE) > +#define CONFIG_USB_GADGET > +#define CONFIG_USB_GADGET_S3C_UDC_OTG > +#define CONFIG_USB_GADGET_DUALSPEED > +#define CONFIG_USB_GADGET_VBUS_DRAW 2 > + > +/* USB Composite download gadget - g_dnl */ > +#define CONFIG_USBDOWNLOAD_GADGET > +#define CONFIG_USB_GADGET_MASS_STORAGE > + > +#define CONFIG_DFU_FUNCTION > +#define CONFIG_DFU_MMC > +#define CONFIG_SYS_DFU_DATA_BUF_SIZE (32 * 1024 * 1024) > +#define DFU_DEFAULT_POLL_TIMEOUT 300 > + > +/* USB IDs */ > +#define CONFIG_G_DNL_VENDOR_NUM 0x0525 /* > NetChip */ +#define CONFIG_G_DNL_PRODUCT_NUM 0xA4A5 /* > Linux-USB File-backed Storage Gadget */ +#define > CONFIG_G_DNL_UMS_VENDOR_NUM CONFIG_G_DNL_VENDOR_NUM +#define > CONFIG_G_DNL_UMS_PRODUCT_NUM CONFIG_G_DNL_PRODUCT_NUM +#ifndef > CONFIG_G_DNL_MANUFACTURER +#define > CONFIG_G_DNL_MANUFACTURER "Altera" +#endif > +#endif > + > +/* > * U-Boot environment > */ > #define CONFIG_SYS_CONSOLE_IS_IN_ENV
Reviewed-by: Lukasz Majewski <l.majew...@samsung.com> Tested-by: Lukasz Majewski <l.majew...@samsung.com> -- Best regards, Lukasz Majewski Samsung R&D Institute Poland (SRPOL) | Linux Platform Group _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot