summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-24Merge branch 'next' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-marvell into next - mvebu: kwboot: Fix UART booting (Pali) - mvebu: doc: Misc updates / fixes (Pali) - kirkwood: Early init enhancements, e.g. for DEBUG UART (Pali & Tony) - mvebu: Enable NAND flash for Thecus N2350 board (Tony) - mvebu: Set common SPI flash default speed and mode (Tony)
2023-03-24tools: kwboot: Document information about NOR XIPPali Rohár
Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24tools: kwboot: Workaround A38x BootROM bug for images with a gapPali Rohár
A38x BootROM has a bug which cause that BootROM loads data part of UART image into RAM target address increased by one byte when source address and header size stored in the image header are not same. Workaround this bug by completely removing a gap between header and data part of the UART image. Without gap, this BootROM bug is not triggered. This gap can be present in SDIO or SATA image types which have aligned start of the data part to the media sector size. With this workaround kwboot should be able to convert and send SDIO or SATA images for UART booting. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24tools: kwboot: Fix sending very small imagesPali Rohár
Sending of very small images (smaller than 128 bytes = xmodem block size) cause out-of-bound memory read access. Fix this issue by ensuring that hdrsz when sending image is not larger than total size of the image. Issue was introduced in commit f8017c37799c ("tools: kwboot: Fix sending Kirkwood v0 images"). Special case when total image is smaller than header size aligned to multiply of xmodem size is already handled since that commit. Fixes: f8017c37799c ("tools: kwboot: Fix sending Kirkwood v0 images") Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24tools: kwboot: Fix inserting UART data checksum without -B optionPali Rohár
Commit 7665ed2fa04e ("tools: kwboot: Fix parsing UART image without data checksum") added fixup code to insert place for data checksum if UART image does not have it. Together with option -B (change baudrate), kwboot calculates this checksum. Without option -B, it inserts only place for checksum but does not calculate it. This commit fix above logic and calculate data checksum also when kwboot is used without -B option. Fixes: 7665ed2fa04e ("tools: kwboot: Fix parsing UART image without data checksum") Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24tools: kwboot: Fix invalid UART kwbimage v1 headerszPali Rohár
Ensure that UART aligned header size is always stored into kwbimage v1 header. It is needed for proper UART booting. Calculation of headersz field was broken in commit d656f5a0ee22 ("tools: kwboot: Calculate real used space in kwbimage header when calling kwboot_img_grow_hdr()") which introduced optimization of kwboot_img_grow_hdr() function. Fixes: d656f5a0ee22 ("tools: kwboot: Calculate real used space in kwbimage header when calling kwboot_img_grow_hdr()") Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24tools: kwbimage: Fix invalid UART kwbimage v1 headerszPali Rohár
Armada 385 BootROM ignores low 7 bits of headersz when parsing kwbimage header of UART type, which effectively means that headersz is rounded down to multiply of 128 bytes. For all other image types BootROM reads and use all bits of headersz. Therefore fill into UART type of kwbimage v1 headersz aligned to 128 bytes. Fixes: 2b0980c24027 ("tools: kwbimage: Fill the real header size into the main header") Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24ddr: marvell: a38x: Remove unused file seq_exec.hPali Rohár
DDR code does not use seq_exec.h, so remove it. Signed-off-by: Pali Rohár <pali@kernel.org>
2023-03-24arm: kirkwood: Enable Debug UART for Zyxel NSA310STony Dinh
It's useful to enable Debug UART for future DM Serial regression tests for Kirkwood boards. Also, see background discussion in this thread: https://lists.denx.de/pipermail/u-boot/2023-March/512010.html Signed-off-by: Tony Dinh <mibodhi@gmail.com> Reviewed-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24arm: kirkwood: Move internal registers in arch_very_early_init() functionPali Rohár
Same change as was done for mvebu in commit 5bb2c550b11e ("arm: mvebu: Move internal registers in arch_very_early_init() function") but for kirkwood. Signed-off-by: Pali Rohár <pali@kernel.org> Tested-by: Tony Dinh <mibodhi@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24doc/kwboot.1: Update Armada 38x BootROM bug descriptionPali Rohár
Replace SPI-NOR by default boot source location as bug is not SPI-NOR related. Signed-off-by: Pali Rohár <pali@kernel.org>
2023-03-24arm: mvebu: Set common SPI flash default speed and modeTony Dinh
CONFIG_SF_DEFAULT_SPEED is used in SPL SPI to configure and probe the flash device during DM SPI uclass probing process, if the spi-max-frequency is not available in the DTB. Currently the max frequency is not available, because of the probing mechanism in SPI uclass has not been fully updated to DM. The CONFIG_SF_DEFAULT_SPEED is set to 1Mhz if a board defconfig does not specify it. This speed is too slow and result in a few seconds delay while the u-boot image is loaded from flash. Based on a survey of the device tree specifications for MVEBU boards, a sane default value should be 10Mhz. The default of 10Mhz enables an almost instantaneously loading of the u-boot image. Note that this patch depends on this patch series (has been merged to u-boot-marvell/next): https://lists.denx.de/pipermail/u-boot/2023-March/511038.html - RESEND: correct spelling of SF_DEFAULT_MODE Signed-off-by: Tony Dinh <mibodhi@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de>
2023-03-24arm: mvebu: Enable NAND flash for Thecus N2350 boardTony Dinh
Enable 512MB PXA3XX NAND flash when u-boot is running. Signed-off-by: Tony Dinh <mibodhi@gmail.com> Acked-by: Pali Rohár
2023-03-22Merge branch '2023-03-22-assorted-minor-code-cleanups' into nextTom Rini
- Minor code cleanups based on problems found by clang or enabling LTO.
2023-03-22purism: librem5: Fix a function declaration in spl.cTom Rini
Here we implement usb_gadget_handle_interrupts() but did not include <linux/usb/gadget.h> so did not have the declaration correct. Fix this and add the missing include. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-03-22examples: Don't use LTO for hello_worldTom Rini
If we're building U-Boot with LTO, we don't want to use that for examples as it's more work than required. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22spl: Add function prototype for spl_mmc_get_uboot_raw_sectorTom Rini
We did not add a prototype for spl_mmc_get_uboot_raw_sector to include/spl.h before, so add and document one now. Correct the incorrect prototype in board/advantech/imx8mp_rsb3720a1/imx8mp_rsb3720a1.c and ensure that we have spl.h where we define a non-weak spl_mmc_get_uboot_raw_sector as well. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-03-22arm: Correct cpu_reset function prototype on some platformsTom Rini
Some platforms were not including <cpu_func.h> which sets the prototype for reset_cpu, and in turn had it set wrong. Correct these cases. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-03-22proftool: Remove unused variables in make_flame_treeTom Rini
With clang-15 we now get reported that in the make_flame_tree function, neither the missing_count nor depth variables are used, only incremenete/decremented. Remove these. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22imx8image: Remove unused cont_img_count variableTom Rini
With clang-15, it is now reported that cont_img_count is unused. This is true as the code will increment / reset this counter, but never functionally use it. Remove it. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-03-22zlib: trees.c: Fix a warning with clang-15Tom Rini
With clang-15 we now will get warnings such as: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] And it is easy enough to address this warning here, even if we would like to stay in sync more with upstream as it's a single location. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22libavb: Fix a warning with clang-15Tom Rini
With clang-15 we now will get warnings such as: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] And it is easy enough to address this warning here, as we aren't concerned with re-syncing with an upstream. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22dlmalloc: Fix a warning with clang-15Tom Rini
With clang-15 we now will get warnings such as: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] And it is easy enough to address this warning here, as we aren't concerned with re-syncing with an upstream. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22global: Disable deprecated-non-prototype warning with clangTom Rini
We have a number of places in the code which use the following syntax: void func(a, b, c) int a; /* Does a */ something_t *b; /* Pointer to b */ int c; /* Does c */ { ... } Which while not what we document as our coding style, this is also code which we have imported from other projects, and would like to re-sync with in the future. While the biggest example of this is the zlib code, there are other places as well. For now, we will silence this warning. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-22Merge branch '2023-03-21-assorted-CI-updates' into nextTom Rini
- Assorted improvements to our GitLab and Azure infrastructure.
2023-03-21CI: Allow a mirror to be specified for Docker HubPeter Hoyes
To conserve bandwidth and potentially avoid rate limits, allow a local mirror of Docker Hub to be specified globally. The default value is unchanged. Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2023-03-21CI: Allow job tag to be optionally set globallyPeter Hoyes
The default behavior of Gitlab runners is to only run jobs which match the configured tag, although there is an option to run untagged jobs [1]. To support running the CI in more complex environments where different types of runners may be present that support different tags, allow the DEFAULT_TAG for all jobs in the pipeline to be set globally using an environment variable. An empty default value is provided to retain support for untagged runners. [1] https://docs.gitlab.com/ee/ci/runners/configure_runners.html#use-tags-to-control-which-jobs-a-runner-can-run Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2023-03-21CI: gitlab: Collect pytest artifactsMarek Vasut
Copy build artifacts for all test.py tests, so they show up in artifacts storage for later inspection. The test.py tests output in CI is basically useless, but it is far more useful in the html output for analysis and debugging. Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> Suggested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-21Azure CI: Be explicit about pytest cache directoryTom Rini
The default pytest cache directory is in a read-only directory in Azure, which results in a warning on the build page. Use the pytest command line option to set the cache dir to somewhere writable. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-21Azure CI: Save pytest output automaticallyTom Rini
Enable use of the python-azurepipelines package which provides automatic formatting and uploading of the pytest output. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-03-21Dockerfile: Update to latest "Jammy" tagTom Rini
Update to using the latest "Jammy" tag as our base. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-03-21Dockerfile: Add m68k-softmmu to qemuTom Rini
Given efforts to add an m68k target to CI, build qemu for it. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-20Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-sh ↵Tom Rini
into next
2023-03-20Merge branch '2023-03-17-improve-read-command-add-write-command' into nextTom Rini
To quote the author: The first patch simplies do_read somewhat by making use of an existing helper instead of parsing the dev_part string manually. As a bonus (and my actual motivation), it now understands dev#partname syntax - hard-coded partition numbers are so last decade. I also need the symmetrical operation, being able to write to a named raw partition, and fortunately it doesn't require that many lines of code to implement that. There's a very minor change in the error reporting due to using cmdtp->name to generate the new messages, but I don't think "Error reading blocks" offers much that "read error" doesn't. New in v2: the last three patches add documentation, ensure CMD_WRITE is set for sandbox and adds some basic test cases for the various ways of accessing the partitions (by number, name, or as raw offset within the whole disk). v3: Add Simon's R-b to patches 2, 4, 5, fixup whitespace in patch 5. I don't want to duplicate the documentation, but I can see the value in 'write' having its own entry in the TOC, so I added a stub write.rst that just refers to the read.rst, which then explicitly documents both.
2023-03-18serial: sh: Make indent consistentMarek Vasut
Make the indent of these macro elements consistent with the rest of this table. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18serial: sh: Add DEBUG_UART supportMarek Vasut
Add support for debug output very early during boot using the DEBUG_UART mechanism. This uses a static fixed UART port configuration selected via Kconfig options and dedicated print functions from debug_uart.h. This is useful e.g. when debugging problems so early during boot, that not even the DM is initialized at that point, and thus DM_SERIAL is not available either. This functionality is disabled by default. To activate it, define the following Kconfig options and select SCIF type using CFG_SCI/CFG_SCIF_A/ CFG_HSCIF/<nothing for regular SCIF>: CONFIG_DEBUG_UART=y CONFIG_DEBUG_UART_SCIF=y CONFIG_DEBUG_UART_BASE=0xe6540000 CONFIG_DEBUG_UART_CLOCK=24000000 The later two options define the SCIF physical base address and SCIF input clock in Hz. Optionally, to validate DEBUG_UART works, enable the following as well to get early serial output message by default: CONFIG_DEBUG_UART_ANNOUNCE=y Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18serial: sh: Rename CONFIG_SCI and CONFIG_SCIF_USE_EXT_CLK to CFG_ variantsMarek Vasut
Both CONFIG_SCI and CONFIG_SCIF_USE_EXT_CLK options do not have a matching Kconfig entry because they are internal to the SCIF driver. Change their prefix to CFG_, i.e. CFG_SCIF_USE_EXT_CLK and CFG_SCI, to reflect that and avoid interferring with Kconfig symbols. Since neither of those options are defined elsewhere, no functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18pinctrl: renesas: Replace ifdeffery with IS_ENABLED()Marek Vasut
Switch ifdef in sh_gpio_get_value() to IS_ENABLED() macro. The CONFIG_RCAR_GEN3 will never have SPL counterpart, so the IS_ENABLED() macro is the right one here. No functional change, except for improved build test coverage. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18net: ravb: Support fixed PHY in R-CarMikhail Lappo
Calling old U-Boot API doesn't allow to use fixed PHY. Searching by mask is the part of new function, after scanning FDT for a fixed PHY definition Fixes: e821a7bdb13 ("net: ravb: Detect PHY correctly") Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Signed-off-by: Mikhail Lappo <mikhail.lappo@esrlabs.com> Signed-off-by: Hai Pham <hai.pham.ud@renesas.com> [Hai Pham: Drop phy_connect_dev since it's called in phy_connect] Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> [Marek: Use mask -1 instead of 0 to reinstate the search behavior over all PHY addresses. Add Fixes tag, sort the tag list.]
2023-03-18i2c: rcar_i2c: Sort Kconfig depends list ascendingMarek Vasut
Sort the list of "depends" symbols in ascending order. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Heiko Schocher <hs@denx.de>
2023-03-18i2c: rcar_iic: Sort Kconfig depends list ascendingMarek Vasut
Sort the list of "depends" symbols in ascending order. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Heiko Schocher <hs@denx.de>
2023-03-18clk: renesas: rcar-gen3: Replace SSCG caching with MDSEL/PE cachingMarek Vasut
Do not cache the single CPG MODE register bit 12, instead cache the entire register value, and only pick the matching bit from the cached value when core clock of type MDSEL or PE are used. Both MDSEL and PE clock type currently define .offset field as 12 on Gen3, which means this code will use bit 12 on Gen3 again, however there are additional clock on Gen4 which use different bits, and having this flexibility in place now will be useful when adding Gen4. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: rmobile: Split R-Car Gen3 into separate Kconfig from common 64bit optionsMarek Vasut
There are multiple shared Kconfig options between R-Car Gen3 and Gen4. Keep the common options in Kconfig.64 and move the R-Car Gen3 specific options into separate Kconfig.rcar3 . The Kconfig.rcar3 contains SoC and board list, which is limited to R-Car Gen3. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: rmobile: Introduce CONFIG_RCAR_64 symbolMarek Vasut
Introduce common Kconfig symbol for 64bit R-Car platforms and move common configuration options into it. This is preparatory patch to prevent duplication of Kconfig lists later on, when Gen4 is added. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: rmobile: Factor out SYS_SOC Kconfig optionMarek Vasut
Pull the SYS_SOC Kconfig option to avoid duplication of this option in Kconfig.{32,64,rza1} . The default value is the same, so just set it in one location. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: rmobile: Sort R-Car Gen3 Kconfig listsMarek Vasut
Sort the 'imply' and 'select' lists in R-Car Gen3 Kconfig options. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: rmobile: Convert ifdef in rmobile_get_prr() to IS_ENABLED()Marek Vasut
Switch ifdef in rmobile_get_prr() to IS_ENABLED() macro. The CONFIG_RCAR_GEN3 will never have SPL counterpart, so the IS_ENABLED() macro is the right one here. No functional change, except for improved build test coverage. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: renesas: falcon: Enable RWDT reset for V3U FalconHai Pham
Enable RWDT reset on Reset Controller so that it can be used as reset trigger source for V3U Falcon. Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Signed-off-by: Hai Pham <hai.pham.ud@renesas.com> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> # Use one current_el() in board_init
2023-03-18ARM: renesas: falcon: Initialize ARM generic timer and GICv3 if EL3Hai Pham
U-Boot executes at EL3 is required to initalize those settings. In other cases, they will be done by prior-stage firmware instead. This fixes crash when U-Boot is at non-secure exception level. Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Signed-off-by: Hai Pham <hai.pham.ud@renesas.com> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2023-03-18ARM: renesas: Enable DTO support by default on R-Car Gen3Marek Vasut
All R-Car Gen3 defconfigs present in U-Boot do enable DTO support, enable it for all of R-Car Gen3 by default in Kconfig instead, so that no new boards would miss this functionality. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>