aboutsummaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2020-01-17common: Drop CONFIG_HAS_POSTSimon Glass
This only exists to control whether the post/ directory is build. It is just as easy to check this in the Makefile. Remove CONFIG_HAS_POST and use an ifdef in the Makefile instead. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-01-10gcc-9: silence 'address-of-packed-member' warningAndy Shevchenko
GCC 9.x starts complaining about potential misalignment of the pointer to the array (in this case alignment=2) in the packed (alignment=1) structures. Repeating Linus' Torvalds commit 6f303d60534c in the Linux kernel. Original commit message: We already did this for clang, but now gcc has that warning too. Yes, yes, the address may be unaligned. And that's kind of the point. This in particular hides the warnings like drivers/usb/gadget/composite.c:545:23: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member] 545 | collect_langs(sp, s->wData); drivers/usb/gadget/composite.c:550:24: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member] 550 | collect_langs(sp, s->wData); drivers/usb/gadget/composite.c:555:25: warning: taking address of packed member of ‘struct usb_string_descriptor’ may result in an unaligned pointer value [-Waddress-of-packed-member] 555 | collect_langs(sp, s->wData); Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
2020-01-08Makefile: Fix CONFIG_SYS_UBOOT_START default valuePatrice Chotard
This patches restores boot on boards which rely on CONFIG_SYS_UBOOT_START equal to CONFIG_SYS_TEXT_BASE when using SPL Fixes: d3e97b53c1f2 ("spl: fix entry_point equal to load_addr") Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-01-07dts: Add support for adding DT overlays in u-boot.imgJean-Jacques Hiblot
If u-boot.img is a FIT image, CONFIG_OF_OVERLAY_LIST can be used to add DT overlays to u-boot.img. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-01-06Prepare v2020.01Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-12-16Prepare v2020.01-rc5Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-12-06Makefile: Ensure tools directory exists in output prior to useTom Rini
With the change to make tools/version.h a file we need to make sure that the output directory exists first otherwise we will get a build failure. Reported-by: Peter Robinson <pbrobinson@gmail.com> Tested-by: Peter Robinson <pbrobinson@gmail.com> Fixes: 4d90f6cd9813 ("tools: Avoid creating symbolic links for tools/version.h") Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-12-06Makefile: add build script for asn1 parsersAKASHI Takahiro
This rule will be used to build x509 and pkcs7 parsers. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
2019-12-04mtd: Makefile: deep cleanupMiquel Raynal
Move MTD-related lines out of the root Makefile. Put them in their respective directories. Enclose some of these new lines to skip them when building the SPL. MTD core files and some MTD device drivers are compiled in a mtd.o object and included in the final object only if MTD support is required (there are two different symbols for that, one for U-Boot and one for the SPL). Now that all defconfigs have been fixed, we can stop the logic where enabling a command selects the core files to compile. This logic is broken since selecting a symbol with a 'depends on' will not enforce this secondary dependency. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
2019-12-03cosmetic: Fix spelling and whitespace errorsThomas Hebb
Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2019-12-03Makefile: add Rockchip idbloader.img to CLEAN_FILESThomas Hebb
This file is generated in the root during Rockchip builds and so should be cleaned up. Signed-off-by: Thomas Hebb <tommyhebb@gmail.com> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2019-12-03Makefile: consolidate hardcoded lists of files to cleanThomas Hebb
Currently, we have two places where we list files that should always be cleaned if they exist. One, the CLEAN_FILES variable, is from the Linux build system and is the proper place to list files. The other, a set of extra arguments passed in the xargs template used to remove files with certain extensions, was introduced by 8f06f0cee3d3 ("Makefile: clean image.map") and is clearly wrong: by extending the xargs template, we attempt to remove the files once for each batch of arguments that xargs produces and we reduce the number of files from stdin that xargs can include in each of its rm commands. To fix this, put all hardcoded files into CLEAN_FILES. Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2019-12-03Makefile: don't try to construct CLEAN_FILES based on configThomas Hebb
All of the clean targets (clean, dist-clean, mrproper) are run without loading a configuration. That means that any conditional modification of CLEAN_FILES will either always apply or never apply and so shouldn't be in a conditional in the first place. Since CLEAN_FILES is allowed to list nonexistent files, just add everything to it unconditionally to fix the issue. Signed-off-by: Thomas Hebb <tommyhebb@gmail.com>
2019-12-02Prepare v2020.01-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-11-25ARM: socfpga: Introduce u-boot-with-nand-spl.sfp targetMarek Vasut
The NAND devices with 128 kiB erase blocks require extra 64 kiB padding between each SPL image. Generate U-Boot image with such a padding using this new target. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Chin Liang See <chin.liang.see@intel.com> Cc: Dalon Westergreen <dwesterg@gmail.com> Cc: Dinh Nguyen <dinguyen@kernel.org> Cc: Ley Foon Tan <ley.foon.tan@intel.com> Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Cc: Tien Fong Chee <tien.fong.chee@intel.com> Reviewed-by: Ley Foon Tan <ley.foon.tan@intel.com>
2019-11-18Prepare v2020.01-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-11-17Merge tag 'dm-pull-14nov19' of git://git.denx.de/u-boot-dmTom Rini
Add OP-TEE test swuit Fix patman cc_file output Minor sandbox/pinctrl changes
2019-11-14tests: add OP-TEE test suiteHeiko Stuebner
OP-TEE can get supplied with a devicetree and will then insert its firmware node and reserved-memory sections into it. As this devicetree often is not the one supplied to a later loaded kernel, a previous commit added functionality to transfer these nodes onto that new devicetree. To make sure this functionality stays intact, also add a test for the transfer functionality. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-11-12efi_loader: support building UEFI binaries on sandboxHeinrich Schuchardt
On the sandbox the UEFI binaries must match the host architectures. Adjust the Makefiles. Provide the PE/COFF header and relocation files. Allow building helloworld.efi on the sandbox. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-11-11Prepare v2020.01-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-11-07usb: Add Cadence USB3 host and gadget driverVignesh Raghavendra
Add support for USB3 host and gadget driver. This is a direct sync of Linux kernel Cadence USB stack that from v5.4-rc1 release. Driver has been modified so that it compiles without errors against U-Boot code base. Features not required for U-Boot such as scatter-gather DMA and OTG interrupt handling has been dropped. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> [jjhiblot@ti.com: Add PHY support] Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
2019-11-06Makefile: fix dependency for imx targetsHeiko Schocher
imx targets are defined in arch/arm/mach-imx/Makefile. Some of them are dependent on targets defined in main Makefile. For the Makefile in arch/arm/mach-imx this targets must be finished before the imx targets are build, if not you get for example the error: make -f /home/hs/abb/mainlining/u-boot/scripts/Makefile.build obj=arch/arm/mach-imx u-boot-dtb.imx make[2]: *** No rule to make target 'u-boot-fit-dtb.bin', needed by 'u-boot-dtb.imx'. Stop. make[1]: *** [/home/hs/abb/mainlining/u-boot/Makefile:1123: u-boot-dtb.imx] Error 2 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/work/hs/compile/u-boot/aristainetos2_defconfig' make: *** [Makefile:148: sub-make] Error 2 compile failed In above case of CONFIG_MULTI_DTB_FIT is defined, the u-boot-dtb.imx is dependent on the u-boot-fit-dtb.bin which may is not build yet ... I could reproduce this error on a travis build also if I build an out-of-tree build on a local machine with a build directory on a "slow" slow storage device. If building the same source target with a build dir on a fast storage device, the build works. I found no solution to tell the arch/arm/mach-imx/Makefile to find the targets in main Makefile, if there is a way this would be the better fix. I solved it by adding a IMX_DEPS var, which holds a list of main u-boot targets, which must be finished, before calling imx targets and fixed the build for imx targets which enabled CONFIG_MULTI_DTB_FIT. I think it is just luck, that imx targets with CONFIG_OF_SEPARATE enabled build, because the u-boot-dtb.imx target depends on u-boot-dtb.bin which gets build early enough before starting with u-boot-dtb.imx. May this targets should be fixed too. Signed-off-by: Heiko Schocher <hs@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2019-11-03spl: Add a size check for TPLSimon Glass
We have the ability to enforce a maximum size for SPL but not yet for TPL. Add a new option for this. Document the size check macro while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-30Makefile: Fix printing problem in size_check on overflowTom Rini
When we have an excess size growth, fix the "limit" printf call to pass in just the limit variable rather than the string bytes to the format character. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
2019-10-30Prepare v2020.01-rc1Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-10-29arm: mvebu: Avoid generating kwbimage.cfg in the source treeBin Meng
At present some boards generate kwbimage.cfg in the source tree during the build. This breaks buildman testing on some systems where the source tree is read-only. Update makefile rules to generate it in the build tree instead. Note some other boards have the kwbimage.cfg file written in advance, hence we need check if the file exists in the build tree first, otherwise we fall back to one in the source tree. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-10-28tools: Avoid creating symbolic links for tools/version.hBin Meng
When building U-Boot host tools for Windows from Microsoft Azure Pipelines, the following errors were seen: HOSTCC tools/mkenvimage.o In file included from tools/mkenvimage.c:25: ./tools/version.h:1:1: error: expected identifier or ‘(’ before ‘.’ token 1 | ../include/version.h | ^ tools/mkenvimage.c: In function ‘main’: tools/mkenvimage.c:117:4: warning: implicit declaration of function ‘usage’ [-Wimplicit-function-declaration] 117 | usage(prg); | ^~~~~ tools/mkenvimage.c:120:35: error: ‘PLAIN_VERSION’ undeclared (first use in this function) 120 | printf("%s version %s\n", prg, PLAIN_VERSION); | ^~~~~~~~~~~~~ tools/mkenvimage.c:120:35: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [scripts/Makefile.host:114: tools/mkenvimage.o] Error 1 It turns out tools/version.h is a symbolic link and with Windows default settings it is unsupported hence the actual content of tools/version.h is not what file include/version.h has, but the the linked file path, which breaks the build. To fix this, remove the symbolic links for tools/version.h. Instead we perform a copy from include/version.h during the build. Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-16Merge tag 'dm-pull-15oct19' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-dm binman enhancements: - Dropping some test Elf files and building them from source instead - Refactoring of x86 16-bit entries - Support for SPL symbols within sections - Handle the 'notes' sections and hidden symbols in recent binutils - Improved error reporting with a tool fails libfdt and documentation fixes vboot required-key test driver model power-domain controls patman Message-Id enhancement
2019-10-16Makefile: Skip symbolic links to files for cscopeAndy Shevchenko
cscope complains that it can't find files that appears to be symbolic links cscope: cannot find file tools/binman/test/u_boot_binman_syms_bad.c cscope: cannot find file tools/version.h `find -L` tests properties, but name, and cscope can't cope with symbolic links (a lot of bugs in upstream were simple closed as kinda invalid). To work around the problem, exclude symbolic links from the cscope.files. Note, it's done in two pass to speed up the process (`-exec realpath ...` approach is not portable and introduces a 3x delay). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
2019-10-15binman: x86: Separate out 16-bit reset and init codeSimon Glass
At present these two sections of code are linked together into a single 2KB chunk in a single file. Some Intel SoCs like to have a FIT (Firmware Interface Table) in the ROM and the pointer for this needs to go at 0xffffffc0 which is in the middle of these two sections. Make use of the new 'reset' entry and change the existing 16-bit entry to include just the 16-bit data. Signed-off-by: Simon Glass <sjg@chromium.org>
2019-10-13spl, Makefile: Take external offset into account for fit imagesSjoerd Simons
When building a FIT image for SPL to load also take into account the configured external offset. This allows the SPL to load the u-boot FIT image correctly when configuring SECURE_BOOT on i.mx6 is enabled (with CONFIG_FIT_EXTERNAL_OFFSET=0x3000). Note this doesn't allow secure booting; but it does allow an unsigned SPL/u-boot with secure boot support eanbled to boot on open device. Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
2019-10-09Merge tag 'u-boot-imx-20191009' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20191009 ------------------- Travis : https://travis-ci.org/sbabic/u-boot-imx/builds/595148532 - MX6UL / ULZ - Toradex board - Allow to set OCRAM for MX6Q/D - MX7ULP - MX8: (container image, imx8mq_mek), SCU API - fix several board booting from SD/EMMC (cubox-i for example) - pico boards [trini: display5 merged manually] Signed-off-by: Tom Rini <trini@konsulko.com>
2019-10-08imx: replace CONFIG_SECURE_BOOT with CONFIG_IMX_HABStefano Babic
CONFIG_SECURE_BOOT is too generic and forbids to use it for cross architecture purposes. If Secure Boot is required for imx, this means to enable and use the HAB processor in the soc. Signed-off-by: Stefano Babic <sbabic@denx.de>
2019-10-08imx: add container targetPeng Fan
To support SPL loading container file, add a new Makefile target, and introduce a new Kconfig file to source the cfg file which will be parsed by mkimage. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2019-10-08spl: Convert CONFIG_SPL_SIZE_LIMIT to hexSimon Glass
This is currently a decimal value which is not as convenient or meaningful. Also U-Boot tends to use hex everywhere. Convert this option to hex and add a comment for the size_check macro. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Acked-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: correct the typo in the commit title] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-08binman: Allow selection of logging verbositySimon Glass
Support a new BINMAN_VERBOSE option to the build, to allow passing the -v flag to binman. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-08binman: Pass the toolpath to binman from the main MakefileSimon Glass
Pass in the toolpath in case binman needs to use tools compiled in the U-Boot tools/ directory. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-07Prepare v2019.10Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-10-04Makefile: mrproper should remove *.pyc filesHeinrich Schuchardt
*.pyc files contain compiled Python bytecode. 'make mrproper' should remove them. Removing *.pyc files helps for instance sometimes when running into an error "binman: Unknown entry type 'blob' in node '/binman/blob'". Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-04Makefile: Fix typo around CONFIG_SPL_FIT_SOURCEMichal Simek
Trivial fix. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-09-23Prepare v2019.10-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-09-19dm: MIGRATION: Add migration plan for CONFIG_DMHeinrich Schuchardt
For many sub-systems we already require the driver model to be used. Yet there is still a handful of boards that do not have CONFIG_DM enabled. We should make CONFIG_DM compulsory with release v2020.01 Conversion dates for CONFIG_DM_SPL and CONFIG_DM_TPL are yet to be defined. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2019-09-11rockchip, Makefile: add idbloader.img targetMatwey V. Kornilov
Many Rockchip platforms require the same u-boot deploy procedure when TPL and SPL both enabled. The following examples are taken from doc/README.rockchip and board/theobroma-systems/lion_rk3368/README: RK3288: ./tools/mkimage -n rk3288 -T rksd -d ./tpl/u-boot-tpl.bin out cat ./spl/u-boot-spl-dtb.bin >> out sudo dd if=out of=/dev/mmcblk0 seek=64 RK3328: ./tools/mkimage -n rk3328 -T rksd -d ./tpl/u-boot-tpl.bin idbloader.img cat ./spl/u-boot-spl.bin >> idbloader.img sudo dd if=idbloader.img of=/dev/mmcblk0 seek=64 RK3368: ./tools/mkimage -n rk3368 -T rksd -d tpl/u-boot-tpl.bin spl-3368.img cat spl/u-boot-spl-dtb.bin >> spl-3368.img dd if=spl-3368.img of=/dev/sdb seek=64 RK3399: ./tools/mkimage -n rk3399 -T rksd -d ./tpl/u-boot-tpl-dtb.bin out cat ./spl/u-boot-spl-dtb.bin >> out sudo dd if=out of=/dev/sdc seek=64 Here, we introduce generic idbloader.img target which is the TPL image followed by the SPL binary. Signed-off-by: Matwey V. Kornilov <matwey.kornilov@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2019-09-04network: set timeline for CONFIG_DM_ETH conversionHeinrich Schuchardt
The driver model has been supported for network drivers since 2015. It is time to convert the remaining boards. Set July 2020 as a timeline. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2019-08-31Makefile: fix newline escaping for CONFIG_DEFAULT_ENV_FILERasmus Villemoes
I wanted this to be compatible with mkenvimage, including the ability to embed newlines in variables by escaping them. But I failed to check that it works more than once. Fixes: f3d8f7dd73a (Allow providing default environment from file) Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2019-08-30Makefile: clean build generated SPL binary for TI AM65xSuniel Mahesh
TI AM65x platforms (evm and HS) generate an SPL image 'tispl.bin*' and there is no rule for cleanup. Added entry for cleanup in clean target. Signed-off-by: Suniel Mahesh <sunil.m@techveda.org>
2019-08-27Merge https://gitlab.denx.de/u-boot/custodians/u-boot-mpc85xxTom Rini
Support of device tree model for T2080RDB, T4240RDB, T1024RDB, T1042D4RDB, P1020RDB, P2020RDB, P2041RDB, P3041DS, P4080DS, P5040DS and MPC8548CDS. Also support of i2c dm model.
2019-08-26Prepare v2019.10-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-08-26powerpc: mpc85xx: Add device tree support option for PBL boot imageHou Zhiqiang
The current Makefile always use u-boot.bin to generate PBL boot image (u-boot.pbl), this patch changes it to use u-boot-with-dtb.bin to support device tree when CONFIG_OF_SEPARATE is enabled. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com>
2019-08-26Makefile: support building SPL FIT images without device treesLukas Auer
When building a U-Boot FIT image, the device trees specified by the board are unconditionally built for inclusion in the FIT image. However, not all device tree providers, such as CONFIG_OF_PRIOR_STAGE, require a device tree to be built and bundled with the U-Boot binary. They rely on other mechanisms to provide the device tree to U-Boot. Compilation on boards with these device tree providers fails, because they do not specify a device tree. Change the makefile rules to conditionally build the device trees if CONFIG_OF_SEPARATE, CONFIG_OF_EMBED, or CONFIG_OF_HOSTFILE is selected as device tree provider. Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com>