1. 20 Jul, 2020 1 commit
  2. 30 Apr, 2020 1 commit
  3. 16 Mar, 2020 1 commit
  4. 27 Jan, 2020 1 commit
  5. 18 Aug, 2019 1 commit
  6. 30 Jul, 2019 1 commit
  7. 19 Jul, 2019 1 commit
  8. 26 Apr, 2019 1 commit
    • Stefan Roese's avatar
      watchdog: Implement generic watchdog_reset() version · 06985289
      Stefan Roese authored
      This patch tries to implement a generic watchdog_reset() function that
      can be used by all boards that want to service the watchdog device in
      U-Boot. This watchdog servicing is enabled via CONFIG_WATCHDOG.
      Without this approach, new boards or platforms needed to implement a
      board specific version of this functionality, mostly copy'ing the same
      code over and over again into their board or platforms code base.
      With this new generic function, the scattered other functions are now
      removed to be replaced by the generic one. The new version also enables
      the configuration of the watchdog timeout via the DT "timeout-sec"
      property (if enabled via CONFIG_OF_CONTROL).
      This patch also adds a new flag to the GD flags, to flag that the
      watchdog is ready to use and adds the pointer to the watchdog device
      to the GD. This enables us to remove the global "watchdog_dev"
      variable, which was prone to cause problems because of its potentially
      very early use in watchdog_reset(), even before the BSS is cleared.
      Signed-off-by: Stefan Roese's avatarStefan Roese <sr@denx.de>
      Cc: Heiko Schocher <hs@denx.de>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Michal Simek <michal.simek@xilinx.com>
      Cc: "Marek Behún" <marek.behun@nic.cz>
      Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
      Cc: Maxim Sloyko <maxims@google.com>
      Cc: Erik van Luijk <evanluijk@interact.nl>
      Cc: Ryder Lee <ryder.lee@mediatek.com>
      Cc: Weijie Gao <weijie.gao@mediatek.com>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: "Álvaro Fernández Rojas" <noltari@gmail.com>
      Cc: Philippe Reynes <philippe.reynes@softathome.com>
      Cc: Christophe Leroy <christophe.leroy@c-s.fr>
      Reviewed-by: default avatarMichal Simek <michal.simek@xilinx.com>
      Tested-by: Michal Simek <michal.simek@xilinx.com> (on zcu100)
  9. 24 Apr, 2019 1 commit
    • Stefan Roese's avatar
      dm: core: Change platform specific translation-offset handling · f2100f6f
      Stefan Roese authored
      Testing has shown that the current DM implementation of a platform /
      board specific translation offset, as its needed for the SPL on MVEBU
      platforms is buggy. The translation offset is confingured too late,
      after the driver bind functions are run. This may result in incorrect
      address translations. With the current implementation its not possible
      to configure the offset earlier, as the DM code has not run at all.
      This patch now removed the set_/get_translation_offset() calls and
      moves the translation offset into the GD variable translation_offset.
      This variable will get used when CONFIG_TRANSLATION_OFFSET is enabled.
      This option is enabled only for MVEBU on ARM32 platforms, where its
      currenty needed and configured in the SPL.
      Signed-off-by: Stefan Roese's avatarStefan Roese <sr@denx.de>
      Cc: Pierre Bourdon <delroth@gmail.com>
      Cc: Baruch Siach <baruch@tkos.co.il>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Heiko Schocher <hs@denx.de>
      Cc: Tom Rini <trini@konsulko.com>
      Tested-by: default avatarPierre Bourdon <delroth@gmail.com>
      Tested-by: default avatarBaruch Siach <baruch@tkos.co.il>
  10. 10 Dec, 2018 1 commit
    • Jean-Jacques Hiblot's avatar
      lib: fdtdec: Add function re-setup the fdt more effeciently · f1d2bc90
      Jean-Jacques Hiblot authored
      In some cases it may be useful to be able to change the fdt we have been
      using and use another one instead. For example, the TI platforms uses an
      EEPROM to store board information and, based on the type of board,
      different dtbs are used by the SPL. When DM_I2C is used, a first dtb must
      be used before the I2C is initialized and only then the final dtb can be
      To speed up the process and reduce memory usage, introduce a new function
      fdtdec_setup_best_match() that re-use the DTBs loaded in memory by
      fdtdec_setup() to select the best match.
      Signed-off-by: default avatarJean-Jacques Hiblot <jjhiblot@ti.com>
      Reviewed-by: Heiko Schocher's avatarHeiko Schocher <hs@denx.de>
  11. 26 Nov, 2018 2 commits
  12. 30 Jul, 2018 1 commit
  13. 09 Jul, 2018 1 commit
  14. 07 May, 2018 1 commit
    • Tom Rini's avatar
      SPDX: Convert all of our single license tags to Linux Kernel style · 83d290c5
      Tom Rini authored
      When U-Boot started using SPDX tags we were among the early adopters and
      there weren't a lot of other examples to borrow from.  So we picked the
      area of the file that usually had a full license text and replaced it
      with an appropriate SPDX-License-Identifier: entry.  Since then, the
      Linux Kernel has adopted SPDX tags and they place it as the very first
      line in a file (except where shebangs are used, then it's second line)
      and with slightly different comment styles than us.
      In part due to community overlap, in part due to better tag visibility
      and in part for other minor reasons, switch over to that style.
      This commit changes all instances where we have a single declared
      license in the tag as both the before and after are identical in tag
      contents.  There's also a few places where I found we did not have a tag
      and have introduced one.
      Signed-off-by: Tom Rini's avatarTom Rini <trini@konsulko.com>
  15. 16 Feb, 2018 1 commit
    • York Sun's avatar
      env: Fix env_load_location · e1caa584
      York Sun authored
      Commit 7d714a24 ("env: Support multiple environments") added
      static variable env_load_location. When saving environmental
      variables, this variable is presumed to have the value set before.
      In case the value was set before relocation and U-Boot runs from a
      NOR flash, this variable wasn't writable. This causes failure when
      saving the environment. To save this location, global data must be
      used instead.
      Signed-off-by: default avatarYork Sun <york.sun@nxp.com>
      CC: Maxime Ripard <maxime.ripard@free-electrons.com>
  16. 03 Feb, 2018 1 commit
    • Simon Glass's avatar
      log: Add control over log formatting · 3b73e8d0
      Simon Glass authored
      It is useful to be able to control the output format of log records on the
      console. As a starting point, add definitions for controlling which
      elements of the log record are displayed. Use function and message as the
      default, since these are the most useful fields.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
  17. 27 Jan, 2018 1 commit
  18. 07 Dec, 2017 3 commits
  19. 16 Aug, 2017 1 commit
  20. 15 Aug, 2017 1 commit
  21. 27 Jul, 2017 1 commit
  22. 05 Jun, 2017 2 commits
    • Simon Glass's avatar
      bootstage: Support relocating boostage data · 25e7dc6a
      Simon Glass authored
      Some boards cannot access pre-relocation data after relocation. Reserve
      space for this and copy it during preparation for relocation.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
    • Simon Glass's avatar
      bootstage: Convert to use malloc() · b383d6c0
      Simon Glass authored
      At present bootstage uses the data section of the image to store its
      information. There are a few problems with this:
      - It does not work on all boards (e.g. those which run from flash before
      - Allocated strings still point back to the pre-relocation data after
      Now that U-Boot has a pre-relocation malloc() we can use this instead,
      with a pointer to the data in global_data. Update bootstage to do this and
      set up an init routine to allocate the memory.
      Now that we have a real init function, we can drop the fake 'reset' record
      and add a normal one instead.
      Note that part of the problem with allocated strings remains. They are
      reallocated but this will only work where pre-relocation memory is
      accessible after relocation.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
  23. 01 Jun, 2017 1 commit
  24. 12 May, 2017 1 commit
    • Peng Fan's avatar
      asm-generic: global_data: change timebase_l/h to unsigned int · 25112101
      Peng Fan authored
      Change type of timebase_l/h to unsigned int.
      >From lib/time.c: ((uint64_t)gd->timebase_h << 32) | gd->timebase_l;
      This piece code is based on that timebase_h and timebase_l are
      32bits width, so change the type to unsigned int.
      Signed-off-by: Peng Fan's avatarPeng Fan <peng.fan@nxp.com>
      Cc: Eddie Cai <eddie.cai.linux@gmail.com>
      Cc: Jagan Teki <jteki@openedev.com>
      Cc: York Sun <york.sun@nxp.com>
      Cc: "Robert P. J. Day" <rpjday@crashcourse.ca>
      Cc: Michal Simek <michal.simek@xilinx.com>
      Cc: Tom Rini <trini@konsulko.com>
      Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
  25. 05 Apr, 2017 1 commit
  26. 16 Mar, 2017 1 commit
    • Eddie Cai's avatar
      spl: Add spl_early_init() · 340f418a
      Eddie Cai authored
      At present malloc_base/_limit/_ptr are not initialised in spl_init() when
      we call spl_init() in board_init_f(). This is due to a recent change aimed
      at avoiding overwriting the malloc area set up on some boards by
      However if CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN is not defined, we now
      skip setting up the memory area in spl_init() which is obviously wrong.
      To fix this, add a new function spl_early_init() which can be called in
      Fixes: b3d2861e (spl: Remove overwrite of relocated malloc limit)
      Signed-off-by: default avatarEddie Cai <eddie.cai.linux@gmail.com>
      Rewrote spl_{,early_}init() to avoid duplicate code:
      Rewrite/expand commit message:
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
      Reviewed-by: default avatarEddie Cai <eddie.cai.linux@gmail.com>
  27. 23 Oct, 2016 1 commit
  28. 07 Sep, 2016 1 commit
  29. 15 Jul, 2016 1 commit
  30. 06 Jun, 2016 1 commit
  31. 08 Feb, 2016 1 commit
  32. 21 Jan, 2016 1 commit
  33. 15 Dec, 2015 1 commit
    • York Sun's avatar
      Reserve secure memory · e8149522
      York Sun authored
      Secure memory is at the end of memory, separated and reserved
      from OS, tracked by gd->secure_ram. Secure memory can host
      MMU tables, security monitor, etc. This is different from PRAM
      used to reserve private memory. PRAM offers memory at the top
      of u-boot memory, not necessarily the real end of memory for
      systems with very large DDR. Using the end of memory simplifies
      MMU setup and avoid memory fragmentation.
      "bdinfo" command shows gd->secure_ram value if this memory is
      marked as secured.
      Signed-off-by: default avatarYork Sun <yorksun@freescale.com>
  34. 20 Nov, 2015 1 commit
    • Simon Glass's avatar
      console: Add a console buffer · 9854a874
      Simon Glass authored
      It is useful to be able to record console output and provide console input
      via a buffer. This provides sandbox with the ability to run a command and
      check its output. If the console is set to silent then no visible output
      is generated.
      This also provides a means to fix the problem where tests produce unwanted
      output, such as errors or warnings. This can be confusing. We can instead
      set the console to silent and record this output. It can be checked later
      in the test if required.
      It is possible that this may prove useful for non-test situations. For
      example the console output may be suppressed for normal operations, but
      recorded and stored for access by the OS. That feature is not implemented
      at present.
      Signed-off-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
  35. 22 Oct, 2015 1 commit
  36. 17 Aug, 2015 1 commit