1. 13 11月, 2015 1 次提交
  2. 25 10月, 2015 1 次提交
    • B
      allow LED initialization without STATUS_LED_BOOT · 13cfbe51
      Bernhard Nortmann 提交于
      For current U-Boot to initialize status LEDs via status_led_init(), it
      is required to have both CONFIG_STATUS_LED and STATUS_LED_BOOT defined.
      This may be a particular concern with GPIO LEDs, where __led_init() is
      required to correctly set up the GPIO (gpio_request and
      gpio_direction_output). Without STATUS_LED_BOOT the initialization isn't
      called, which could leave the user with a non-functional "led" command -
      due to the fact that the LED routines in gpio_led.c use gpio_set_value()
      just fine, but the GPIO never got set up properly in the first place.
      
      I think having CONFIG_STATUS_LED is sufficient to justify a
      corresponding call to status_led_init(), even with no STATUS_LED_BOOT
      defined. To do so, common/board_r.c needs call that routine, so it now
      is exposed via status_led.h.
      Signed-off-by: NBernhard Nortmann <bernhard.nortmann@web.de>
      [trini: Add dummy __led_init to pca9551_led.c]
      Signed-off-by: NTom Rini <trini@konsulko.com>
      13cfbe51
  3. 23 10月, 2015 2 次提交
  4. 28 8月, 2015 1 次提交
  5. 10 5月, 2015 1 次提交
    • S
      ppc4xx: Remove sc3 board · 27e72156
      Stefan Roese 提交于
      As this board seems to be unmaintained for quite some time, and its
      not moved to the generic board ingrastructure, lets remove it.
      
      This will also enable us to remove the CONFIG_AUTOBOOT_DELAY_STR2
      and CONFIG_AUTOBOOT_STOP_STR2 macros, as this sc3 board is the
      only one using one of this macros. A removal patch will follow
      soon.
      Signed-off-by: NStefan Roese <sr@denx.de>
      Cc: Heiko Schocher <hs@denx.de>
      Cc: Wolfgang Denk <wd@denx.de>
      Cc: Juergen Beisert <jbeisert@eurodsn.de>
      Acked-by: NHeiko Schocher <hs@denx.de>
      27e72156
  6. 01 5月, 2015 1 次提交
  7. 23 4月, 2015 1 次提交
    • Y
      armv8/fsl-lsch3: Update early MMU table · 12eaf31c
      York Sun 提交于
      During booting, IFC is mapped to low region. After booting up, IFC is
      remapped to high region for larger space. The environmental variables are
      also stored at high region. In order to read the variables during booting,
      a virtual mapping is required.
      
      Cache was enabled for entire IFC space before. Actually the first two
      entries are big enough (4MB) to cover the boot code and environmental
      variables. Remove extra entries. Move OCRAM entry out of ifdef.
      Signed-off-by: NYork Sun <yorksun@freescale.com>
      12eaf31c
  8. 19 4月, 2015 3 次提交
  9. 17 4月, 2015 1 次提交
    • S
      dm: pci: Add a uclass for PCI · ff3e077b
      Simon Glass 提交于
      Add a uclass for PCI controllers and a generic one for PCI devices. Adjust
      the 'pci' command and the existing PCI support to work with this new uclass.
      Keep most of the compatibility code in a separate file so that it can be
      removed one day.
      
      TODO: Add more header file comments to the new parts of pci.h
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      ff3e077b
  10. 09 3月, 2015 1 次提交
  11. 06 3月, 2015 2 次提交
  12. 18 2月, 2015 2 次提交
  13. 09 2月, 2015 2 次提交
  14. 30 1月, 2015 1 次提交
  15. 19 12月, 2014 2 次提交
    • T
      ARM: Implement non-cached memory support · 1dfdd9ba
      Thierry Reding 提交于
      Implement an API that can be used by drivers to allocate memory from a
      pool that is mapped uncached. This is useful if drivers would otherwise
      need to do extensive cache maintenance (or explicitly maintaining the
      cache isn't safe).
      
      The API is protected using the new CONFIG_SYS_NONCACHED_MEMORY setting.
      Boards can set this to the size to be used for the non-cached area. The
      area will typically be right below the malloc() area, but architectures
      should take care of aligning the beginning and end of the area to honor
      any mapping restrictions. Architectures must also ensure that mappings
      established for this area do not overlap with the malloc() area (which
      should remain cached for improved performance).
      
      While the API is currently only implemented for ARM v7, it should be
      generic enough to allow other architectures to implement it as well.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      Signed-off-by: NTom Warren <twarren@nvidia.com>
      1dfdd9ba
    • T
      ARM: Implement non-cached memory support · ed710457
      Thierry Reding 提交于
      Implement an API that can be used by drivers to allocate memory from a
      pool that is mapped uncached. This is useful if drivers would otherwise
      need to do extensive cache maintenance (or explicitly maintaining the
      cache isn't safe).
      
      The API is protected using the new CONFIG_SYS_NONCACHED_MEMORY setting.
      Boards can set this to the size to be used for the non-cached area. The
      area will typically be right below the malloc() area, but architectures
      should take care of aligning the beginning and end of the area to honor
      any mapping restrictions. Architectures must also ensure that mappings
      established for this area do not overlap with the malloc() area (which
      should remain cached for improved performance).
      
      While the API is currently only implemented for ARM v7, it should be
      generic enough to allow other architectures to implement it as well.
      Signed-off-by: NThierry Reding <treding@nvidia.com>
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      ed710457
  16. 08 12月, 2014 2 次提交
  17. 25 11月, 2014 3 次提交
  18. 21 11月, 2014 1 次提交
    • S
      dm: Split the simple malloc() implementation into its own file · c9356be3
      Simon Glass 提交于
      The simple malloc() implementation is used when memory is tight. It provides
      a simple buffer with an incrementing pointer.
      
      At present the implementation is inside dlmalloc. Move it into its own file
      so that it is easier to find.
      
      Rather than using relocation as a signal that the full malloc() is
      available, add a special GD_FLG_FULL_MALLOC_INIT flag. This signals that the
      simple malloc() should no longer be used.
      
      In some cases, such as SPL, even the code space used by the full malloc() is
      wasteful. Add a CONFIG_SYS_MALLOC_SIMPLE option to provide only the simple
      malloc. In this case the full malloc is not available at all. It saves about
      1KB of code space and about 0.5KB of data on Thumb 2.
      Acked-by: NTom Rini <trini@ti.com>
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      c9356be3
  19. 25 10月, 2014 2 次提交
  20. 23 10月, 2014 1 次提交
  21. 10 10月, 2014 2 次提交
  22. 11 9月, 2014 2 次提交
    • S
      dm: Make driver model available before board_init() · 9fb02491
      Simon Glass 提交于
      For some boards board_init() will change GPIOs, so we need to have driver
      model available before then. Adjust the board init to arrange this, but
      enable it for driver model only, just to be safe.
      
      This does create additional #ifdef logic, but it is safer than trying to
      make a pervasive change which may cause some boards to break.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      9fb02491
    • S
      Set up stdio earlier when using driver model · 294b91a5
      Simon Glass 提交于
      Since driver model registers itself with the stdio subsystem, and we
      want to avoid delayed registration and other complexity associated with
      the current serial console, move the stdio subsystem init earlier when
      driver model is used for serial.
      
      This simplifies the implementation. Should there be any problems with
      this approach they can be dealt with as boards are converted over to
      use driver model for serial.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      294b91a5
  23. 09 9月, 2014 1 次提交
  24. 24 8月, 2014 1 次提交
  25. 09 8月, 2014 1 次提交
  26. 23 7月, 2014 2 次提交
    • S
      dm: Support driver model prior to relocation · ab7cd627
      Simon Glass 提交于
      Initialise devices marked 'pre-reloc' and make them available prior to
      relocation. Note that this requires pre-reloc malloc() to be available.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      ab7cd627
    • S
      dm: Allow drivers to be marked 'before relocation' · 00606d7e
      Simon Glass 提交于
      Driver model currently only operates after relocation is complete. In this
      state U-Boot typically has a small amount of memory available. In adding
      support for driver model prior to relocation we must try to use as little
      memory as possible.
      
      In addition, on some machines the memory has not be inited and/or the CPU
      is not running at full speed or the data cache is off. These can reduce
      execution performance, so the less initialisation that is done before
      relocation the better.
      
      An immediately-obvious improvement is to only initialise drivers which are
      actually going to be used before relocation. On many boards the only such
      driver is a serial UART, so this provides a very large potential benefit.
      
      Allow drivers to mark themselves as 'pre-reloc' which means that they will
      be initialised prior to relocation. This can be done either with a driver
      flag or with a 'dm,pre-reloc' device tree property.
      
      To support this, the various dm scanning function now take a 'pre_reloc_only'
      parameter which indicates that only drivers marked pre-reloc should be
      bound.
      Signed-off-by: NSimon Glass <sjg@chromium.org>
      00606d7e