summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-11-13str: test: Move into the lib suiteSimon Glass
There is no particular need for the str tests to have their own test suite. Move them into the lib suite instead. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13test: Move str_ut test into libSimon Glass
This test doesn't belong at the top level. Move it into the lib/ directory, to match (most of) its implementation. Rename it to drop the unnecessary _ut suffix. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13test: Move print_ut into the common suiteSimon Glass
There is no particular need for bloblist to have its own test suite. Move it into the common suite instead. Add the missing help for 'common'. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13test: Move print_ut test into commonSimon Glass
This test doesn't belong at the top level. Move it into the common/ directory, to match its implementation. Rename it to drop the unnecessary _ut suffix. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13bootm: test: Move test into bootSimon Glass
This test doesn't belong at the top level. Move it into the boot/ directory, to match its implementation. This test is currently dependent on bloblist, but the real dependency is on sandbox, so update that. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13test: Update command test to use unit-test functionsSimon Glass
Rather than enabled DEBUG and using assert(), use the unit-test functions now provided. Drop a check that causes pytest to fail. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13command: test: Move into the cmd suiteSimon Glass
The command test was the very first test written in U-Boot, some 12 years ago. It predates the unit-test subsystem and was never converted over. There is no particular need for the command test to have its own command. It is also confusing to have it separate from the normal test suites. At present this test is not run in CI. Move it into the cmd suite instead, updating it to become a unit test. One of the checks is dropped to avoid an error. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13command_ut: test: Move test into libSimon Glass
This test doesn't belong at the top level. Move it into the lib/ directory, since that is where compression is implemented. Rename it to just 'command', since it is obviously a unit test and the _ut suffix does not add much except to make it different from the names of other test files. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13compression: test: Move into the lib suiteSimon Glass
There is no particular need for compression to have its own test suite. Move it into the lib suite instead. Add the missing help for 'common' and update the docs. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13compression: test: Move test into libSimon Glass
This test doesn't belong at the top level. Move it into the lib/ directory, since that is where compression is implemented. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13test: Drop test-trace.sh and common.shSimon Glass
The trace feature is now tested in CI so there is no need for these old script. Also they don't work. Drop them. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13bloblist: test: Drop global_data declarationsSimon Glass
This pointer is not used any more, so drop the declarations. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13bloblist: test: Move test into commonSimon Glass
This test doesn't belong at the top level. Move it into the common/ directory, to match its implementation. Signed-off-by: Simon Glass <[email protected]> Tested-by: Tom Rini <[email protected]> # rpi_3, rpi_4, rpi_arm64, am64x_evm_a53, am64-sk
2024-11-13dt-bindings: interrupt-controller: remove arm-gic.h from include/Alexey Romanov
We have exactly the same in upstream bindings. Signed-off-by: Alexey Romanov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2024-11-13dt-bindings: remove axg bindings from include/Alexey Romanov
We have exactly the same in upstream bindings. Signed-off-by: Alexey Romanov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2024-11-13dt-bindings: remove a1 bindings from include/Alexey Romanov
We have exactly the same in upstream bindings. Signed-off-by: Alexey Romanov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2024-11-13arm: dts: meson: remove meson-a1.dtsiAlexey Romanov
For Amlogic A1, we have to use dtsi from dts/upstream folder. The only difference between this two files is the added cpu temperature node definition in upstream version and additional assigned-clock for USB. This patch is tested on a device with A113L SoC (AD401-like) and everything is okay. So, we can remove legacy arch/arm/dts/meson-a1.dtsi file. Signed-off-by: Alexey Romanov <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2024-11-13fs: ext4: correct error handlingHeinrich Schuchardt
After calling strdup() check the returned pointer. Avoid a memory leak if the directory is not found. Reported-by: Michael Nazzareno Trimarchi <[email protected]> Fixes: 22fdac381f98 ("fs: ext4: implement opendir, readdir, closedir") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-11-13Makefile: Fake external blob with BINMAN_ALLOW_MISSING=1Simon Glass
This flag was lost by a previous change and has never been restored. Without it, binman cannot fully handle missing blobs which are themselves inputs to mkimage. Discussion on this at [1] indicated that this was necessary but the patch was not updated. Restore the flag so that all missing blobs are reported. Link: https://patchwork.ozlabs.org/project/uboot/patch/[email protected]/ Signed-off-by: Simon Glass <[email protected]> Fixes: 93685d0dcb9 ("Makefile: With BINMAN_ALLOW_MISSING=1 don't error")
2024-11-13board: qemu-arm: select CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDRHeinrich Schuchardt
qemu_arm64_defconfig with CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=n leads to a build error: arch/arm/lib/crt0_64.S:85: Error: constant expression expected at operand 2 -- `ldr x0,=((CFG_SYS_INIT_RAM_ADDR+CFG_SYS_INIT_RAM_SIZE-480))' We do not define CFG_SYS_INIT_RAM_ADDR and CFG_SYS_INIT_RAM_SIZE for QEMU. Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-11-13test: run longjmp() test only on supported architecturesHeinrich Schuchardt
We have only implemented longjmp() on the EFI architectures. Define a symbol CONFIG_HAVE_SETJMP and have it selected by the relevant architectures. Use CONFIG_HAVE_SETJMP to decide if the longjmp test shall be built. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-11-13lib: vsprintf: fix API buildHeinrich Schuchardt
Avoid a build failure when building with CONFIG_API=y, CONFIG_EXAMPLES=y: lib/vsprintf.c:312:14: warning: ‘device_path_string’ defined but not used [-Wunused-function] 312 | static char *device_path_string(char *buf, char *end, void *dp, int field_width, | ^~~~~~~~~~~~~~~~~~ Fixes: 64b5ba4d293a ("efi_loader: make device path to text protocol customizable") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-11-13Merge patch series "lib: uuid: fix uuid_str_to_le_bin() on 32-bit"Tom Rini
Heinrich Schuchardt <[email protected]> says: The lib_test_uuid_to_le and lib lib_test_dynamic_uuid tests fail on 32-bit systems. But we never caught this in our CI because we never ran any of our C unit tests on 32-bit. Enable CONFIG_UNIT_TEST on qemu_arm_defconfig. hextoul() cannot convert a string to a 64-bit number on a 32-bit system. Use the new function hextoull() instead. Link: https://lore.kernel.org/r/[email protected]
2024-11-13configs: enable UNIT_TEST on qemu_arm_defconfigHeinrich Schuchardt
The lib_test_uuid_to_le test fails on 32-bit systems. But we never caught this in our CI because we never ran any of our C unit tests on 32-bit. Enable CONFIG_UNIT_TEST on qemu_arm_defconfig. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2024-11-13lib: uuid: fix uuid_str_to_bin() on 32-bitHeinrich Schuchardt
hextoul() cannot convert a string to a 64-bit number on a 32-bit system. Use function hextoull() instead. Reported-by: Patrick Delaunay <[email protected]> Fixes: 22c48a92cdce ("lib: uuid: supporting building as part of host tools") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Caleb Connolly <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Tested-by: Patrick Delaunay <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-13lib: uuid: fix uuid_str_to_le_bin() on 32-bitHeinrich Schuchardt
hextoul() cannot convert a string to a 64-bit number on a 32-bit system. Use function hextoull() instead. Reported-by: Patrick Delaunay <[email protected]> Fixes: 22c48a92cdce ("lib: uuid: supporting building as part of host tools") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Caleb Connolly <[email protected]> Tested-by: Patrick Delaunay <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-11-13lib: provide function hextoull()Heinrich Schuchardt
We often convert hexadecimal strings to hextoull(). Provide a wrapper function to simple_strtoull() that does not require specifying the radix. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-11-12Merge patch series "Enable https for wget"Tom Rini
Ilias Apalodimas <[email protected]> says: Hi all, This is a respin of [1] adding https support to wget. In short patch#1 enables the crypto algorithms we need in mbedTLS patches#2, #3 enable anf fix the lwIP part we need patch#4 is adding https:// parsing support in our wget patch#5 is making https:// the default for QEMU lwip defconfig so people can easily test and finaly patch#6 updates our documentation [1] https://lore.kernel.org/u-boot/[email protected]/ Link: https://lore.kernel.org/r/[email protected]
2024-11-12net: lwip: Enable https:// support for wgetIlias Apalodimas
With the recent changes of lwip & mbedTLS we can now download from https:// urls instead of just http://. Adjust our wget lwip version parsing to support both URLs. While at it adjust the default TCP window for QEMU since https seems to require at least 16384 Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2024-11-12doc: uefi: Describe UEFI HTTPs bootIlias Apalodimas
We now can use a combination og lwIP & mbedTLS and download from https://. Describe the config options needed to enable it as well as some limitations Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jerome Forissier <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2024-11-12net: lwip: Add Support Server Name Indication supportJavier Tia
SNI, or Server Name Indication, is an addition to the TLS encryption protocol that enables a client device to specify the domain name it is trying to reach in the first step of the TLS handshake, preventing common name mismatch errors and not reaching to HTTPS server that enforce this condition. Since most of the websites require it nowadays add support for it. It's worth noting that this is already sent to lwIP [0] [0] https://github.com/lwip-tcpip/lwip/pull/47 Signed-off-by: Javier Tia <[email protected]> Reviewed-by: Jerome Forissier <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2024-11-12configs: Enable https for wget on qemu arm64Ilias Apalodimas
QEMU already has an lwip variant of a defconfig. That defconfig is also configured with mbedTLS by default. So let's enable the remaining config options to enable wget for https:// as well and test that codepath in the CI Reviewed-by: Jerome Forissier <[email protected]> Reviewed-by: Peter Robinson <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2024-11-12net: lwip: Update lwIP for mbedTLS > 3.0 support and enable httpsJavier Tia
The current code support mbedTLS 2.28. Since we are using a newer version in U-Boot, update the necessary accessors and the lwIP codebase to work with mbedTLS 3.6.0. It's worth noting that the patches are already sent to lwIP [0] While at it enable LWIP_ALTCP_TLS and enable TLS support in lwIP [0] https://github.com/lwip-tcpip/lwip/pull/47 Signed-off-by: Javier Tia <[email protected]> Acked-by: Jerome Forissier <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2024-11-12mbedtls: Enable TLS 1.2 supportIlias Apalodimas
Since lwIP and mbedTLS have been merged we can tweak the config options and enable TLS1.2 support. Add RSA and ECDSA by default and enable enough block cipher modes of operation to be comatible with modern TLS requirements and webservers Reviewed-by: Raymond Mao <[email protected]> Acked-by: Jerome Forissier <[email protected]> Signed-off-by: Ilias Apalodimas <[email protected]>
2024-11-12net: wget: drop Content-Length processingJerome Forissier
We don't do anything with Content-Length except a debug print, and the strict_strtoul() call is incorrect (it always returns -EINVAL and leaves content_length to zero due to the presence of trailing characters after the decimal valuoe of Content-Length). So let's just drop this piece of code. Signed-off-by: Jerome Forissier <[email protected]>
2024-11-12configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2024-11-12Merge tag 'u-boot-stm32-20241112' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm CI: https://source.denx.de/u-boot/custodians/u-boot-stm/-/pipelines/23296 - Deduplicate DH STM32MP1xx DHSOM and DHCOR defconfigs - Fixes STM32MP1xx DHSOM and DHCOR device trees - Add support of manufacturing environment to STM32MP15xx DHSOM
2024-11-12ARM: stm32: Add optional manufacturing environment to DH STM32MP15xx DHSOMMarek Vasut
Add manufacturing environment into STM32MP15xx DH electronics DHSOM configuration. This environment is part of every board build, but only takes effect on systems booted with the dh,stm32mp15xx-dhcor-testbench device tree, i.e. systems populated with factory build of U-Boot. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12ARM: stm32: Deduplicate DH STM32MP1xx DHSOM defconfigsMarek Vasut
Deduplicate defconfigs for all DH STM32MP1xx DHSOM systems by factoring out the common parts into generic stm32mp_dhsom.config and including those using the #include <configs/...> preprocessor macro in the current set of board specific defconfigs. The preprocessor macro is applicable to defconfigs as well. This introduces no functional change, the resulting .config is identical for all DH STM32MP1xx DHSOM systems. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12ARM: stm32: Deduplicate DH STM32MP15xx DHSOM defconfigsMarek Vasut
Deduplicate defconfigs for all DH STM32MP15xx DHSOM systems by factoring out the common parts into generic stm32mp15_dhsom.config and including those using the #include <configs/...> preprocessor macro in the current set of board specific defconfigs. The preprocessor macro is applicable to defconfigs as well. This introduces no functional change, the resulting .config is identical for all DH STM32MP15xx DHSOM systems. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12ARM: dts: stm32: Sort DH STM32 DHCOM DTSIMarek Vasut
Sort the DTSI alphabetically. No functional change. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12ARM: dts: stm32: Drop duplicate pinmux on DH STM32 DHCOMMarek Vasut
The ethernet0_rmii_pins_a pinmux change has no effect on any DHSOM based hardware. The mco2_pins_a and mco2_sleep_pins_a are both part of stm32mp15-pinctrl.dtsi . Drop both pinmux changes. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12ARM: dts: stm32: Drop remnants of upstream DT switch on DH STM32 DHSOMMarek Vasut
Remove unused local DT copies after the OF_UPSTREAM conversion. Fixes: cccb29fc1270 ("ARM: dts: stm32: Switch to using upstream DT on DH STM32 DHSOM") Reported-by: Patrick Delaunay <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-11-12arm64: zynqmp: Fix pwm-fan polaritySaeed Nowshadi
In previous version of pwm driver, the polarity of pwm were implemented in reverse. In recent release, that issue in the driver is fixed, therefore, correctly set the polarity in the device tree. Signed-off-by: Saeed Nowshadi <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/3e8e38b77101335f86bca0f05b3988877bb12993.1729766551.git.michal.simek@amd.com
2024-11-12arm64: zynqmp: Configure SoC RTC on SOMMichal Simek
Use RTC available in HW on Kria SOM without using emulation that's why configure it properly and disable emulated one. Power on reset value of RTC Calibration register without battery backup is not matching with crystal frequency which leads to RTC time drift. That's why write CALIB_WRITE register with crystal frequency (0x7FFF). There is also an option to write zero so that Linux will set default value (0x7FFF) in driver probe but calibration 0 is not permited by DT schema. Co-developed-by: Srinivas Goud <[email protected]> Signed-off-by: Srinivas Goud <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/9b684faeec85381b9b8fe796aaebc2ee79f17b8e.1729663761.git.michal.simek@amd.com
2024-11-11Prepare v2025.01-rc2v2025.01-rc2Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2024-11-11Merge patch series "Fix IOVA allocation in Apple dart iommu after global LMB ↵Tom Rini
mem map changes" Janne Grunau <[email protected]> says: The changes in "Make LMB memory map global and persistent" [1] break mapping DMA memory in the USB xHCI driver when using the apple_dart iommu present on Apple silicon systems. The IOVA space used by the u-boot driver (low 4GB) and physical memory do not overlap. The physical memory on this systems starts depending on the SoC either at 0x10_0000_0000 or 0x100_0000_0000. It make no sense to manage these distinct regions in a single LMB map. In addition every device has its own iommu and IO address space so sharing a single memory map between all iommu instances is not necessary. To fix this issue restore the used subset (add, alloc and free) of the previous pointer based LMB interface with "io_" as prefix. To ensure that low level lmb functions do not use the global LMB variable reorder lib/lmb.c so that the variable is not visible. Tested with patches from my "Fix device removal order for Apple dart iommu" series [2] to fix a separate issue. The cosmetic commit has two checkpatch warnings in existing code which I ignored. [1] https://lore.kernel.org/u-boot/[email protected]/ [2] https://lore.kernel.org/u-boot/[email protected]/ Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Tom Rini <[email protected]>
2024-11-11iommu: apple: Manage IOVA separately from global LMB mem mapJanne Grunau
There is no overlap between the IOVA space managed by the iommu (here the 32-bit address space) and physical RAM on Apple silicon systems. The RAM starts at 0x10_0000_0000 or 0x100_0000_0000 so it's not possible to manage the IOVA with the global memory LMB and use 1:1 translation. In addition each device has its own iommu and does not need to share the address space with all other devices. This should not be problem for u-boot's limited use and hardware support. Restore the private per instance LMB IOVA map. Fixes: ed17a33fed2 ("lmb: make LMB memory map persistent and global") Signed-off-by: Janne Grunau <[email protected]>
2024-11-11lmb: Add basic io_lmb functionalityJanne Grunau
These functions can be used with struct lmb pointers and will be used to manage IOVA space in the apple_dart iommu driver. This restores part of the pointer base struct lmb API from before commit ed17a33fed29 ("lmb: make LMB memory map persistent and global"). io_lmb_add() and io_lmb_free() can trivially reuse exisiting lmb functions. io_lmb_setup() is separate for unique error log messages. io_lmb_alloc() is a simplified copy of _lmb_alloc_base() since the later has unused features and internal use of the global LMB memory map. Signed-off-by: Janne Grunau <[email protected]>
2024-11-11lmb: cosmetic: reorder functions and global LMB variableJanne Grunau
Low lovel LMB functionality will be used to manage IOVA space in the Apple dart iommu driver. This reordering ensures that those function can not access the global LMB memory map variable. Signed-off-by: Janne Grunau <[email protected]>