aboutsummaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2021-09-14configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-13pci: Drop PCI_INDIRECT_BRIDGESimon Glass
This does not work with driver model so can be removed. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-13ppc: Remove UCP1020 boardSimon Glass
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-09-04net: Rename SPL_NET_SUPPORT to SPL_NETSimon Glass
Rename this option so that CONFIG_IS_ENABLED can be used with it. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-04i2c: Convert CONFIG_POWER_I2C et al to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_POWER_I2C CONFIG_POWER_LEGACY They are handled at the same time due to a dependency between them. Update the Makefile rule to use legacy power only in U-Boot proper. Unfortunately a separate rule is needed in SPL to be able to build legacy power. Add SPL related symbols for both, to allow for SPL-only usage. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> [trini: More SPL related cleanups, reword commit message] Signed-off-by: Tom Rini <trini@konsulko.com>
2021-09-04power: Rename CONFIG_POWER to CONFIG_POWER_LEGACYSimon Glass
This option is used in pre-driver model code and much of it has never been converted to driver model. We want to add a new option to enable power support, so we can use a simple rule in the Makefile. Rename this one, which is really about a particular implementation of power. Also update the pmic.h header file so it either includes the legacy API or the driver model one. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2021-09-04Convert CONFIG_DMA_LPC32XX to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_DMA_LPC32XX Signed-off-by: Simon Glass <sjg@chromium.org>
2021-09-01scripts/checkpatch.pl: Resync with v5.13Tom Rini
This resyncs us with the version found in v5.13 of the Linux kernel with the following exceptions: - Keep our u-boot specific tests / code area. - Change the location of checkpatch.rst (which we now import) - Drop the "use strscpy" test as we don't have that, but do have strlcpy and want that used now. - Keep debug/printf in the list for $logFunctions And note that we now also include the spdxcheck.py tool that checkpatch.pl supports calling out to, and include upstream's checkpatch.rst in our develop section of the documentation. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-31Merge branch '2021-08-31-kconfig-migrations-part2' into nextTom Rini
- Further CONFIG to Kconfig migrations - Some DDR related symbols - CONFIG_SYS_LOAD_ADDR moved, loadaddr always set in environment now. - Finish MX7D, convert IMX_CONFIG - Some RAMBOOT related options - L1 cache size converted and named consistently for all arches. A further follow-up to rename things for even better clarity is welcome. - CONFIG_SKIP_LOWLEVEL_INIT, CONFIG_SYS_MALLOC_LEN
2021-08-31Convert CONFIG_SKIP_LOWLEVEL_INIT et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SKIP_LOWLEVEL_INIT CONFIG_SKIP_LOWLEVEL_INIT_ONLY In order to do this, we need to introduce SPL and TPL variants of these options so that we can clearly disable these options only in SPL in some cases, and both instances in other cases. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-31Convert CONFIG_RAMBOOT_PBL et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_RAMBOOT_PBL CONFIG_SYS_FSL_PBL_PBI CONFIG_SYS_FSL_PBL_RCW Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Merge branch '2021-08-30-kconfig-migrations-part1' into nextTom Rini
- Begin merging some Kconfig migration, and CONFIG namespace cleanup series in. This gives us: - A number of I2C symbols migrated over - DWC2, i8042, altera_spi and a few other areas updated to use CFG not CONFIG for the concept of "configuration space" defines. - Rename CONFIG_EXTRA_ENV_BOARD_SETTINGS to EXTRA_ENV_BOARD_SETTINGS - Some dead code removal. - Rename a number of CONFIG symbols that were only referenced within the config header to not use CONFIG as a prefix.
2021-08-30Convert CONFIG_SYS_I2C_LEGACY to Kconfig and add CONFIG_[ST]PL_SYS_I2C_LEGACYTom Rini
First, we convert CONFIG_SYS_I2C_LEGACY to Kconfig. Next, as you cannot have SYS_I2C_LEGACY and DM_I2C at the same time, introduce CONFIG_SPL_SYS_I2C_LEGACY so that we can enable the legacy option only in SPL. Finally, for some PowerPC cases we also need CONFIG_TPL_SYS_I2C_LEGACY support. Convert all of the existing users to one or more symbols. Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30Convert CONFIG_ID_EEPROM to KconfigTom Rini
This converts the following to Kconfig: CONFIG_ID_EEPROM Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-30usb: dwc2: Rename CONFIG_DWC2 namespace to DWC2Tom Rini
There are a number of DWC2 configuration options that are set in dwc2.h and referenced in dwc2.c only. Move these out of the CONFIG_DWC2 namespace and in to the DWC2 namespace. Note that hikey was defining an option that was already always enabled, so we can remove that hunk. Cc: Marek Vasut <marex@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-18configs: Migrate CORTINA_FW_ADDR and CORTINA_FW_LENGTH to KconfigKuldeep Singh
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 Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-08-06pci: ppc: Drop ftpci100 driverSimon Glass
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 Glass
This is not used. Drop it. Signed-off-by: Simon Glass <sjg@chromium.org>
2021-08-04config: MPC8548CDS: eliminate symbol CONFIG_SYS_ID_EEPROMHeinrich Schuchardt
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ár
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-28build: remove the variable NM in gen_ll_addressable_symbols.shPatrick Delaunay
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 Glass
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 Glass
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-26configs: Resync with savedefconfigTom Rini
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 Rini
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 Rini
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 Woerner
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 Villemoes
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 Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-07-06Kconfig: convert CONFIG_SYS_I2C_LPC32XXTrevor Woerner
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 Woerner
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 Rini
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 Lu
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-08usb: dfu: Migrate CONFIG_SYS_DFU_DATA_BUF_SIZE and ↵Aswath Govindraju
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 Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-05-25MIPS: remove deprecated qemu_mips boardDaniel Schwierzeck
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ún
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ún
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ún
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ún
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ún
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 Rini
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 Rini
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 Benn
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 Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2021-04-22lmb: move CONFIG_LMB in KconfigPatrick Delaunay
Migrate CONFIG_LMB in Kconfig. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2021-04-20Add support for stack-protectorJoel Peshkin
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 Przywara
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 Glass
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>