Skip to content
Snippets Groups Projects
  1. Apr 10, 2024
  2. Mar 14, 2024
    • Jonas Karlman's avatar
      rockchip: Use common bss and stack addresses on RK3308 · 41098d2e
      Jonas Karlman authored and Kever Yang's avatar Kever Yang committed
      
      Currently the following memory layout is typically used on RK3308:
      [    0, 256K) - SPL binary
      [ 256K,   2M) - TF-A / reserved
      [   -X,   4M) - SPL pre-reloc stack (SPL_STACK)
      [  -8K,   4M)   - pre-reloc malloc heap (SPL_SYS_MALLOC_F_LEN)
      [   4M,  +8K) - SPL bss (SPL_BSS_START_ADDR, SPL_BSS_MAX_SIZE)
      [   6M,   +X) - U-Boot proper binary (TEXT_BASE)
      [   -X,   8M) - U-Boot proper pre-reloc stack (CUSTOM_SYS_INIT_SP_ADDR)
      [  -8K,   8M)   - pre-reloc malloc heap (SYS_MALLOC_F_LEN)
      [   -X,  12M) - SPL reloc stack (SPL_STACK_R_ADDR)
      [  11M,  12M)   - reloc malloc heap (SPL_STACK_R_MALLOC_SIMPLE_LEN)
      
      SPL can safely load U-Boot proper + FDT to [6M, 8M-8K) with this layout.
      
      Migrate to use common bss, stack and malloc heap size and addresses to
      remove this size limitation and extend the malloc heap size being used.
      
      Signed-off-by: default avatarJonas Karlman <jonas@kwiboo.se>
      Reviewed-by: Kever Yang's avatarKever Yang <kever.yang@rock-chips.com>
      41098d2e
  3. Feb 17, 2024
  4. Nov 17, 2023
  5. Oct 06, 2023
  6. Sep 30, 2023
  7. Sep 19, 2023
  8. Sep 05, 2023
  9. Aug 07, 2023
  10. May 06, 2023
  11. Apr 28, 2023
  12. Apr 25, 2023
  13. Apr 07, 2023
    • Hai Pham's avatar
      ARM: rmobile: Add R-Car Generation 4 support · 5a3b0742
      Hai Pham authored
      
      This adds R-Car Generation 4 (Gen4) support as Renesas ARM64 SoC.
      
      In this version, reusing R-Car Gen3 lowlevel initialize routine [1]
      and R-Car Gen3 memory map tables [2] .
      
      [1] arch/arm/mach-rmobile/lowlevel_init_gen3.S
      [2] arch/arm/mach-rmobile/memmap-gen3.c
      
      Reviewed-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      Signed-off-by: default avatarHai Pham <hai.pham.ud@renesas.com>
      Signed-off-by: default avatarMarek Vasut <marek.vasut+renesas@mailbox.org>
      [Marek: - Enable DTO support by default
              - Sort the Kconfig lists
      	- Select RCAR_64 Kconfig option to pull in all the shared
      	  Kconfig options with Gen3, and use where applicable to
      	  deduplicate entries.
      	- Fix reference [2] typo in commit message
      	- Drop config options moved to Kconfig, rename rest to CFG_
      	  accordingly to synchronize with upstream changes. Drop
      	  removed CONFIG_VERY_BIG_RAM.
              - Move board size limit to arch/Kconfig
      	- Move GICR_BASE to headers instead of common config]
      5a3b0742
  14. Mar 30, 2023
  15. Mar 27, 2023
  16. Jan 10, 2023
  17. Dec 13, 2022
  18. Dec 05, 2022
  19. Nov 10, 2022
    • Tom Rini's avatar
      Convert CONFIG_SYS_MONITOR_LEN to Kconfig · 08574ed3
      Tom Rini authored
      
      This converts the following to Kconfig:
         CONFIG_SYS_MONITOR_LEN
      
      To do this, we set a default of 0 for everyone because there are a
      number of cases where we define CONFIG_SYS_MONITOR_LEN but the only
      impact is that we set TOTAL_MALLOC_LEN to be CONFIG_SYS_MALLOC_LEN +
      CONFIG_ENV_SIZE, so we must continue to allow all boards to set this
      value. Update the SPL code to use 200 KB as the default raw U-Boot size
      directly, if we don't have a real CONFIG_SYS_MONITOR_LEN value.
      
      Signed-off-by: default avatarTom Rini <trini@konsulko.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      08574ed3
  20. Nov 07, 2022
  21. Oct 31, 2022
  22. Oct 19, 2022
    • André Przywara's avatar
      sunxi: Kconfig: introduce SUNXI_MINIMUM_DRAM_MB · 1bf98bd4
      André Przywara authored
      
      Traditionally we assumed that every Allwinner board would come with at
      least 256 MB of DRAM, and set our DRAM layout accordingly. This affected
      both the default load addresses, but also U-Boot's own address
      expectations (like being loaded at 160 MB).
      
      Some SoCs come with co-packaged DRAM, but only provide 32 or 64MB. So
      far we special-cased those *chips*, as there was only one chip per DRAM
      size. However new chips force us to take a more general approach.
      
      Introduce a Kconfig symbol, which provides the minimum DRAM size of the
      board. If nothing else is specified, we use 256 MB, and default to
      smaller values for those co-packaged SoCs.
      Then select the different DRAM maps according to this new symbol, so
      that different SoCs with the same DRAM size can share those definitions.
      
      Inspired by an idea from Icenowy.
      
      This is just refactoring: compiled for all boards before and after this
      patch: the binaries were identical.
      
      Signed-off-by: default avatarAndre Przywara <andre.przywara@arm.com>
      Reviewed-by: default avatarJernej Skrabec <jernej.skrabec@gmail.com>
      1bf98bd4
  23. Sep 26, 2022
  24. Sep 18, 2022
  25. Jun 23, 2022
    • Andrew Scull's avatar
      test: fuzz: Add framework for fuzzing · 36f641c5
      Andrew Scull authored and Tom Rini's avatar Tom Rini committed
      
      Add the basic infrastructure for declaring fuzz tests and a command to
      invoke them.
      
      Signed-off-by: default avatarAndrew Scull <ascull@google.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      36f641c5
    • Andrew Scull's avatar
      sandbox: Add support for Address Sanitizer · 1e578ed2
      Andrew Scull authored and Tom Rini's avatar Tom Rini committed
      
      Add CONFIG_ASAN to build with the Address Sanitizer. This only works
      with the sandbox so the config is likewise dependent. The resulting
      executable will have ASAN instrumentation, including the leak detector
      that can be disabled with the ASAN_OPTIONS environment variable:
      
         ASAN_OPTIONS=detect_leaks=0 ./u-boot
      
      Since u-boot uses its own dlmalloc, dynamic allocations aren't
      automatically instrumented, but stack variables and globals are.
      
      Instrumentation could be added to dlmalloc to poison and unpoison memory
      as it is allocated and deallocated, and to introduce redzones between
      allocations. Alternatively, the sandbox may be able to play games with
      the system allocator and somehow still keep the required memory
      abstraction. No effort to address dynamic allocation is made by this
      patch.
      
      The config is not yet enabled for any targets by default.
      
      Signed-off-by: default avatarAndrew Scull <ascull@google.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      1e578ed2
  26. Jun 06, 2022
    • Tom Rini's avatar
      Migrate CUSTOM_SYS_INIT_SP_ADDR to Kconfig using system-constants.h · eaf6ea6a
      Tom Rini authored
      
      - Make all users of CUSTOM_SYS_INIT_SP_ADDR reference SYS_INIT_SP_ADDR
      - Introduce HAS_CUSTOM_SYS_INIT_SP_ADDR to allow for setting the stack
        pointer directly, otherwise we use the common calculation.
      - On some platforms that were using the standard calculation but did not
        set CONFIG_SYS_INIT_RAM_SIZE / CONFIG_SYS_INIT_RAM_ADDR, set them.
      - On a small number of platforms that were not subtracting
        GENERATED_GBL_DATA_SIZE do so now via the standard calculation.
      - CONFIG_SYS_INIT_SP_OFFSET is now widely unused, so remove it from most
        board config header files.
      
      Signed-off-by: default avatarTom Rini <trini@konsulko.com>
      eaf6ea6a
    • Tom Rini's avatar
      Convert CONFIG_SYS_BARGSIZE to Kconfig · 6889412a
      Tom Rini authored
      
      This converts the following to Kconfig:
         CONFIG_SYS_BARGSIZE
      
      Signed-off-by: default avatarTom Rini <trini@konsulko.com>
      6889412a
  27. May 28, 2022
  28. May 05, 2022
  29. May 02, 2022
  30. Apr 21, 2022
    • This contributor prefers not to receive mails's avatar
      SPL: Do not enable SPL_SYS_MALLOC_SIMPLE without SPL_FRAMEWORK by default · b6169470
      This contributor prefers not to receive mails authored and Tom Rini's avatar Tom Rini committed
      
      On P2020 board is SPL malloc simple always failing with error and loops:
      
        SD boot...
        alloc space exhausted
        Bad trap at PC: f8f8b5f0, SR: 21200, vector=d00
        NIP: 00000000 XER: 00000000 LR: 00000000 REGS: f8f8b5f0 TRAP: 20000000 DAR: 00000000
        MSR: 00021200 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
      
        GPR00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        GPR08: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        GPR16: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        GPR24: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
        Call backtrace:
        Exception in kernel pc f8f8b5f0 signal 0
      
      Inspection showed that gd->malloc_limit is zero. And it is because
      generally SPL_FRAMEWORK initialize SPL's gd->malloc_limit. But when
      SPL_FRAMEWORK is not enabled then in most cases nobody initialize
      gd->malloc_limit and so SPL malloc simple does not work.
      
      So disable SPL_SYS_MALLOC_SIMPLE by default when SPL_FRAMEWORK is not
      enabled. SPL_SYS_MALLOC_SIMPLE can be disabled only by setting
      SPL_SYS_MALLOC_F_LEN to zero. So do it.
      
      This change fixes SPL error "alloc space exhausted" on P2020 board.
      
      Signed-off-by: default avatarPali Rohár <pali@kernel.org>
      b6169470
  31. Apr 20, 2022
Loading