summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2024-11-20disk: expose partition type flagsCaleb Connolly
GPT partition tables include two bytes worth of vendor defined attributes, per partition. ChromeOS and Qualcomm both use these (with different encoding!) to handle A/B slot switching with a retry counter. Expose these via the disk_partition struct so that they can be parsed by the relevant board code. This will be used on Qualcomm boards to determine which slot we're booting on so that we can flash capsule updates to the correct one. Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Caleb Connolly <[email protected]>
2024-11-20dfu: add scsi backendCaleb Connolly
This is extremely similar to the MMC backend, but there are some notable differences. Works with a DFU string like scsi 4=u-boot-bin part 11 Where "4" is the SCSI dev number (sequential LUN across all SCSI devices) and "11" is the partition number. Reviewed-by: Mattijs Korpershoek <[email protected]> Acked-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Caleb Connolly <[email protected]>
2024-11-20dt-bindings: remove phy/phy-qcom-qmp.h in favor of dts/upstreamNeil Armstrong
The upstream version has new defines use to build DT, drop it in favor of the dts/upstream more recent one. Signed-off-by: Neil Armstrong <[email protected]> Reviewed-by: Sumit Garg <[email protected]> Reviewed-by: Caleb Connolly <[email protected]>
2024-11-19Merge tag 'xilinx-for-v2025.01-rc3-v2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze AMD/Xilinx changes for v2025.01-rc3: - microblaze: - Disable JFFS2 - fpga: - pass compatible flag to fpga_load() - zynqmp: - SOM RTC fix - SC(system controller) PMW polarity fix - Fix ram_top calculation with introducing XILINX_MINI - Fix RPU release command - versal: - Enable capsule update - Enable soft reset and Micron octal flashes - xilinx: - Align Kconfig regarding SPI_STACKED_PARALLEL - bootcount: - Add new zynqmp driver
2024-11-19microblaze: Disable JFFS2 supportMichal Simek
JFFS2 is not maintained for quite a long time and none should be using it. Please use other filesystems for flashes like UBIFS instead. Also remove jffs to MTD map but MTD map is for example that's why it won't affect anything. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/a8239acee8886229fdbff66142c46d522e3fe851.1731659933.git.michal.simek@amd.com
2024-11-18Merge tag 'efi-next-2024-11-18' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi into next CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/23430 - Prepare for implementing the EFI_HTTP_PROTOCOL: - Make wget functionality callable even if the wget command is not built (add CONFIG_WGET symbol). - Ensure that wget_with_dns() works the same with the old network stack and with lwIP. - Put server_name and port into wget_ctx. - Integrate struct wget_info into wget code. - Move ip_to_string to lib/net_utils.c
2024-11-18net: net_utils: Move ip_to_string to lib/net_utils.cAdriano Cordova
The function string_to_ip is already in net_utils, which is compiled unconditionally, but ip_to_string is currently only accessible if the legacy network stack is selected. This commit puts ip_to_string in net_utils.c and removes it from the legacy network code. Signed-off-by: Adriano Cordova <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2024-11-18fs: Use ARCH_DMA_MINALIGN as default alignment for fs_read_alloc()Nam Cao
The comment above fs_read_alloc() explains: @align: Alignment to use for memory allocation (0 for default) However, in the actual implementation, there is no alignment when @align is zero. This current default is probably fine for most cases. But for some block devices which transfer data via DMA, ARCH_DMA_MINALIGN is needed. Change the default alignment to ARCH_DMA_MINALIGN. Fixes: de7b5a8a1ac0 ("fs: Create functions to load and allocate a file") Signed-off-by: Nam Cao <[email protected]> Tested-by: Javier Fernandez Pastrana <[email protected]>
2024-11-17dm: sysinfo: Shorten the SYSINFO_ID prefixSimon Glass
We are about to add a large number of new entries. Update the prefix to be a little shorter. For SMBIOS items, use SYSID_SM_ (for System Management) which is enough to distinguish it. For now at least, it seems that most items will be for SMBIOS. Signed-off-by: Simon Glass <[email protected]> Acked-by: Raymond Mao <[email protected]>
2024-11-16global: Remove bi_sramstart/bi_sramsizeTom Rini
These fields are currently set on exactly two platforms today, and used by only one of them. Update pic32mzdask to use CFG_SYS_SRAM* in the one location it needs it and otherwise drop this field from the bd_info struct. Signed-off-by: Tom Rini <[email protected]>
2024-11-16net: wget: make wget_with_dns return value compatible with its lwip versionAdriano Cordova
There are two wget_with_dns functions, one in the legacy network stack and one in lwip, but the return values are not compatible. This commit modifies the legacy version of wget_with_dns so that the return values are compatible: 0 on success, otherwise a negative error. This way wget_with_dns can be called in a network stack agnostic way. Signed-off-by: Adriano Cordova <[email protected]>
2024-11-16net: wget: Add interface to issue wget_requests using wget_http_infoAdriano Cordova
Declare and define a global default struct wget_http_info and an interface to issue wget requests providing a custom struct wget_http_info. This code is common to legacy wget and lwip wget. The idea is that the command wget should use the default wget_http_info and other internal u-boot code can call wget_request with their own wget_http_info struct. Signed-off-by: Adriano Cordova <[email protected]>
2024-11-16net: wget: add definition of struct wget_http_infoAdriano Cordova
The struct wget_http_info exposes the HTTP information of the last HTTP request issued by wget, and it controls whether the efi bootdevice is set, and whether the buffer size needs to be checked (lwip stack only). This information is otherwise discarded. The wget_http_info struct can be used by HTTP drivers to have more control over HTTP requests. Signed-off-by: Adriano Cordova <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2024-11-15common: memtop: add logic to detect ram_topSughosh Ganu
Add generic logic to determine the ram_top value for boards. Earlier, this was achieved in an indirect manner through a set of LMB API's. That has since changed so that the LMB code is available only after relocation. Replace those LMB calls with a single call to get_mem_top() to determine the value of ram_top. Signed-off-by: Sughosh Ganu <[email protected]> Reviewed-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2024-11-14lwip: fix code style issuesJerome Forissier
Fix various code style issues in the lwIP code. Reported-by: Tom Rini <[email protected]> Signed-off-by: Jerome Forissier <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-11-14Merge tag 'u-boot-amlogic-next-20241113' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic into next - khadas-vim3{l}: fix userdata size for android config - drop A1 dtsi and other bindings includes in favor of Upstream ones
2024-11-13Merge patch series "test: Tidy up the test/ directory"Tom Rini
Simon Glass <[email protected]> says: Some tests do not use the unit-test framework. Others are in a suite of their own, for no obvious reason. This series tidies this up. Link: https://lore.kernel.org/r/[email protected]
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-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-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-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-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-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-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-11Merge tag 'u-boot-rockchip-20241111' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-rockchip CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/23280 - Add board: rk3328: FriendlyElec NanoPi R2S Plus rk3568: Qnap TS433 rk3588: Cool Pi CM5 GenBook - Move rk3399_force_power_on_reset to TPL for puma board;
2024-11-11board: rockchip: Add support for rk3588 GenBookAndy Yan
Add support for Cool Pi GenBook, it works as a carrier board connect with CM5 SOM. Specification: - Rockchip RK3588 - LPDDR5X 8/32 GB - eMMC 64 GB - HDMI Type A out x 1 - USB 3.0 Host x 1 - USB-C 3.0 with DisplayPort AltMode - PCIE M.2 E Key for RTL8852BE Wireless connection - PCIE M.2 M Key for NVME connection - eDP panel with 1920x1080 Tested by Armbian boot on USB disk. Change-Id: I4d9b8572dc7c400077dde666633f3fea1b47dd03 Signed-off-by: Andy Yan <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2024-11-11rockchip: Make it possible to define per board boot_targetsAndy Yan
Some board may want to have a different boot priority(a laptop may want to usb has the highest boot priority for third-part os installation). So let the board can define it's own boot_targets. Signed-off-by: Andy Yan <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2024-11-11board: rockchip: add support for Qnap TS433 devicesHeiko Stuebner
The Qnap TS433 is a 4-bay NAS based around the RK3568. Two SATA bays are connected to the RK3568's own SATA controllers while the other two are connected to a JMicron SATA controller living on the PCIe bus. It provides one 2.5Gb and one 1Gb ethernet port as well as 3 usb ports. Signed-off-by: Heiko Stuebner <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2024-11-10Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
2024-11-10mtd: spi-nor: Fix integer overflow in stacked memories supportMarek Vasut
The 5d40b3d384dc ("mtd: spi-nor: Add parallel and stacked memories support") adds new SPI bus flags, but also introduces a completely new set of SPI bus flags in another location. The existing flags field is type u8, while the new separate flags are BIT(8) and higher. Use of those new flags triggers integer overflow. Drop the newly introduced flags which were never used anywhere in the code. Move the one remaining flag which was used in the correct place and change it from BIT(8) to BIT(6) so it fits the u8 flags. Fixes: 5d40b3d384dc ("mtd: spi-nor: Add parallel and stacked memories support") Addresses-Coverity-ID: 510804 Extra high-order bits Reported-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-11-10dt-bindings: Drop unused RZ/G2L devicetree bindingsPaul Barker
We are now using the dts/upstream subtree for the RZ/G2L SoC family so we can drop unused dt-bindings headers. Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2024-11-09Merge tag 'u-boot-imx-master-20241105' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/23262 - Improve imx9 boot medium autodection. - Add possibility to skip DCD on i.MX8. - Switch to using upstream DT on DH i.MX6 DHCOM. - Add support for i.MX6DL DHCOM SoM on PDK2 carrier board. - Handle FIELD_RETURN on i.MX HAB.
2024-11-09tools: imx8image: add possibility to skip dcdHeiko Schocher
Currently U-Boot always adds DCD Image to boot container. On imx8qxp SoC it is possible to init RAM from within SCFW, and adding a DCD image type to the boot container in this case breaks booting (No debug output anymore from SCFW! Nor any output from SPL), so we need to configure a dcd skip somehow. This patch adds a new imx8image_cmd entry CMD_DCD_SKIP and a new entry in imximage.cfg "DCD_SKIP". If set to "true" no DCD image type will be added to the container. Signed-off-by: Heiko Schocher <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2024-11-09imx9: Improve boot mode autodetectionBenjamin Szőke
Improve "mmcautodetect=yes" boot mode autodetection to able to use it if CONFIG_ENV_IS_NOWHERE=y is used for i.MX9 SoCs and i.MX93 EVK board. If both CONFIG_ENV_IS_IN_MMC=y and CONFIG_ENV_IS_NOWHERE=y are in the defconfig, CONFIG_ENV_IS_IN_MMC=y will be overiden default CONFIG_ENV_IS_NOWHERE settings. Goal is in this patch to able to use the boot mode autodetection if defconfig use only CONFIG_ENV_IS_NOWHERE=y option (without CONFIG_ENV_IS_IN_MMC) for any i.MX9 SoC. Signed-off-by: Benjamin Szőke <[email protected]>
2024-11-09sandbox: Report host default-filename in native modeSimon Glass
When the --native flag is given, pretend to be running the host architecture rather than sandbox. Allow the same control for PXE too. Signed-off-by: Simon Glass <[email protected]>
2024-11-09efi_loader: Move get_efi_pxe_arch() to efi_helperSimon Glass
Move this function from the EFI bootmeth to the common efi_helper file. No functional change is intended. Signed-off-by: Simon Glass <[email protected]>
2024-11-09efi: Move default filename to a functionSimon Glass
Use a function to obtain the device EFI filename, so that we can control how sandbox behaves. Signed-off-by: Simon Glass <[email protected]>
2024-11-09efi_loader: Change efi_dp_from_mem() to use sizeMoritz Fischer
All call sites are using size rather than end addresses, so instead - as previously done - calculating an end address everywhere, just modify the function to use size and internally calculate the end address Cc: Heinrich Schuchardt <[email protected]> Cc: Ilias Apalodimas <[email protected]> Cc: Patrick Wildt <[email protected]> Signed-off-by: Moritz Fischer <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2024-11-08configs: khadas-vim3{l}: fix userdata sizeGuillaume La Roque
After increase boot and recovery partition userdata was not resize. so on VIM3 16GB and VIM3L `fastboot oem format` or `gpt write mmc 2 $partitions` fail because end of last partition is outside of eMMC size. Remove 64MB on userdata partitions to fix it. Fixes: ce138d9742bf ("configs: khadas-vim3{l}: Increase boot/recovery partition size") Signed-off-by: Guillaume La Roque <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2024-11-04bootmenu: add reprint checkWeijie Gao
Record the last active menu item and check if it equals to the current selected item before reprint. Signed-off-by: Weijie Gao <[email protected]> Reviewed-by: Daniel Golle <[email protected]> Tested-by: Daniel Golle <[email protected]>
2024-11-04menu: add support to check if menu needs to be reprintedWeijie Gao
This patch adds a new callback named need_reprint for menu. The need_reprint will be called before printing the menu. If the callback exists and returns FALSE, menu printing will be canceled. This is very useful if the menu was not changed. It can save time for serial-based menu to handle more input data. Signed-off-by: Weijie Gao <[email protected]> Reviewed-by: Daniel Golle <[email protected]> Tested-by: Daniel Golle <[email protected]>
2024-11-04Merge patch series "U-boot: arm: Refine the booting on Total Compute"Tom Rini
Leo Yan <[email protected]> says: This patch series is to refine the booting on Arm Total Compuate platform. It changes to use the info passed in DTB for initialization DRAM info, and dynamically initializes the booting envoironment variables. Another big change is to use an envoironment file for boot commands, based on it, the series extends to support multiple block devices (MMC and virtio). And the env file is extended for booting Debian. The last commit is to update memory mapping info based on the DRAM info passed via DT binding. Link: https://lore.kernel.org/r/[email protected]
2024-11-04arm: total_compute: move the boot command to an env fileBoyan Karatotev
The boot command for Total Compute has many aspects and changes from time to time. So move it to an .env file where it can be a proper script. Signed-off-by: Boyan Karatotev <[email protected]> Signed-off-by: Leo Yan <[email protected]>
2024-11-04arm: total_compute: Remove unused bootm_sizeBoyan Karatotev
The whole DRAM bank is used for loading and U-boot can detect the overlap between the kernel and initramfs. So it is safe to drop bootm_size. Signed-off-by: Boyan Karatotev <[email protected]> Signed-off-by: Leo Yan <[email protected]>
2024-11-04arm: total_compute: Initialize environment variablesBoyan Karatotev
Initialize the environment variables 'fdt_addr_r' and 'kernel_addr_r' during the misc init phase. The static configurations are not needed, remove them. Signed-off-by: Boyan Karatotev <[email protected]> Signed-off-by: Leo Yan <[email protected]>
2024-11-04arm: total_compute: depend on TF-A for hardware descriptionBoyan Karatotev
On Total Compute, TF-A passes the info via DT binding for the hardware description - includes the serial, memory, and arm_ffa nodes. This commit initializes the fdt base address based on the passed the register x1. The similar implementation has already been done for the raspberry pi, so borrow a lot of it. Co-developed-by: Jackson Cooper-Driver <[email protected]> Signed-off-by: Jackson Cooper-Driver <[email protected]> Signed-off-by: Boyan Karatotev <[email protected]> Signed-off-by: Leo Yan <[email protected]>
2024-11-03test: Allow saving and restoring the bloblistSimon Glass
Tests which create a new bloblist overwrite the existing one in sandbox. Provide a flag for tests to declare this behaviour. Save and restore the bloblist pointer so that other tests remain unaffected. Note that when sandbox is running normally, the bloblist has been relocated to high in memory. The existing bloblist tests create a new bloblist low in memory, so they do not conflict. Correct a build error on coreboot by using accessors for gd->bloblist: Signed-off-by: Simon Glass <[email protected]>
2024-11-03log: Add a new category for testsSimon Glass
In some core test code, no existing categories make sense. Add a new one for testing. Signed-off-by: Simon Glass <[email protected]>