mirror of
https://github.com/smaeul/u-boot.git
synced 2025-09-14 22:16:03 +01:00
Simon Glass <sjg@chromium.org> says: When the SPL build-phase was first created it was designed to solve a particular problem (the need to init SDRAM so that U-Boot proper could be loaded). It has since expanded to become an important part of U-Boot, with three phases now present: TPL, VPL and SPL Due to this history, the term 'SPL' is used to mean both a particular phase (the one before U-Boot proper) and all the non-proper phases. This has become confusing. For a similar reason CONFIG_SPL_BUILD is set to 'y' for all 'SPL' phases, not just SPL. So code which can only be compiled for actual SPL, for example, must use something like this: #if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_TPL_BUILD) In Makefiles we have similar issues. SPL_ has been used as a variable which expands to either SPL_ or nothing, to chose between options like CONFIG_BLK and CONFIG_SPL_BLK. When TPL appeared, a new SPL_TPL variable was created which expanded to 'SPL_', 'TPL_' or nothing. Later it was updated to support 'VPL_' as well. This series starts a change in terminology and usage to resolve the above issues: - The word 'xPL' is used instead of 'SPL' to mean a non-proper build - A new CONFIG_XPL_BUILD define indicates that the current build is an 'xPL' build - The existing CONFIG_SPL_BUILD is changed to mean SPL; it is not now defined for TPL and VPL phases - The existing SPL_ Makefile variable is renamed to SPL_ - The existing SPL_TPL Makefile variable is renamed to PHASE_ It should be noted that xpl_phase() can generally be used instead of the above CONFIGs without a code-space or run-time penalty. This series does not attempt to convert all of U-Boot to use this new terminology but it makes a start. In particular, renaming spl.h and common/spl seems like a bridge too far at this point. The series is fully bisectable. It has also been checked to ensure there are no code-size changes on any commit.
42 lines
1.5 KiB
Makefile
42 lines
1.5 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
# (C) Copyright 2000-2007
|
|
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
|
|
|
obj-$(CONFIG_$(PHASE_)USB_GADGET) += epautoconf.o config.o usbstring.o
|
|
obj-$(CONFIG_$(PHASE_)USB_ETHER) += epautoconf.o config.o usbstring.o ether.o
|
|
obj-$(CONFIG_$(PHASE_)USB_ETH_RNDIS) += rndis.o
|
|
|
|
ifdef CONFIG_XPL_BUILD
|
|
obj-$(CONFIG_SPL_USB_GADGET) += g_dnl.o
|
|
obj-$(CONFIG_SPL_DFU) += f_dfu.o
|
|
obj-$(CONFIG_SPL_USB_SDP_SUPPORT) += f_sdp.o
|
|
endif
|
|
|
|
# new USB gadget layer dependencies
|
|
ifdef CONFIG_USB_GADGET
|
|
obj-$(CONFIG_USB_GADGET_AT91) += at91_udc.o
|
|
obj-$(CONFIG_USB_GADGET_ATMEL_USBA) += atmel_usba_udc.o
|
|
obj-$(CONFIG_USB_GADGET_BCM_UDC_OTG_PHY) += bcm_udc_otg_phy.o
|
|
obj-$(CONFIG_USB_GADGET_DWC2_OTG) += dwc2_udc_otg.o
|
|
obj-$(CONFIG_USB_GADGET_DWC2_OTG_PHY) += dwc2_udc_otg_phy.o
|
|
obj-$(CONFIG_USB_GADGET_MAX3420) += max3420_udc.o
|
|
obj-$(CONFIG_USB_RENESAS_USBHS) += rcar/
|
|
ifndef CONFIG_XPL_BUILD
|
|
obj-$(CONFIG_USB_GADGET_DOWNLOAD) += g_dnl.o
|
|
obj-$(CONFIG_USB_FUNCTION_THOR) += f_thor.o
|
|
obj-$(CONFIG_DFU_OVER_USB) += f_dfu.o
|
|
obj-$(CONFIG_USB_FUNCTION_MASS_STORAGE) += f_mass_storage.o
|
|
obj-$(CONFIG_USB_FUNCTION_FASTBOOT) += f_fastboot.o
|
|
obj-$(CONFIG_USB_FUNCTION_SDP) += f_sdp.o
|
|
obj-$(CONFIG_USB_FUNCTION_ROCKUSB) += f_rockusb.o
|
|
obj-$(CONFIG_USB_FUNCTION_ACM) += f_acm.o
|
|
endif
|
|
endif
|
|
|
|
obj-$(CONFIG_CI_UDC) += ci_udc.o
|
|
|
|
# Devices not related to the new gadget layer depend on CONFIG_USB_DEVICE
|
|
# This is really only N900 and USBTTY now.
|
|
obj-$(CONFIG_USB_DEVICE) += core.o ep0.o
|