From: Lukasz Majewski Date: Tue, 17 Sep 2013 13:58:21 +0000 (+0200) Subject: usb:g_dnl:ums: Conditional compilation for mass storage function (f_mass_storage) X-Git-Tag: submit/tizen/20160318.071304~349 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e209f95786e6b0e090590c0c68cc952d871b26ff;p=profile%2Fcommon%2Fplatform%2Fkernel%2Fu-boot-artik.git usb:g_dnl:ums: Conditional compilation for mass storage function (f_mass_storage) The mass storage composite function is now compiled in only when CONFIG_USB_GADGET_MASS_STORAGE is defined. Such change provides binary size reduction for boards which use USB download gadget (like am335x_evm) with DFU, but don't use UMS. For example at am335x_evm board reduction is more than 2KiB for text and around 120B for data. Signed-off-by: Lukasz Majewski Cc: Marek Vasut --- diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile index 1f920300e..d31e33698 100644 --- a/drivers/usb/gadget/Makefile +++ b/drivers/usb/gadget/Makefile @@ -31,6 +31,7 @@ COBJS-y += epautoconf.o config.o usbstring.o COBJS-$(CONFIG_USB_GADGET_S3C_UDC_OTG) += s3c_udc_otg.o COBJS-$(CONFIG_USBDOWNLOAD_GADGET) += g_dnl.o COBJS-$(CONFIG_DFU_FUNCTION) += f_dfu.o +COBJS-$(CONFIG_USB_GADGET_MASS_STORAGE) += f_mass_storage.o endif ifdef CONFIG_USB_ETHER COBJS-y += ether.o epautoconf.o config.o usbstring.o diff --git a/drivers/usb/gadget/g_dnl.c b/drivers/usb/gadget/g_dnl.c index 61ee0691e..5acb0b815 100644 --- a/drivers/usb/gadget/g_dnl.c +++ b/drivers/usb/gadget/g_dnl.c @@ -27,11 +27,11 @@ #include #include +#include #include "f_dfu.h" #include "gadget_chips.h" #include "composite.c" -#include "f_mass_storage.c" /* * One needs to define the following: diff --git a/include/usb_mass_storage.h b/include/usb_mass_storage.h index ffc3a13c2..d48241c63 100644 --- a/include/usb_mass_storage.h +++ b/include/usb_mass_storage.h @@ -24,6 +24,7 @@ #define SECTOR_SIZE 0x200 #include +#include struct ums_device { struct mmc *mmc; @@ -52,4 +53,12 @@ extern struct ums_board_info *board_ums_init(unsigned int, extern int usb_gadget_handle_interrupts(void); extern int fsg_main_thread(void *); +#ifdef CONFIG_USB_GADGET_MASS_STORAGE +int fsg_add(struct usb_configuration *c); +#else +int fsg_add(struct usb_configuration *c) +{ + return 0; +} +#endif #endif /* __USB_MASS_STORAGE_H__ */