summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
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 <[email protected]> Acked-by: Michael Walle <[email protected]> [for kontron-sl28] Reviewed-by: Priyanka Jain <[email protected]>
2021-05-25configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
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 <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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 <[email protected]> Reviewed-by: Bin Meng <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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 <[email protected]>
2021-05-15configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-04-27configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2021-04-22lmb: move CONFIG_LMB in KconfigPatrick Delaunay
Migrate CONFIG_LMB in Kconfig. Signed-off-by: Patrick Delaunay <[email protected]>
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 <[email protected]> Adjust UEFI build flags. Signed-off-by: Heinrich Schuchardt <[email protected]>
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 <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
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 <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2021-04-12checkpatch: Add warnings for using strn(cat|cpy)Sean Anderson
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-04-11Merge branch '2021-04-11-remove-non-migrated-boards'Tom Rini
- 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 Woerner
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 <[email protected]>
2021-04-10drivers: ata: Remove mvsata_ide driverTom Rini
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 <[email protected]>
2021-04-08configs: remove obsolete CONFIG_MVEBU_MMCHarm Berntsen
All usages of this have been removed Signed-off-by: Harm Berntsen <[email protected]> Reviewed-by: Simon Glass <[email protected]> CC: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-04-08configs: remove obsolete CONFIG_SYS_MMC_BASEHarm Berntsen
All usages of this have been removed Signed-off-by: Harm Berntsen <[email protected]> Reviewed-by: Simon Glass <[email protected]> CC: Simon Glass <[email protected]>
2021-04-06Convert CONFIG_MISC_INIT_F to KconfigSimon Glass
This converts the following to Kconfig: CONFIG_MISC_INIT_F Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-04-06dtc: Update the build rule for pylibfdtSimon Glass
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 <[email protected]>
2021-03-26Makefile: Remove old of-platdata files before regeneratingSimon Glass
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 <[email protected]>
2021-03-26Makefile: Use a variable for generated of-platdata headersSimon Glass
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 <[email protected]>
2021-03-26Makefile: Depend only on required of-platdata filesSimon Glass
When OF_PLATDATA_INST is enabled, we need dt-uclass.c and dt-device.c for the build to work. When OF_PLATDATA_INST is not enabled, we only need dt-plat.c Update the Makefile rules to indicate this. At present all files are generated and compiled regardless of which are actually needed. Signed-off-by: Simon Glass <[email protected]>
2021-03-26Makefile: Avoid running dtoc every timeSimon Glass
Since the dst_dir rule always runs, it causes a rebuild of the of-platdata files even if not needed. Create the directory inside the rule instead. Signed-off-by: Simon Glass <[email protected]>
2021-03-26libfdt: Tidy up pylibfdt build ruleSimon Glass
At present the build rule for pylibfdt depends on _libfdt.so but modern Python versions add a different suffix to the output file, resulting in something like _libfdt.cpython-38-x86_64-linux-gnu.so The result is that pylibfdt is rebuilt every time. Rename the file the standard name so that the rule works correctly. Also add libfdt.py to the dependencies, so that file is always created if missing. Signed-off-by: Simon Glass <[email protected]>
2021-03-22dm: Add the new dtoc-generated files to the buildSimon Glass
Now that dtoc generates some new C files, add these to the build so that the instantiated devices and uclasses can be used. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2021-03-22dm: of-platadata: Add option for device instantiationSimon Glass
Add Kconfig options to support build-time device instantiation. When fully implemented, this will allow dtoc to create U-Boot devices (i.e. struct udevice records) at build time, thus reducing code space in SPL. For now this defaults to off, but will be enabled when the rest of the implementation is in place. Signed-off-by: Simon Glass <[email protected]>
2021-03-22Makefile: Pass the U-Boot phase to dtocSimon Glass
Pass the U-Boot phase as a parameter so dtoc can use it. At present it is ether "spl" or "tpl". Signed-off-by: Simon Glass <[email protected]>
2021-03-15Merge tag 'v2021.04-rc4' into nextTom Rini
Prepare v2021.04-rc4
2021-03-15configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2021-03-12arm: mvebu: a38x: Remove dead code ARMADA_39XPali Rohár
Config option ARMADA_39X is never set so remove all dead code hidden under ifdef CONFIG_ARMADA_39X blocks. Also remove useless checks for CONFIG_ARMADA_38X define as this macro is always defined for a38x code path. Signed-off-by: Pali Rohár <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2021-03-08Makefile: socfpga: Add target to generate hex output for combined spl and dtbDalon Westergreen
Add target to Makefile to generate "u-boot-spl-dtb.hex" for Intel SOCFPGA SOC64 devices (Stratix 10 and Agilex). "u-boot-spl-dtb.hex" is hex formatted spl with and offset of CONFIG_SPL_TEXT_BASE. It combines the spl image and dtb. "u-boot-spl-dtb.hex" is needed to generate the final configuration bitstream for Intel SOCFPGA SOC64 devices. Signed-off-by: Dalon Westergreen <[email protected]> Signed-off-by: Siew Chin Lim <[email protected]>
2021-03-05configs: fsl: move via specific defines to KconfigRajesh Bhagat
Moves below via specific defines to Kconfig: CONFIG_FSL_VIA Signed-off-by: Rajesh Bhagat <[email protected]> [Rebased] Signed-off-by: Priyanka Jain <[email protected]>
2021-03-05configs: fsl: move bootrom specific defines to KconfigRajesh Bhagat
Moves below bootrom specific defines to Kconfig: CONFIG_SYS_FSL_BOOTROM_BASE CONFIG_SYS_FSL_BOOTROM_SIZE Signed-off-by: Rajesh Bhagat <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2021-03-03video: sunxi_display: Convert to DM_VIDEOJagan Teki
DM_VIDEO migration deadline is already expired, but around 80 Allwinner boards are still using video in a legacy way: ===================== WARNING ====================== This board does not use CONFIG_DM_VIDEO Please update the board to use CONFIG_DM_VIDEO before the v2019.07 release. Failure to update by the deadline may result in board removal. See doc/driver-model/migration.rst for more info. ==================================================== Convert the legacy video driver over to the DM_VIDEO framework. This is a minimal conversion: it doesn't use the DT for finding its resources, nor does it use DM clocks or DM devices for the outputs (LCD, HDMI, CVBS). Tested in Bananapi M1+ Plus 1920x1200 HDMI out. (Jagan) Signed-off-by: Jagan Teki <[email protected]> [Andre: rebase and smaller fixes] Signed-off-by: Andre Przywara <[email protected]> Acked-by: Maxime Ripard <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-03-02configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2021-02-24build/DTC: fix sed usage in DTC commandRoger Pau Monne
Current sed usage in the DTC command relies on GNU sed specific -i option which has a slightly different syntax for BSD sed and always expects an extension to be provided in order to create a backup file. Instead drop the cat concatenation done before the sed call and use sed itself to edit and concatenate the files. No functional change intended. Signed-off-by: Roger Pau Monné <[email protected]>
2021-02-24scripts/check-config.sh: fix to be compatible with BSD sedRoger Pau Monne
Fist use extended regexp in order to drop the '\' around the parentheses which is not supported by BSD sed in regular mode. Secondly use [[:blank:]] instead of \s, as the later is a GNU extension. No functional change intended. Signed-off-by: Roger Pau Monné <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-24cmd: fdt: skip board specific fixup using env variableWasim Khan
Sometimes it is useful to boot OS with already fixed-up device tree. Check for env variable 'skip_board_fixup' before calling ft_board_setup(). Current behaviour is unchanged, additionally user can set skip_board_fixup to 1 to skip the fixup. Signed-off-by: Wasim Khan <[email protected]>
2021-02-22Merge tag 'video-for-v2021.04-rc3' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-video - splash_source warning fix when building with 64-bit toolchains - lq123p1jx31 and nv101wxmn51 compatible in simple panel driver - remove not used mb862xx driver - add Himax HX8238D panel driver - s/video_uc_platdata/video_uc_plat/
2021-02-19fdt/sunxi: Remove OF_STDOUT_PATHAndre Przywara
OF_STDOUT_PATH was meant to hold the devicetree path to the serial console, to be put into the linux,stdout-path property of the chosen node. The only user of that was sunxi, and it was actually wrong for years there: the paths hardcoded in sunxi_common.h were not matching the DTs, evident by the leading 0's in nodenames, which have been removed years ago. On top of that, "linux,stdout-path" is now deprecated for a while (Linux commit 2a9d832cc9aae from November 2014), and also all modern DTs (including those included in U-Boot) carry a "stdout-path" property already. So remove the stanza from sunxi_common.h, and, since this was the last user, also remove the associated bits from the rest of U-Boot. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-19video: eliminate unused drivers/video/mb862xx.cHeinrich Schuchardt
The mb862xx driver does not conform to the driver model and is unused. Eliminate it. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-02-15libfdt: Check for multiple/invalid root nodesSimon Glass
It is possible to construct a devicetree blob with multiple root nodes. Update fdt_check_full() to check for this, along with a root node with an invalid name. CVE-2021-27097 Signed-off-by: Simon Glass <[email protected]> Reported-by: Bruce Monroe <[email protected]> Reported-by: Arie Haenel <[email protected]> Reported-by: Julien Lenoir <[email protected]>
2021-02-15configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2021-01-29configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2021-01-27pci: Remove CONFIG_PCI_ENUM_ONLY as it's not used (any more)Stefan Roese
This patch completely removes CONFIG_PCI_ENUM_ONLY from the PCI code as it is not configured for any board (any more). With this removal, some PCI related files get cleaned up a bit. Additional, dm_pciauto_setup_device() is now static, as it's not referenced from any code outside of this C file. Signed-off-by: Stefan Roese <[email protected]> Cc: Simon Glass <[email protected]> Cc: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>