Skip to content
Snippets Groups Projects
  1. Mar 28, 2025
  2. Mar 26, 2025
  3. Mar 25, 2025
  4. Mar 24, 2025
  5. Mar 21, 2025
  6. Mar 20, 2025
    • Stefan Eichenberger's avatar
      board: verdin-am62: remove spl_perform_fixups · 7ad54361
      Stefan Eichenberger authored
      
      spl_perform_fixups is redundant in the current implementation. SPLs call
      dram_init during spl_enable_cache in arch/arm/mach-k3/common.c. In
      U-Boot, dram_init and dram_init_banksize are automatically called in
      init_sequence_f. Therefore, SPLs and U-Boot always determine the correct
      RAM size. During Linux boot, fdt_fixup_memory_banks adjusts the RAM size
      in the Linux device tree, ensuring correct RAM usage.
      
      dram_init() calls get_ram_size() for the Verdin AM62, which determines
      the correct RAM size through read/write operations. However, due to the
      K3 bootflow placing ATF in RAM and requiring cache coherence, calling
      get_ram_size() with caches enabled prevents ATF boot. Removing this call
      restores ATF boot functionality.
      
      This fixes a regression introduced in commit 4164289d ("board:
      verdin-am62: fix missing memory fixup call") which prevents some of our
      Verdin AM62 modules from booting.
      
      Fixes: 4164289d ("board: verdin-am62: fix missing memory fixup call")
      Signed-off-by: default avatarStefan Eichenberger <stefan.eichenberger@toradex.com>
      7ad54361
  7. Mar 18, 2025
  8. Mar 17, 2025
    • Michal Simek's avatar
      cmd: version: Get information about GCC and LD back · ca3bea3f
      Michal Simek authored
      
      U-Boot version command is no longer showing information about GCC and LD.
      The reason is that version.h has been removed that's why CC_VERSION_STRING
      and LD_VERSION_STRING are not pass.
      Values are generated to generated/version_autogenerated.h which is sourced
      in version.h.
      
      Fixes: 54ecce2c ("version: Separate our version string from the version command")
      Signed-off-by: default avatarMichal Simek <michal.simek@amd.com>
      ca3bea3f
    • Tom Rini's avatar
      Merge tag 'efi-2025-04-rc5' of https://source.denx.de/u-boot/custodians/u-boot-efi · 3e806c41
      Tom Rini authored
      Pull request efi-2025-04-rc5
      
      CI:
      
      * https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/25196
      
      UEFI:
      
      * Export _start symbol from crt0_*_efi stubs
      * Move .dynamic out of .text in EFI
      * scripts/Makefile.lib: Preserve the .dynstr section as well
      
      Documentation:
      
      * net: miiphybb: Convert documentation to rst
      3e806c41
    • Tom Rini's avatar
      Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh · e1b6d514
      Tom Rini authored
      These are mainly DBSC5 DRAM controller specific fixes and updates for
      current release. There is the long overdue BL31 start V4H board code as
      well, that should be in the current release to make the V4H White Hawk
      board usable with SPL, and a fallback U-Boot PSCI implementation
      enablement to make sure the board always boots. And finally, there are
      two comment fixes.
      e1b6d514
    • Sam Edwards's avatar
      scripts/Makefile.lib: efi: Preserve the .dynstr section as well · 7f2fe3dd
      Sam Edwards authored
      
      This section is required by .dynamic and llvm-objcopy will exit with a
      fatal error if it is not also preserved in the output.
      
      Signed-off-by: default avatarSam Edwards <CFSworks@gmail.com>
      7f2fe3dd
    • Sam Edwards's avatar
      efi_loader: Move .dynamic out of .text in EFI · 408a20e0
      Sam Edwards authored
      
      EFI applications need to be relocatable. Ordinarily, this is achieved
      through a PE-format .reloc section, but since that requires toolchain
      tricks to achieve, U-Boot's EFI applications instead embed ELF-flavored
      relocation information and use it for self-relocation; thus, the
      .dynamic section needs to be preserved.
      
      Before this patch, it was tacked on to the end of .text, but this was
      not proper: A .text section is SHT_PROGBITS, while the .dynamic section
      is SHT_DYNAMIC. Attempting to combine them like this creates a section
      type mismatch. While GNU ld doesn't seem to complain, LLVM's lld
      considers this a fatal linking error.
      
      This patch moves .dynamic out to its own section, so that the output ELF
      has the correct types. (They're all mashed together when converting to
      binary anyway, so this patch causes no change in the final .efi output.)
      
      Signed-off-by: default avatarSam Edwards <CFSworks@gmail.com>
      Cc: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
      408a20e0
    • Sam Edwards's avatar
      arm: riscv: efi: Export _start symbol from crt0_*_efi stubs · 214a8775
      Sam Edwards authored
      
      While the _start label is only intended for use locally to populate the
      (hand-written) PE header, the linker script includes ENTRY(_start) which
      designates it as the entry point in the output ELF, resulting in linker
      warnings under some linkers (e.g. LLVM's lld) due to _start not being a
      globally-visible symbol. Since  ELF is only an intermediary build
      format, and the aforementioned PE header correctly points to _start, the
      ENTRY(_start) directive could easily be removed to silence this warning.
      
      However, since some developers who are debugging EFI by analyzing the
      intermediary ELF may appreciate having correct entry-point information,
      this patch instead promotes the _start labels to global symbols,
      silencing the linker warning and making the intermediary ELF reflect the
      true entry point.
      
      This patch doesn't affect the final output binaries in any way.
      
      Signed-off-by: default avatarSam Edwards <CFSworks@gmail.com>
      214a8775
    • Marek Vasut's avatar
      net: miiphybb: Convert documentation to rst · 60ea8a94
      Marek Vasut authored
      
      Convert the current miiphybb documentation to rst. Rename
      the README.bitbangMII to bitbangmii.rst in the process.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      Signed-off-by: default avatarHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
      60ea8a94
  9. Mar 16, 2025
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Make struct renesas_dbsc5_board_config public · 885fd621
      Marek Vasut authored
      
      Make struct renesas_dbsc5_board_config {} definition public via
      include/dbsc5.h, so this structure can be defined in board files
      and passed into the DBSC5 DRAM driver by overriding weak function
      dbsc5_get_board_data() on board level.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      885fd621
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Add V4H-3/V4H-5/V4H-7 OTP based detection · 74e28113
      Marek Vasut authored
      
      Add auto-detection and handling of Renesas R-Car V4H-3 and V4H-5
      in addition to V4H-7 SoC variants based on OTP fuse programming.
      The V4H-3 and V4H-5 variants have reduced DRAM frequency options.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      74e28113
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Synchronize initialization code to rev.1.10 · 9ae94d2a
      Marek Vasut authored
      
      Update the DRAM initialization code to match DBSC5 initialization code
      rev.1.10 , which is currently the latest version available. This makes
      DRAM initialization operational on Renesas R-Car V4H R8A779G0 rev.3.0.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      9ae94d2a
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Fix DBTR11 calculation · da7662f6
      Marek Vasut authored
      
      Reinstate missing increment by two in DBTR11 calculation based
      on the original DBSC5 initialization code rev.0.80. The original
      code did ... ODTLon - (js2[JS2_tODTon_min] - 1) + 1 , which was
      incorrectly converted into ODTLon - js2[JS2_tODTon_min], but
      should have been converted to ODTLon - js2[JS2_tODTon_min] + 2.
      Add the missing +2 .
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      da7662f6
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Fix JS1 index calculation · 9a106f15
      Marek Vasut authored
      
      The JS1 index is calculated correctly, but the limiter cannot
      be the max() function because the index should be lower than
      JS1_USABLEC_SPEC_HI and the max() function would unconditionally
      override the JS1 index to JS1_USABLEC_SPEC_HI. Use clamp() to
      limit the JS1 index instead.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      9a106f15
    • Marek Vasut's avatar
      ram: renesas: dbsc5: Fix bitrate MD pin parsing · 6c219e18
      Marek Vasut authored
      
      Fix copy paste error in MD pin handling for 5500 Mbps and 4800 Mbps case,
      each should be handled by MD[19,17] == 2 and MD[19,17] == 3 respectively.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      6c219e18
    • Marek Vasut's avatar
      arm64: dts: renesas: Make OTP available in SPL on R8A779G0 V4H · 15111aeb
      Marek Vasut authored
      
      The DBSC5 DRAM controller driver needs access to OTP fuses to discern
      Renesas R-Car V4H-3, V4H-5 and V4H-7 SoC variants based on OTP fuse
      programming. Make OTP block DT node available in U-Boot SPL DT so the
      DBSC5 driver can determine its base address and read out the OTP fuses.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      15111aeb
    • Marek Vasut's avatar
      arm64: renesas: Drop stale R-Car V4H SPL implementation description · 92659829
      Marek Vasut authored
      
      The R-Car V4H SPL implementation was originally running on the Cortex-R52
      core, but this is no longer the case. Majority of the SPL now runs on the
      Cortex-A76 core. Drop the stale description.
      
      Fixes: ec53fdee ("arm64: renesas: Add Renesas R-Car V4H SPL implementation")
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      92659829
    • Marek Vasut's avatar
      ARM: renesas: Drop stale common Makefile description · 56490b1e
      Marek Vasut authored
      
      Remove stale Makefile description, this used to be valid for the
      original Makefile from which the common Makefile was made generic,
      but is no longer applicable to the common Makefile.
      
      Fixes: c7d2d7f9 ("ARM: renesas: Simplify board Makefiles")
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      56490b1e
    • Marek Vasut's avatar
      arm64: renesas: Enable fallback PSCI on Renesas R-Car R8A779G0 V4H White Hawk · 9292a304
      Marek Vasut authored
      
      Enable fallback PSCI provider on Renesas R-Car R8A779G0 V4H White Hawk board.
      
      This fallback PSCI provider provides basic PSCI interface which can be used
      by the Linux kernel, but does not provide support for bringing up additional
      CPU cores or any other functionality, except for SoC level reset.
      
      This fallback PSCI provider is intended as a fallback in case a proper PSCI
      provider is not started before the Linux kernel is started. Linux kernel on
      ARMv8a will fail to boot in case a PSCI provider is not available, and this
      basic fallback PSCI provider assures such a boot failure cannot occur, even
      if that means the system will boot in degraded mode with only one CPU core
      available, that is still sufficient to perform recovery.
      
      In the common case, a proper PSCI provider should be started as part of
      the Linux kernel fitImage, as the BL31 loadable, and replace this basic
      fallback PSCI provider before the Linux kernel is started.
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      9292a304
    • Marek Vasut's avatar
      arm64: renesas: Add TFA BL31 handoff support on Renesas R-Car Gen4 · 7ddb8d99
      Marek Vasut authored
      Implement custom U_BOOT_FIT_LOADABLE_HANDLER and armv8_switch_to_el2_prep()
      handling in case the TFA was loaded. The loadables handler sets up custom
      handoff structure used by Renesas TFA fork in fixed location in DRAM and
      indicates the TFA has been loaded.
      
      The custom armv8_switch_to_el2_prep() handling tests whether the TFA BL31
      was previously loaded and the custom handoff structure was set up, and if
      so, jumps to TFA BL31 which switches from EL3 to EL2 and then returns to
      U-Boot just past bl in armv8_switch_to_el2() to finish starting the Linux
      kernel.
      
      The jump to Linux through TFA works in such a way that the custom
      armv8_switch_to_el2_prep() handler configures the custom handoff structure
      such that the target jump address of the TFA BL31 on exit is set to the
      armv8_switch_to_el2() + 4, which is just past the bl, and just before the
      U-Boot code which implements the Linux kernel boot from either EL. The
      registers passed through the TFA BL31 are all the registers passed into
      armv8_switch_to_el2_prep() to assure maximum compatibility with all the
      boot modes. The armv8_switch_to_el2_prep() handler jumps to the TFA BL31,
      which does its setup, drops EL from EL3 to EL2 and finally jumps to the
      armv8_switch_to_el2() + 4 entry point, which then allows U-Boot to boot
      the Linux kernel the usual way.
      
      In order to build suitable kernel fitImage, build TFA first, upstream
      is currently under review:
      https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/35799
      Or if necessary, downstream repository:
      remote: https://github.com/renesas-rcar/arm-trusted-firmware.git
      
      
      branch: rcar_gen4_v2.7_v4x
      
      ```
      $ git clean -fqdx
      $ MBEDTLS_DIR=/path/to/mbedtls/ make -j$(nproc) bl31 \
      	PLAT=rcar_gen4 ARCH=aarch64 LSI=V4H SPD=none \
      	CTX_INCLUDE_AARCH32_REGS=0 MBEDTLS_COMMON_MK=1 \
      	PTP_NONSECURE_ACCESS=1 LOG_LEVEL=20 DEBUG=0 \
      	ENABLE_ASSERTIONS=0 E=0
      ```
      
      Build Linux kernel Image and device tree from current mainline Linux
      kernel repository, obtain 'Image' and 'r8a779g0-white-hawk.dtb' .
      
      Bundle the files together using provided fit-image.its fitImage description:
      ```
      $ mkimage -f fit-image.its fitImage
      ```
      
      To start the kernel fiImage generated in previous step, load fitImage
      to DRAM and use the 'bootm' command to start it:
      => load 0x58000000 ... fitImage && bootm 0x58000000
      
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      7ddb8d99
  10. Mar 13, 2025
Loading