summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)AuthorFilesLines
2021-09-24mtd: remove SPEAr flash driver st_smiPatrick Delaunay1-1/+0
Remove the driver st_smic.c used in SPEAr products and the associated config CONFIG_ST_SMI; this driver is no more used in U-Boot after the commit 570c3dcfc153 ("arm: Remove spear600 boards and the rest of SPEAr support"). Fixes: 570c3dcfc153 ("arm: Remove spear600 boards and the rest of SPEAr support") Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Stefan Roese <sr@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2021-09-24scripts/mailmapper: enable running with Python 3Heinrich Schuchardt1-5/+9
Our mailmapper script required Python 2 which is no longer maintained. A main difference when converting to Python 3 is that byte strings are not character strings. So add conversion and skip over conversion errors. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2021-09-15configs: Resync with savedefconfigTom Rini1-17/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-14pci: Drop PCI_INDIRECT_BRIDGESimon Glass1-1/+0
This does not work with driver model so can be removed. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-14ppc: Remove UCP1020 boardSimon Glass1-0/+1
This board has not been converted to CONFIG_DM_PCI by the deadline. Remove it. Note that we have to add CONFIG_SPIFLASH to scripts/config_whitelist.txt because it's not really migrated at this point. Acked-by: Michael Durrant <mdurrant@arcturusnetworks.com> Acked-by: Oleksandr Zhadan <oleks@arcturusnetworks.com> Acked-by: Oleksandr Zhadan and Michael Durrant <arcsupport@arcturusnetworks.com> Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Handle CONFIG_SPIFLASH differently and delete Kconfig file] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-18configs: Migrate CORTINA_FW_ADDR and CORTINA_FW_LENGTH to KconfigKuldeep Singh1-2/+0
Use moveconfig.py script to convert below defines to Kconfig and move these entries to defconfigs. CONFIG_CORTINA_FW_ADDR CONFIG_CORTINA_FW_LENGTH Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2021-08-10configs: Resync with savedefconfigTom Rini1-11/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-06pci: ppc: Drop ftpci100 driverSimon Glass1-4/+0
This is not used in U-Boot at present. Drop it and related config options. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-08-05ppc: Drop CONFIG_SYS_PCI_SUBSYS_VENDORIDSimon Glass1-1/+0
This is not used. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-08-04config: MPC8548CDS: eliminate symbol CONFIG_SYS_ID_EEPROMHeinrich Schuchardt1-1/+0
Symbol CONFIG_SYS_ID_EEPROM is defined in include/configs/MPC8548CDS.h but never used. Remove it here and from the whitelist. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2021-07-31arm: mvebu: Remove unused macro CONFIG_SYS_U_BOOT_OFFSPali Rohár1-1/+0
Macro CONFIG_SYS_U_BOOT_OFFS is set but not used anymore. Remove it. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de>
2021-07-29build: remove the variable NM in gen_ll_addressable_symbols.shPatrick Delaunay2-2/+5
With LTO activated, the buildman tools failed with an error on my configuration (Ubuntu 20.04, stm32mp15_trusted_defconfig) with the error: ../arm-linux-gnueabi/bin/nm: scripts/gen_ll_addressable_symbols.sh: file format not recognized It seems the shell variable initialization NM=$(NM) is not correctly interpreted when shell is started in the Makefile, but I have not this issue when I compile the same target without buildman. I don't found the root reason of the problem but I solve it by providing $(NM) as script parameter instead using a shell variable. The command executed is identical: cmd_keep-syms-lto.c := NM=arm-none-linux-gnueabihf-gcc-nm \ u-boot/scripts/gen_ll_addressable_symbols.sh arch/arm/cpu/built-in.o \ .... net/built-in.o >keep-syms-lto.c cmd_keep-syms-lto.c := u-boot/scripts/gen_ll_addressable_symbols.sh \ arm-none-linux-gnueabihf-gcc-nm arch/arm/cpu/built-in.o \ ... net/built-in.o > keep-syms-lto.c Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2021-07-28i2c: Drop unused CONFIG_I2CSimon Glass1-1/+0
This actually does nothing but is defined by a few dozen boards. Drop it, so we can define a real one. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de>
2021-07-28i2c: Rename CONFIG_SYS_I2C to CONFIG_SYS_I2C_LEGACYSimon Glass1-1/+1
It is quite confusing that CONFIG_SYS_I2C selects the legacy I2C and CONFIG_DM_I2C selects the current I2C. The deadline to migrate I2C is less than a year away. Also we want to have a CONFIG_I2C for U-Boot proper just like we have CONFIG_SPL_I2C for SPL, so we can simplify the Makefile rules. Rename this symbol so it is clear it is going away. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de>
2021-07-27configs: Resync with savedefconfigTom Rini1-30/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-14scripts/get_default_envs.sh: Update for thin archive supportTom Rini1-2/+3
This script was broken by the change to default archives for linking. This is due to objcopy specifically disallowing copying of thin archives. To fix this and re-support external users of this script, switch to using the same logic the u-boot-initial-env make target uses to dump the section from the object file. Reported-by: Jan Kiszka <jan.kiszka@web.de> Fixes: 958f2e57eff7 ("build: use thin archives instead of incremental linking") Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-14kconfig / kbuild: Re-sync with Linux 4.20Tom Rini10-85/+60
Align Kconfig and Kbuild logic to Linux 4.20 release with minimal impact on files outside of this scope. Our previous Kconfig sync was done by commit 587e4a429698 ("kconfig / kbuild: Re-sync with Linux 4.19"). As part of this re-sync, a few related changes from previous Linux releases were found to have been missed and merged in, and are not in the following list. The imported Linux commits are: [From prior to v4.19] b1e0d8b70fa3 kbuild: Fix gcc -x syntax a4353898980c kconfig: add CC_IS_GCC and GCC_VERSION 469cb7376c06 kconfig: add CC_IS_CLANG and CLANG_VERSION [From v4.19 to v4.20] 487c7c7702ab kbuild: prefix Makefile.dtbinst path with $(srctree) unconditionally 0d91bf584fe5 kbuild: remove old check for CFLAGS use 25815cf5ffec kbuild: hide most of targets when running config or mixed targets 00d78ab2ba75 kbuild: remove dead code in cmd_files calculation in top Makefile 23066c3f4e21 Compiler Attributes: enable -Wstringop-truncation on W=1 (gcc >= 8) 37c8a5fafa3b kbuild: consolidate Devicetree dtb build rules 80463f1b7bf9 kbuild: add --include-dir flag only for out-of-tree build 77ec0c20c7e0 kbuild: remove VERSION and PATCHLEVEL from $(objtree)/Makefile 74bc0c09b2da kbuild: remove user ID check in scripts/mkmakefile 4fd61277f662 kbuild: do not pass $(objtree) to scripts/mkmakefile 80d0dda3a4e5 kbuild: simplify command line creation in scripts/mkmakefile fb073a4b473e kbuild: add -Wno-pointer-sign flag unconditionally 9df3e7a7d7d6 kbuild: add -Wno-unused-but-set-variable flag unconditionally 69ea912fda74 kbuild: remove unneeded link_multi_deps 7d0ea2524202 kbuild: use 'else ifeq' for checksrc to improve readability 04c459d20448 kconfig: remove oldnoconfig target 0085b4191f3e kconfig: remove silentoldconfig target 3f80babd9ca4 kbuild: remove unused cc-fullversion variable 2cd3faf87d2d merge_config.sh: Allow to define config prefix 076f421da5d4 kbuild: replace cc-name test with CONFIG_CC_IS_CLANG 6bbe4385d035 kconfig: merge_config: avoid false positive matches from comment lines [From post v4.20] 885480b08469 Makefile: Move -Wno-unused-but-set-variable out of GCC only block There are a number of changes related to additional warnings as well as being able to drop cc-name entirely that have been omitted for now as additional work is required first. Cc: Masahiro Yamada <masahiroy@kernel.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-14get_maintainer.pl: update from Linux kernel v5.13-rc6Trevor Woerner1-70/+134
Update U-Boot's version of scripts/get_maintainer.pl to sync it up with the latest changes to the Linux kernel's version of the same script. The last sync was with Linux kernel version v4.16. The commits to the kernel's get_maintainer.pl since then (starting with the most recent) are: 6343f6b71f83 get_maintainer: exclude MAINTAINERS file(s) from --git-fallback cdfe2d220476 get_maintainer: add test for file in VCS e33c9fe8b80c get_maintainer: fix unexpected behavior for path/to//file (double slashes) 0c78c0137621 get_maintainer: add email addresses from .yaml files 0ef82fcefb99 scripts/get_maintainer.pl: deprioritize old Fixes: addresses ef0c08192ac0 get_maintainer: remove uses of P: for maintainer name 2f5bd343694e scripts/get_maintainer.pl: add signatures from Fixes: <badcommit> lines in commit message 49662503e8e4 get_maintainer: add ability to skip moderated mailing lists 0fbd75fd7fee get_maintainer: allow option --mpath <directory> to read all files in <directory> 5f0baf95b1ed get_maintainer.pl: add -mpath=<path or file> for MAINTAINERS file location 31bb82c9caa9 get_maintainer: allow usage outside of kernel tree 0455c74788fd get_maintainer: improve patch recognition 882ea1d64eb3 scripts: use SPDX tag in get_maintainer and checkpatch Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2021-07-14fixdep: remove leftover handling of IS_BUILTIN/IS_MODULERasmus Villemoes1-4/+0
I removed CONFIG_IS_BUILTIN and CONFIG_IS_MODULE in commit 7d78a4547d ("linux/kconfig.h: remove unused helper macros"), but fixdep.c still looks for those. It's harmless, but also pointless and possibly confusing to a future reader. Fixes: 7d78a4547d ("linux/kconfig.h: remove unused helper macros") Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2021-07-08configs: Resync with savedefconfigTom Rini1-332/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-06Kconfig: convert CONFIG_SYS_I2C_LPC32XXTrevor Woerner1-1/+0
Convert the CONFIG_SYS_I2C_LPC32XX configuration symbol from an include directive to a Kconfig value. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-07-06lpc32xx: Kconfig: switch to CONFIG_CONS_INDEXTrevor Woerner1-1/+0
There's nothing special or unique to the lpc32xx that requires its own config parameter for specifying the console uart index. Therefore instead of using the lpc32xx-specific CONFIG_SYS_LPC32XX_UART include parameter, use the already-available CONFIG_CONS_INDEX from Kconfig. Signed-off-by: Trevor Woerner <twoerner@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-06-28Merge tag 'v2021.07-rc5' into nextTom Rini1-1/+0
Prepare v2021.07-rc5 # gpg: Signature made Mon 28 Jun 2021 03:39:36 PM EDT # gpg: using RSA key 1A3C7F70E08FAB1707809BBF147C39FF9634B72C # gpg: Good signature from "Thomas Rini <trini@konsulko.com>" [ultimate] # Conflicts: # configs/am64x_evm_r5_defconfig
2021-06-17armv8: layerscape: drop CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33Yangbo Lu1-1/+0
Drop CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33. CONFIG_FSL_ESDHC_VS33_NOT_SUPPORT is used instead. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Acked-by: Michael Walle <michael@walle.cc> [for kontron-sl28] Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2021-06-09usb: dfu: Migrate CONFIG_SYS_DFU_DATA_BUF_SIZE and ↵Aswath Govindraju1-2/+0
CONFIG_SYS_DFU_MAX_FILE_SIZE to Kconfig Currently the config options CONFIG_SYS_DFU_DATA_BUF_SIZE and CONFIG_SYS_DFU_MAX_FILE_SIZE are being set in include/configs/<board>.h files and also in <board_name>_defconfig files without a Kconfig option. It is easier for users to set these configs in defconfig files than in config header files as they are a part of the source code. Add Kconfig symbols, and update the defconfigs by using tools/moveconfig.py script. Suggested-by: Pratyush Yadav <p.yadav@ti.com> Signed-off-by: Aswath Govindraju <a-govindraju@ti.com> Acked-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Acked-by: Matthias Brugger <mbrugger@suse.com> Acked-by: Lukasz Majewski <lukma@denx.de>
2021-05-25configs: Resync with savedefconfigTom Rini1-2/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-05-25MIPS: remove deprecated qemu_mips boardDaniel Schwierzeck1-1/+0
Remove qemu_mips boards because DM migration doesn't make sense. The board support for qemu_mips is already marked as deprecated in Qemu in favour of the Malta board. Also qemu_mips support has been removed from Linux a long time ago. The official replacement is the Malta board. The same Malta U-Boot image can be used with Qemu and on physical hardware. All combinations of Big Endian and Little Endian as well as 32 bit and 64 bit are supported. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2021-05-24build: link with --build-id=noneMarek Behún1-0/+2
Some toolchains are compiled so that they pass a --build-id=something parameter to the linker implicitly. This causes U-Boot LTO linking to fail with something like: ld: section .note.gnu.build-id LMA ... overlaps section .text LMA ... because U-Boot's link scripts do not currently handle .note.gnu.build-id section. Fix this by explicitly disabling build-id. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-05-24build: support building with Link Time OptimizationsMarek Behún3-1/+58
Add plumbing for building U-Boot with Link Time Optimizations. When building with LTO, $(PLATFORM_LIBS) has to be in --whole-archive / --no-whole-archive group, otherwise some functions declared in assembly may not be resolved and linking may fail. Note: clang may throw away linker list symbols it thinks are unused when compiling with LTO. To force these symbols to be included, we refer to them via the __ADDRESSABLE macro in a C file generated from compiled built-in.o files before linking. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-05-24build: use thin archives instead of incremental linkingMarek Behún2-10/+10
Currently we use incremental linking (ld -r) to link several object files from one directory into one built-in.o object file containing the linked code from that directory (and its subdirectories). Linux has, some time ago, moved to thin archives instead. Thin archives are archives (.a) that do not really contain the object files, only references to them. Using thin archives instead of incremental linking - saves disk space - apparently works better with dead code elimination - makes things easier for LTO The third point is the important one for us. With incremental linking there are several options how to do LTO, and that would unnecessarily complicate things. We have to use the --whole-archive/--no-whole-archive linking option instead of --start-group/--end-group, otherwise linking may fail because of unresolved symbols, or the resulting binary will be unusable. We also need to use the P flag for ar, otherwise final linking may fail. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-05-24Makefile, Makefile.spl: cosmetic changeMarek Behún1-6/+11
Indent the linking commands so that they look cosmetically better. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2021-05-24checkpatch: require quotes around section name in the __section() macroMarek Behún1-1/+1
This is how Linux does this now, see Linux commit 339f29d91acf. Signed-off-by: Marek Behún <marek.behun@nic.cz> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-05-24pylibfdt: Rework "avoid unused variable warning" linesTom Rini1-2/+2
Clang has -Wself-assign enabled by default under -Wall and so when building with -Werror we would get an error here. Inspired by Linux kernel git commit a21151b9d81a ("tools/build: tweak unused value workaround") make use of the fact that both Clang and GCC support casting to `void` as the method to note that something is intentionally unused. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-05-15configs: Resync with savedefconfigTom Rini1-1/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-04-29patman: Parse checkpatch by message instead of by lineEvan Benn1-8/+10
Parse each empty-line-delimited message separately. This saves having to deal with all the different line content styles, we only care about the header ERROR | WARNING | NOTE... Also make checkpatch print line information for a uboot specific warning. Signed-off-by: Evan Benn <evanbenn@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-04-27configs: Resync with savedefconfigTom Rini1-99/+0
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-04-22lmb: move CONFIG_LMB in KconfigPatrick Delaunay1-1/+0
Migrate CONFIG_LMB in Kconfig. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2021-04-20Add support for stack-protectorJoel Peshkin1-0/+6
Add support for stack protector for UBOOT, SPL, and TPL as well as new pytest for stackprotector Signed-off-by: Joel Peshkin <joel.peshkin@broadcom.com> Adjust UEFI build flags. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2021-04-20net: calxedagmac: Convert to DM_ETHAndre Przywara1-1/+0
To squash that nasty warning message and make better use of the newly gained OF_CONTROL feature, let's convert the calxedagmac driver to the "new" driver model. The conversion is pretty straight forward, mostly just adjusting the use of the involved data structures. The only actual change is the required split of the receive routine into a receive and free_pkt part. Also this allows us to get rid of the hardcoded platform information and explicit init calls. This also uses the opportunity to wrap the code decoding the MMIO register base address, to make it safe for using PHYS_64BIT later. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2021-04-15freescale: ls1021atwr: Drop use of CONFIG_RESETSimon Glass1-1/+0
It is not recommended to use CONFIG_xxx defines for things which are not Kconfig options. Rename this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2021-04-13checkpatch: Add warnings for using strn(cat|cpy)Sean Anderson1-0/+6
strn(cat|cpy) has a bad habit of not nul-terminating the destination, resulting in constructions like strncpy(foo, bar, sizeof(foo) - 1); foo[sizeof(foo) - 1] = '\0'; However, it is very easy to forget about this behavior and accidentally leave a string unterminated. This has shown up in some recent coverity scans [1, 2] (including code recently touched by yours truly). Fortunately, the guys at OpenBSD came up with strl(cat|cpy), which always nul-terminate strings. These functions are already in U-Boot, so we should encourage new code to use them instead of strn(cat|cpy). [1] https://lists.denx.de/pipermail/u-boot/2021-March/442888.html [2] https://lists.denx.de/pipermail/u-boot/2021-January/438073.html Signed-off-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2021-04-11Merge branch '2021-04-11-remove-non-migrated-boards'Tom Rini1-2/+0
- Remove a large number of boards that have not migrated to DM_MMC, for which the migration deadline with 2 years ago at v2019.04.
2021-04-10finish removing mb862xx video driverTrevor Woerner1-1/+0
drivers/video/mb862xx.c was removed in commit 9c1e098fb92de38f0017585658dd50c3009c84ab from December 2020, however, this last little remnant in drivers/video/cfb_console.c remained. Signed-off-by: Trevor Woerner <twoerner@gmail.com>
2021-04-10drivers: ata: Remove mvsata_ide driverTom Rini1-2/+0
The mvsata_ide driver was due for DM conversion by v2019.07. As that has long passed, remove the driver and disable it in the boards which had enabled it. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-04-08configs: remove obsolete CONFIG_MVEBU_MMCHarm Berntsen1-1/+0
All usages of this have been removed Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Simon Glass <sjg@chromium.org> CC: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2021-04-08configs: remove obsolete CONFIG_SYS_MMC_BASEHarm Berntsen1-1/+0
All usages of this have been removed Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Simon Glass <sjg@chromium.org> CC: Simon Glass <sjg@chromium.org>
2021-04-06Convert CONFIG_MISC_INIT_F to KconfigSimon Glass1-1/+0
This converts the following to Kconfig: CONFIG_MISC_INIT_F Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
2021-04-06dtc: Update the build rule for pylibfdtSimon Glass1-0/+1
Some versions of make complain about using a grouped target without a recipe: .../pylibfdt/Makefile:36: *** grouped targets must provide a recipe. Stop. Fix this by adding a dummy recipe. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-03-26Makefile: Remove old of-platdata files before regeneratingSimon Glass1-2/+17
Which files we generate depends on the setting of OF_PLATDATA_INST in the build. This might change between builds, but the build directory may be reused. Leaving old files around is confusing and switching the OF_PLATDATA_INST setting does not necessarily regenerate the files, e.g. if the devicetree has not changed. Remove all the files before regenerating new ones. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-03-26Makefile: Use a variable for generated of-platdata headersSimon Glass1-7/+4
There are actually two generated files but only one is currently mentioned in the Makefile as a dependency. Put them both in a Makefile variable and use that instead, to avoid inconsistency. Signed-off-by: Simon Glass <sjg@chromium.org>