summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-12-24crypto: typo volatgeHeinrich Schuchardt
%s/volatge/voltage/g Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: Peng Fan <[email protected]>
2024-12-24doc: fit: Format image tree source exampleJ. Neuschäfer
The example in kernel_fdt.rst is inconsistently indented, making it difficult to read. Indent the example with the same standard as the other examples: Four spaces for the ReST code block and for every nesting level. Signed-off-by: J. Neuschäfer <[email protected]>
2024-12-24cmd/rng: fix long help textHeinrich Schuchardt
The number of bytes may only be specified if a device number id provided. Correct the formatting. Acked-by: Marek Behún <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-12-24cmd: bootmenu typo 'read'Heinrich Schuchardt
%s/read/reads/ Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-12-23Prepare v2025.01-rc5v2025.01-rc5Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2024-12-23Merge tag 'u-boot-imx-next-20241223' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/23987 - imx8m: Remove global ddrphy_trained_csr as it is a per board configuration. - Add DM_FLAG_ACTIVE_DMA flag for FEC network driver to avoid potential kernel crash. - Miscellaneous improvements for i.MX8M Venice Gateworks platforms.
2024-12-23configs: Resync with savedefconfigTom Rini
Resync all defconfig files using qconfig.py Signed-off-by: Tom Rini <[email protected]>
2024-12-23Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
2024-12-23imx: Use per board ddrphy_trained_csrPeng Fan
Drop global ddrphy_trained_csr which maybe different with per board ddrphy_trained_csr. DDR TOOL generates ddrphy_trained_csr for each board, using the global ddrphy_trained_csr has risk that values may be not up to date. Signed-off-by: Peng Fan <[email protected]>
2024-12-23net: fec_mxc: add DM_FLAG_ACTIVE_DMA flag for FEC network driverMeng Li
When FEC network card works as the prime one in u-boot, and is in active status, kernel might crash during booting up stage, especially working with grub. Because the DMA of FEC is still in active status, and copy data into memory if there is network data received. In this case, if kernel allocated a part of memory that has overlay with the memory used by DMA, kernel memory may be destroyed and cause kernel crashes. Because before kernel boots up really, u-boot dm_remove_devices_flags() can call the remove callback of FEC driver with DM_FLAG_ACTIVE_DMA flag. In fecmxc_remove(), phy power is disabled, so there is no data received. In this way, it makes sure that there is no DMA action, so that avoid kernel crashing occurs. Signed-off-by: Meng Li <[email protected]>
2024-12-23arm: dts: imx8mp-venice-gw7*xx: fix TPM resetTim Harvey
With an IMX8MP based SOM the SPI RST is gpio4_9 instead of gpio1_11. Fix this. Signed-off-by: Tim Harvey <[email protected]>
2024-12-23imx8m*-venice: define suitable address for SPL_LOAD_FIT_ADDRESSTim Harvey
define a suitable default address for CONFIG_SPL_LOAD_FIT_ADDRESS to make it easier on folks enabling HABv4. Signed-off-by: Tim Harvey <[email protected]>
2024-12-23drivers: misc: gsc: add support for prescaledTim Harvey
Add support for Gateworks System Controller pre-scaled ADC input. Signed-off-by: Tim Harvey <[email protected]>
2024-12-23drivers: misc: gsc: add support for fan controllerTim Harvey
Add support for Gateworks System Controller fan tach input. Signed-off-by: Tim Harvey <[email protected]>
2024-12-23spi: mxc_spi: use proper clock for SPI busTim Harvey
The mxc_get_clock function is around for compatibility with older drivers that are not clock aware. In this case asking for the clk for MXC_CSPI_CLK does not take into account there are multiple SPI busses on modern IMX SoC's and it will return the clock for the first bus which may not be used or configured. In the case you are not using the first bus you will not get the proper clock. Fix this by obtaining the clock rate from the bus clock. This resolves an invalid SPI clock frequency configuration for SPI2 on a board where SPI1 is not used. Signed-off-by: Tim Harvey <[email protected]>
2024-12-22net: rswitch: Do not register disabled ports as ethernet devicesMarek Vasut
In case an rswitch port is described as disabled in DT, do not register it as ethernet device in U-Boot. This way, such ports cannot be accessed from U-Boot command line. Signed-off-by: Marek Vasut <[email protected]>
2024-12-22ARM: renesas: Consistently enable ENV_OVERWRITE on Renesas R-CarMarek Vasut
Move CONFIG_ENV_OVERWRITE=y into commont renesas_rcar.config to make sure this configuration option is consistently enabled on all of Renesas R-Car Gen2, Gen3, Gen4. Currently this option is not enabled on Gen4, this fix corrects that omission. Signed-off-by: Marek Vasut <[email protected]>
2024-12-21Merge branch '2024-12-21-add-arm64-CI-host-support' into nextTom Rini
First, thanks to Simon Glass and also Linaro, we now have access to a few fast arm64 host machines in our Gitlab instance, to use as CI runners. This series finishes the work that I pushed earlier and Simon had started that enables arm64 hosts to be used for most things now. The first notable change, especially if you use this on your own Gitlab instance is that "DEFAULT_TAG" is now unused and we instead have: - DEFAULT_ALL_TAG: - DEFAULT_ARM64_TAG: - DEFAULT_AMD64_TAG: - DEFAULT_FAST_AMD64_TAG: This lets us say that some jobs can be run on all runners, because they are small enough that anything we'd connect to CI is fast enough and it also does not depend on the underlying host architecture. Next we have tags for any arm64 host, or any amd64 host. Finally, we have a tag for fast amd64 hosts. What these last three are for is that we have a few jobs that need to run on amd64 hosts and so we have to restrict them there, but we also have now reworked the world build jobs to build (almost) everything in a single job and on the fast amd64 machines this is still as quick as the old way was, in practice. To reach this point, we say that the Xtensa jobs can only run on amd64 hosts. Our targets only work with the binary-only toolchain and so this is a reasonable limit and we exclude them from the world build jobs. We also need to deal with ensuring the right toolchain is used regardless what the host architecture is and that we don't use the host toolchain by accident. Finally, because some of these changes needed to be worked out in the linter, fix some of the general warnings that notes as well.
2024-12-21docker: Update to latest "Jammy" tagTom Rini
Bring us up to the current Ubuntu "Jammy" tag. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21doc: Expand what we say about building the docker container a bitTom Rini
First, try and be slightly clearer about what "buildx" is with respect to the docker build process. Second, now that we build the container for both amd64 and arm64, we should document how to make a docker "builder" that has multiple nodes. With this one node should be amd64 and one node arm64, and with reasonably fast arm64 hardware this will be much quicker than using QEMU. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21docker: Prefer the kernelorg toolchains over "root"Tom Rini
We should always look in our downloaded toolchains first and then for host-provided toolchains. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21docker: Ensure we use the cross toolchain for aarch64 on arm64Tom Rini
We do not want to use the host toolchain for building our platforms in CI (it is both too old, and would be inconsistent with our CI practices). To do this we need to set the toolchain-prefix so that we don't end up guessing "/opt/.../aarch64-linux-aarch64-linux-" as the prefix. Link: https://source.denx.de/u-boot/custodians/u-boot-dm/-/issues/32 Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21Gitlab: Avoid downloading all artifacts in later stagesTom Rini
In the test.py stage of the build we mark the pytest results as artifacts to save, so that they can be used for reports. This however leads to all of the artifacts being downloaded (and then not used) in later stages. Optimize this out by using an empty list of dependencies here (which is the keyword for which artifacts are needed). Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21GitLab: Add a default workflow stanzaTom Rini
When validating our current pipeline, a warning is produced about a lack of a default workflow. For how we use it, we can add a simple default of "always". Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21GitLab CI: Make wider use of tagsTom Rini
First, introduce DEFAULT_ALL_TAG, DEFAULT_ARM64_TAG, DEFAULT_AMD64_TAG and DEFAULT_FAST_AMD64_TAG and remove the previous DEFAULT_TAG (as anyone making use of that will need to adjust their jobs). This allows us to say that some jobs can run on amd64 or arm64 hosts under the all tag, while some jobs must run on amd64 (the Xtensa jobs due to binary-only toolchains and sandbox for now) Then we rework the world build stage to only run on our very fast amd64 hosts, or our arm64 hosts (which are also very fast). This should result in a similar overall build time but also a much more consistent overall build time as we won't have the two big world jobs possibly run on our slower build nodes. Signed-off-by: Tom Rini <[email protected]>
2024-12-21docker: Use ${TCVER} more widelyTom Rini
Remove the rest of the places where we hard-code the version of the toolchain we're using. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21Docker/CI: Only test Xtensa on amd64 hostsTom Rini
The xtensa architecture is interesting in that the platforms we support are only valid on the binary-only toolchains as the DC233C instruction set requires those toolchains (and not the FSF instruction set). Only install the binary toolchain on amd64 hosts and only run the tests on them as well. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-21Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
- Two rswitch fixes and a clock fix
2024-12-20net: rswitch: Add missing cache invalidate of TX descriptorMarek Vasut
TFTP transfers of large files, for example 128 MiB, can sporadically get stuck and the transfer slows down considerably. This happens because the TX DMA descriptor in DRAM becomes out of sync with the view of the TX DMA descriptor content from the CPU side, which is viewed through the CPU caches. In order to guarantee these two views are consistent, the cache over TX DMA descriptor that has possibly been written by the rswitch hardware must first be invalidated, only then can the descriptor be cleared and updated by the CPU, and finally the cache over that area must be flushed back into DRAM to make sure the rswitch hardware has consistent view of the updated descriptor content. The very first invalidation operation was missing, which led to sporadic corruption of the TX DMA descriptor. Fix it, add the missing invalidation operation. Reported-by: Enric Balletbo i Serra <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Tested-by: Enric Balletbo i Serra <[email protected]>
2024-12-20net: renesas: Enable TFTP_TSIZE on all Renesas hardwareMarek Vasut
TFTP transfer size can be used to re-size the TFTP progress bar on single line based on the server reported file size. Enable it by default for Renesas hardware to avoid long scrolling walls of '#' character during long TFTP transfers. Signed-off-by: Marek Vasut <[email protected]>
2024-12-20clk: renesas: r8a779h0: Drop CLK_PLL2_DIV2 to clarify ZCn clocksGeert Uytterhoeven
Early revisions of the R-Car V4M Series Hardware User’s Manual contained an incorrect formula for the CPU core clocks: ZCnφ = (PLL2VCO x 1/2) x mult/32 Dang-san fixed this by using CLK_PLL2_DIV2 instead of CLK_PLL2 as the parent clock. In Rev.0.70 of the documentation, the formula was corrected to: ZCnφ = (PLL2VCO x 1/4) x mult/32 As the CPG Block Diagram now shows a separate 1/4 post-divider for PLL2, the use of CLK_PLL2_DIV2 is a recurring source of confusion. Hence get rid of CLK_PLL2_DIV2, and include the proper 1/4 post-divider in the invocation of the DEF_GEN4_Z() macro, like is done on other R-Car Gen4 (and Gen3) SoCs. Ported from Linux commit 92850bed9d4d ("clk: renesas: r8a779h0: Drop CLK_PLL2_DIV2 to clarify ZCn clocks") Reported-by: Vinh Nguyen <[email protected]> Signed-off-by: Geert Uytterhoeven <[email protected]> Link: https://lore.kernel.org/0d2789cac2bf306145fe0bbf269c2da5942bb68f.1728377724.git.geert+renesas@glider.be Signed-off-by: Marek Vasut <[email protected]>
2024-12-20Merge tag 'xilinx-for-v2025.01-rc5-v2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze AMD/Xilinx changes for v2025.01-rc5 - second - Fix find_ram_top() return to support configs > 4GB
2024-12-20common: memtop: Fix the return type for find_ram_topVenkatesh Yadav Abbarapu
As the return type is "int" for find_ram_top() function and returning the "base" which is of phys_addr_t is breaking when the "base" address is 64-bit. So fix this by updating the return type as phys_addr_t. Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]> Reviewed-by: Michal Simek <[email protected]> Acked-by: Sughosh Ganu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2024-12-19Makefile: Match the full path to ccache for filteringManorit Chawdhry
One can use ccache by keeping ccache in PATH or by providing the full path to ccache as well. Providing the full path to ccache fails as the current regex tries to look for ccache being the initial token during filtering. Do a greedy search to remove anything before ccache for regex matching. Fixes: 04b1d84221d5 ("Makefile: fix empty MK_ARCH when using ccache") Signed-off-by: Manorit Chawdhry <[email protected]>
2024-12-19imx: Fix usable memory ranges for imx8m SOCsIlias Apalodimas
commit e27bddff4b97 ("imx8m: Restrict usable memory to space below 4G boundary") tried to adjust the usable memory limits on a 4GB boundary. ram_top is described as 'top address of RAM used by U-Boot' and we want to preserve that. This is defined as a phys_addr_t and unfortunately its size differs across architectures. This has lead us to a weird state where 32bit boards define it 'SZ_4GB - 1' and 64bit boards as 'SZ_4GB' unless it was otherwise defined. With some recent LMB changes and specifically commit 1a48b0be93d4 ("lmb: prohibit allocations above ram_top even from same bank") the board fails to boot properly although the commit above is correct since it's making sure that no memory above ram_top is usable -- but added to our memory map so EFI can hand it over to the booted OS. The reason for that is that during the LMB init we add all usable memory in lmb_add_memory(). In that function any memory above ram_top gets added as 'reserved' for LMB. With the current values tha's set to 0xFFFF_FFFF for this board. Later LMB is trying to protect the memory area U-Boot lives in with lmb_reserve_common(). The latter fails though since it tries to add U-Boot top (which is 0xFFFF_FFFF as well) to U-Boot 'bottom'. This call will fail since 1 byte of that memory range is already marked as 'reserved'. Since we are close to the release, LMB seems to assume that the address is rounded up and is the 'next address' and so does parsing and adding memory ranges from DT files, bump the ram_top of the board by 1byte. In the long run we should change all of the above and have 32b and 64b platforms define ram_top identically. Add a Fixes tag although the commit is correct, so people can figure out the broken scenarios in the future. Suggested-by: Sughosh Ganu <[email protected]> Fixes: commit 1a48b0be93d4 ("lmb: prohibit allocations above ram_top even from same bank") Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Frieder Schrempf <[email protected]> Reported-by: João Paulo Gonçalves <[email protected]> Closes: https://lore.kernel.org/all/[email protected]/ Reviewed-by: Peng Fan <[email protected]> Fixes: 74f88b72219e ("ARM: imx: imx8m: Fix board_get_usable_ram_top()")
2024-12-19Revert "configs: JH7110: enable EFI_LOADER_BOUNCE_BUFFER"E Shattow
("Enable EFI_LOADER_BOUNCE_BUFFER") is not the correct fix for the problem it describes. The change of memory addressing leading to side-effects in commit 22f2c9ed9f53 ("efi: memory: use the lmb API's for allocating and freeing memory") is remedied by commit 1a48b0be93d4 ("lmb: prohibit allocations above ram_top even from same bank"). This reverts commit 9c792ab336f7146e8d49bca6d9d093d2392ded5d.
2024-12-19net: lwip: check if network device is available in do_dhcpHeinrich Schuchardt
eth_get_dev() returns NULL if no network device is available. Not checking the return value leads to a crash when the device pointer is dereferenced. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2024-12-19net: lwip: do not return CMD_RET_USAGE if no interfaceHeinrich Schuchardt
If the dns command cannot find a network interface, we should return CMD_RETFAIURE and not -1 (CMD_RET_USAGE). Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2024-12-19binman: Regenerate tools/binman/entries.rstTom Rini
There have been a few changes to the areas that this file documents without having regenerated the file. Do so now. Signed-off-by: Tom Rini <[email protected]>
2024-12-19Merge tag 'u-boot-dfu-20241219' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dfu CI: https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/23951 Android: - Fix kcmdline_extra support when parsing boot image - Fix memory leak when after bootargs concatenation - Fix length calculation when merging bootargs, cmdline and kcmdline
2024-12-19Merge branch '2024-12-19-assorted-tooling-updates' into nextTom Rini
This brings in assortment of updates to our python tooling, from Paul HENRYS <[email protected]>
2024-12-19tools: binman: etype: fit: Append DTB directory to the list of input directoriesPaul HENRYS
When specifying a directory containing DTBs with 'fit,fdt-list-dir', it can be handy not to have to also specify this directory to the input directories of binman with '-I' option and use the method tools.append_input_dirs() append it. This avoids to have to specify the DTB directory in both the device tree provided to binman and through '-I' option to binman. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19tools: u_boot_pylib: Allow to append input directories to indirPaul HENRYS
append_input_dirs() can be used to append a list of input directories to indir global list. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19tools: binman: etype: Allow to replace 'NAME' in node namesPaul HENRYS
This change allows to replace both 'SEQ' and 'NAME' keywords by respectively a sequence number and the name of the FDT to provide more flexibility in the node name for the device trees included in the FIT. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19tools: binman: Pass a list of input directory to EnsureCompiled()Paul HENRYS
Input directories can be passed to binman using the '-I' option and those input directories are now also passed to 'dtc' when run by binman. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19tools: dtoc: Allow passing optional input directoriesPaul HENRYS
An optional list of input directories can be passed to EnsureCompiled() which allows to pass a list of directories where input files can be searched. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19tools: binman: Add tests for FIT with data encrypted by mkimagePaul HENRYS
Test the property 'fit,encrypt' to encrypt FIT data. Signed-off-by: Paul HENRYS <[email protected]>
2024-12-19tools: binman: add 'fit, encrypt' property to pass keys directory to mkimagePaul HENRYS
mkimage can be used for both signing the FIT or encrypt its content and the option '-k' can be used to pass a directory where both signing and encryption keys can be retrieved. Adding 'fit,encrypt' property to the 'fit' node, leads to try to find keys directory among binman include directories. _get_priv_keys_dir() is renamed as _get_keys_dir() and adapted to support both signing and encryption nodes in the FIT. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-19aes: Allow to store randomly generated IV in the FITPaul HENRYS
When the initialisation vector is randomly generated, its value shall be stored in the FIT together with the encrypted data. The changes allow to store the IV in the FIT also in the case where the key is not stored in the DTB but retrieved somewhere else at runtime. Signed-off-by: Paul HENRYS <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-12-18powerpc: Support using upstream devicetreesJ. Neuschäfer
For new PowerPC developments, it will be useful to borrow devicetrees from Linux. This patch makes it possible. Signed-off-by: J. Neuschäfer <[email protected]> Reviewed-by: Sumit Garg <[email protected]>