summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-07-24binman: btool: Add fdt_add_pubkey as btoolLukas Funke
Add btool which calls 'fdt_add_pubkey' Signed-off-by: Lukas Funke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: doc: Add documentation for fdt_add_pubkey bintoolLukas Funke
Add documentation for btool which calls 'fdt_add_pubkey' Signed-off-by: Lukas Funke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: blob_dtb: Add fake_size argument to ObtainContents()Lukas Funke
The method 'connect_contents_to_file()' calls ObtainsContents() with 'fake_size' argument. Without providing the argument in the blob_dtb we are not able to call this method without error. Signed-off-by: Lukas Funke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: Don't decompress data while signingLukas Funke
While signing a fit compressed data (i.e. 'blob-ext') is decompressed, but never compressed again. When compressed data was wrapped in a section, decompression leads to an error because the outer section had the original compressed size but the inner entry has the uncompressed size now. While singing there is no reason to decompress data. Thus, decompression should be disabled. Furthermore, bintools should be collected before loading the data. This way bintools are available if processing is required on a node. Signed-off-by: Lukas Funke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: Add tests for etype encryptedChristian Taedcke
Add tests to reach 100% code coverage for the added etype encrypted. Signed-off-by: Christian Taedcke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: Allow cipher node as special sectionChristian Taedcke
The new encrypted etype generates a cipher node in the device tree that should not be evaluated by binman, but still be kept in the output device tree. Signed-off-by: Christian Taedcke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: Add support for externally encrypted blobsChristian Taedcke
This adds a new etype encrypted. It creates a new cipher node in the related image similar to the cipher node used by u-boot, see boot/image-cipher.c. Signed-off-by: Christian Taedcke <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-24binman: Add missing ssl documentationSimon Glass
Rerun 'binman bintool-docs' to regenerate bintools.rst Signed-off-by: Simon Glass <[email protected]>
2023-07-24binman: Renumber 277...289 TI test filesSimon Glass
These have ended up with the same numbers as earlier files. Fix them. Signed-off-by: Simon Glass <[email protected]>
2023-07-24binman: Renumber 277_rockchip and 278_mkimage test filesSimon Glass
These have ended up with the same numbers as earlier files. Fix them. Signed-off-by: Simon Glass <[email protected]>
2023-07-24binman: Tidy up tests for pre-load entry typeSimon Glass
Drop the use of a numbered key file since numbering is just for the test devicetree files. Also adjust the tests to avoid putting a hard-coded path to binman in the file, using the entry arg instead. Signed-off-by: Simon Glass <[email protected]>
2023-07-24Merge tag 'u-boot-at91-fixes-2023.10-a' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-at91 First set of u-boot-atmel fixes for the 2023.07 cycle: This small fixes set includes the LTO configs for the boards that had the SPL size up to the limit (sama5d2-based), such that more code can be added. It also includes a fix for mmc non-removable.
2023-07-24Merge https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini
- Set up per-hart stack before any function call - Sync visionfive2 board DTS with Linux - Define cache line size for USB 3.0 driver for RISC-V CPU
2023-07-24atmel_sdhci: Force card-detect if MMC_CAP_NONREMOVABLE.Zixun LI
If the device attached to the MMC bus is not removable, set force card-detect bit to bypass card detection procedure, so card detection pin can be used for other purposes. It's also a workaround for SAMA5D2 who doesn't drive CMD if using GPIO for card detection. Signed-off-by: Zixun LI <[email protected]> Reviewed-by: Eugen Hristev <[email protected]>
2023-07-24configs: sama5d2: enable CONFIG_LTOEugen Hristev
arm-none-linux-gnueabihf-ld.bfd: u-boot-spl section `__u_boot_list' will not fit in region `.sram' arm-none-linux-gnueabihf-ld.bfd: region `.sram' overflowed by 100 bytes SPL is at limit so to stop seeing above error in built, enable link time optimizations CONFIG_LTO. Signed-off-by: Eugen Hristev <[email protected]> Tested-by: Mihai Sain <[email protected]>
2023-07-24configs: at91: sama5d2_icp_mmc: Enable CONFIG_LTOStefan Roese
Adding just a tiny bit more code for sama5d2_icp_mmc leads to a SRAM image overflow. Fix this by enabling LTO for this board, so that such changes still can be made to the common U-Boot code. Signed-off-by: Stefan Roese <[email protected]> Cc: Pali Rohár <[email protected]> Tested-by: Mihai Sain <[email protected]> [[email protected]: restrict patch just to CONFIG_LTO] Signed-off-by: Eugen Hristev <[email protected]>
2023-07-24riscv: define a cache line size for the generic CPUHeinrich Schuchardt
The USB 3.0 driver xhci-mem.c requires CONFIG_SYS_CACHELINE_SIZE to be set. Define the cache line size for QEMU on RISC-V to be 64 bytes. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2023-07-24doc: visionfive2: apply a trailing space to the promptChanho Park
Apply the trailing space changes in the guide document. Signed-off-by: Chanho Park <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24configs: visionfive2: add a trailing space to promptChanho Park
Adds a trailing space to SYS_PROMPT to make it easier to distinguish between commands and the prompt. Signed-off-by: Chanho Park <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24clk: starfive: jh7110: Add of_xlate ops and macros for clock id conversionXingyu Wu
Modify the drivers to add of_xlate ops and transform clock id. Signed-off-by: Xingyu Wu <[email protected]> Signed-off-by: Hal Feng <[email protected]> Reviewed-by: Torsten Duwe <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24dt-bindings: clock: jh7110: Modify clock id to be same with LinuxXingyu Wu
The clock id needs to be changed to be consistent with Linux. Signed-off-by: Xingyu Wu <[email protected]> Signed-off-by: Hal Feng <[email protected]> Reviewed-by: Torsten Duwe <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24riscv: dts: jh7110: Add clock source from PLLXingyu Wu
Change the PLL clock source from syscrg to sys_syscon child node. Signed-off-by: Xingyu Wu <[email protected]> Signed-off-by: Hal Feng <[email protected]> Reviewed-by: Torsten Duwe <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24riscv: dts: jh7110: Add PLL clock controller nodeXingyu Wu
Add child node about PLL clock controller in sys_syscon node. Signed-off-by: Xingyu Wu <[email protected]> Signed-off-by: Hal Feng <[email protected]> Reviewed-by: Torsten Duwe <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24clk: starfive: jh7110: Separate the PLL driverXingyu Wu
Drop the PLL part in SYSCRG driver and separate to be a single PLL driver of which the compatible is "starfive,jh7110-pll". Signed-off-by: Xingyu Wu <[email protected]> Signed-off-by: Hal Feng <[email protected]> Reviewed-by: Torsten Duwe <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-24riscv: setup per-hart stack earlierBo Gan
Harts need to use per-hart stack before any function call, even if that function is a simple one. When the callee uses stack for register save/ restore, especially RA, if nested call, concurrent access by multiple harts on the same stack will cause data-race. This patch sets up SP before `board_init_f_alloc_reserve`. A side effect of this is that the memory layout has changed as the following: +----------------+ +----------------+ <----- SPL_STACK/ | ...... | | hart 0 stack | SYS_INIT_SP_ADDR | malloc_base | +----------------+ +----------------+ | hart 1 stack | | GD | +----------------+ If not SMP, N=1 +----------------+ | ...... | | hart 0 stack | +----------------+ +----------------+ ==> | hart N-1 stack| | hart 1 stack | +----------------+ +----------------+ | ...... | | ...... | | malloc_base | +----------------+ +----------------+ | hart N-1 stack| | GD | +----------------+ +----------------+ | | | | Signed-off-by: Bo Gan <[email protected]> Cc: Rick Chen <[email protected]> Cc: Leo <[email protected]> Cc: Sean Anderson <[email protected]> Cc: Bin Meng <[email protected]> Cc: Lukas Auer <[email protected]> Reviewed-by: Rick Chen <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-07-23Merge branch '2023-07-22-TI-binman-and-K3-improvements'Tom Rini
- Migrate TI K3 platforms to using binman to generate all images, and then improve the platform slightly.
2023-07-21configs: am64: Fix booting of fitImage on AM64xKamlesh Gurudasani
Do not limit the maximum size of the buffer that is used to decompress the OS image in to, this causes issue while inflating the image, if image size is greater than the buffer. Remove CONFIG_SYS_BOOTM_LEN Signed-off-by: Kamlesh Gurudasani <[email protected]> Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21Kconfig: Enable FIT_SIGNATURE if ARM64Manorit Chawdhry
Enabling FIT_SIGNATURE required the old authentication method to be disabled so disable this for K3 SOCs and enable FIT_SIGNATURE for K3 Platforms. Signed-off-by: Kamlesh Gurudasani <[email protected]> [ cleanup the patch ] Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21lib: Kconfig: k3: Enable SHA512 for fit signatureManorit Chawdhry
We are using our custMpk for signing that is a 4096 bit key, 4096 bit rsa key requires a SHA512 hashing algorithm to be enabled as per the source. Even though it is not mandated but this is how it works and is tested. Enables SHA512 if fit signature is enabled on K3 platforms. Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21k3-*-binman: dts: Pack u-boot.dtb instead of soc specific dtbManorit Chawdhry
FIT signature requires the updates to u-boot.dtb and the DTB that we pack don't get updates with the changes of the signature node. Pack u-boot.dtb as the default DTB so that the signature node changes can be reflected in them. (Note, this is only packaging the primary platform and the secondary platform will require manual changes for the FIT signature enablement) Signed-off-by: Manorit Chawdhry <[email protected]> [ add additional boards that were missing ] Signed-off-by: Kamlesh Gurudasani <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-07-21board: ti: keys: add .key and .crt for fit signature signingManorit Chawdhry
Fit signature mechanism through the standards require the presence of .key and .crt in the folder with the same name, since we are using our custMpk only for the signing, update the format to that of standards to be compatible for packaging easily. Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21configs: k3: make consistent bootcmd across all k3 socsKamlesh Gurudasani
Default to common bootcmd that is set across all k3 devices. Signed-off-by: Manorit Chawdhry <[email protected]> Signed-off-by: Kamlesh Gurudasani <[email protected]>
2023-07-21include: armv7: Enable distroboot across all configsManorit Chawdhry
Since K3 devices are moving towards distroboot, remove duplicates and add it in common file to import from. Signed-off-by: Manorit Chawdhry <[email protected]> [trini: Add am65x_evm to this patch] Signed-off-by: Tom Rini <[email protected]>
2023-07-21env: Make common bootcmd across all k3 devicesManorit Chawdhry
This is helpful to go forward with distro_bootcmd as default boot. Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21arm: k3: Add regex/gsub command handlingAndrew Davis
The 'gsub' setexpr sub command is using when creating the FIT image configuration string on K3 devices. Enable this for K3. Signed-off-by: Andrew Davis <[email protected]> Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21configs: Enable setexpr command on TI devicesAndrew Davis
This is used when building the FIT image configuration string. Enable it for all FIT using TI platforms. Signed-off-by: Andrew Davis <[email protected]> [ extend to other k3 boards ] Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21environment: ti: Make get_fdt_mmc commonAndrew Davis
Since get_fdt_mmc is common, factor it out into mmc.env and remove it from each platform env file along with changing the directory path to reflect the standards. Use it in mmcloados but keep loadfdt defined in case it is still used by some external uEnv.txt script. Signed-off-by: Andrew Davis <[email protected]> Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21environment: ti: Prefix ARM64 DTB names with directoryAndrew Davis
In Linux the ARM64 DTSs are stored in vendor directories to help organize the files and prevent naming collisions. The deployed DTBs will mirror this and so the vendor prefix should be added to the variable used to locate these files. Suggested-by: Ryan Eatmon <[email protected]> Signed-off-by: Andrew Davis <[email protected]> Signed-off-by: Manorit Chawdhry <[email protected]> Reviewed-by: Nikhil M Jain <[email protected]>
2023-07-21configs: k3: Remove saved environmentsManorit Chawdhry
Having saved environments usually causes inconsistencies while in development workflow. The saved environments conflict with the default ones that U-boot should be updating during development but that doesn't happen and the saved environments need to be reset during bootups to test the changes causing extra debugs. Remove the saved environments as a default. Environments can always be re-enabled locally if one does like them or needs them for some production environment. Optionally, Uenv.txt can also be used on some of the boot media. Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21include: j7*_evm.h: Cleanups to be doneManorit Chawdhry
Some miscellaneous cleanups for boards. Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21mach-k3: common: correct the calculations for determining firewallsManorit Chawdhry
The background firewall calculations were wrong, fix that to determine both the background and foreground correctly. Fixes: 8bfce2f9989f ("arm: mach-k3: common: reorder removal of firewalls") Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21board: ti: am64x: am64x.env: set fdtfile env variableKamlesh Gurudasani
Set fdtfile env variable similar to other k3 socs. Signed-off-by: Kamlesh Gurudasani <[email protected]> Signed-off-by: Manorit Chawdhry <[email protected]> Reviewed-by: Nikhil M Jain <[email protected]>
2023-07-21Kconfig: j721s2: Fix the scratchpad baseManorit Chawdhry
Fix the regression that occurred during the alignment of binman series merges along with these HS fixes that caused silent regression in this. Fixes: 30a7ee87fd1a ("Kconfig: j721s2: Change K3_MCU_SCRATCHPAD_BASE to non firewalled region") Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21arch: mach-k3: security: fix the check for authenticationManorit Chawdhry
Fix regression occurred during refactoring for the mentioned commit. Fixes: bd6a24759374 ("arm: mach-k3: security: separate out validating binary logic") Signed-off-by: Manorit Chawdhry <[email protected]>
2023-07-21CI: Make use of buildman requirements.txtTom Rini
Now that buildman has a requirements.txt file we need to make use of it. Reviewed-by: Simon Glass <[email protected]> [[email protected]: Adding missing command from .azure-pipelines.yml] Signed-off-by: Neha Malcom Francis <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2023-07-21buildman: Create a requirements.txt fileTom Rini
At this point, buildman requires a few different modules and so we need a requirements.txt to track what modules are needed. Cc: Simon Glass <[email protected]> Cc: Neha Malcom Francis <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Neha Malcom Francis <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2023-07-21binman: Overwrite symlink if it already existsAndrew Davis
Without this re-building will fail with an error when trying to create the symlink for the second time with an already exists error. Signed-off-by: Andrew Davis <[email protected]> [[email protected]: Added support for test output dir and testcase] Signed-off-by: Neha Malcom Francis <[email protected]>
2023-07-21doc: board: ti: Update documentation for binman flowNeha Malcom Francis
Earlier documentation specified builds for generating bootloader images using an external TI repository k3-image-gen and core-secdev-k3. Modify this to using the binman flow so that user understands how to build the final boot images. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Neha Malcom Francis <[email protected]>
2023-07-21k3: tools: config.mk: Update makefile and remove scriptsNeha Malcom Francis
Since binman is used to package bootloader images for all K3 devices, we do not have to rely on the earlier methods to package them. Scripts that were used to generate x509 certificate for tiboot3.bin and generate tispl.bin, u-boot.img have been removed. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Neha Malcom Francis <[email protected]>
2023-07-21arm: k3-am65x-iot2050: Use binman for tispl.bin for iot2050Neha Malcom Francis
Move to using binman to generate tispl.bin which is used to generate the final flash.bin bootloader for iot2050 boards. Cc: Jan Kiszka <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Neha Malcom Francis <[email protected]>