1. 10 Mar, 2015 3 commits
  2. 09 Mar, 2015 14 commits
    • Siva Durga Prasad Paladugu's avatar
      common: cmd_elf: Add support to disable start of application · 44c8fd3a
      Siva Durga Prasad Paladugu authored
      
      
      Added support to disable the start of application by using
      a environment variable autostart
      Signed-off-by: default avatarSiva Durga Prasad Paladugu <sivadur@xilinx.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      44c8fd3a
    • Linus Walleij's avatar
      armv8/vexpress64: make multientry conditional · 23b5877c
      Linus Walleij authored
      
      
      While the Freescale ARMv8 board LS2085A will enter U-Boot both
      on a master and a secondary (slave) CPU, this is not the common
      behaviour on ARMv8 platforms. The norm is that U-Boot is entered
      from the master CPU only, while the other CPUs are kept in
      WFI (wait for interrupt) state.
      
      The code determining which CPU we are running on is using the
      MPIDR register, but the definition of that register varies with
      platform to some extent, and handling multi-cluster platforms
      (such as the Juno) will become cumbersome. It is better to only
      enable the multiple entry code on machines that actually need
      it and disable it by default.
      
      Make the single entry default and add a special
      ARMV8_MULTIENTRY KConfig option to be used by the
      platforms that need multientry and set it for the LS2085A.
      Delete all use of the CPU_RELEASE_ADDR from the Vexpress64
      boards as it is just totally unused and misleading, and
      make it conditional in the generic start.S code.
      
      This makes the Juno platform start U-Boot properly.
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      23b5877c
    • Jan Kiszka's avatar
      common/board_r: Restore non-cached memory setup · 671fa63e
      Jan Kiszka authored
      This fixes a regression of e310b93e
      
      , affecting Ethernet on the Jetson
      TK1, e.g.
      Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
      671fa63e
    • Tom Rini's avatar
      ARM: PSCI: Rework the DT handler slightly · dd09f7e7
      Tom Rini authored
      
      
      The way the PSCI DT update happens currently means we pull in
      <asm/armv7.h> everywhere, including on ARMv8 and that in turn brings in
      <asm/io.h> for some non-PSCI related things that header needs to deal
      with.
      
      To fix this, we rework the hook slightly.  A good portion of
      arch/arm/cpu/armv7/virt-dt.c is common looking and I hope that when PSCI
      is needed on ARMv8 we can re-use this by and large.  So rename the
      current hook to psci_update_dt(), move the prototype to <asm/psci.h> and
      add an #ifdef that will make re-use later easier.
      Reported-by: default avatarYork Sun <yorksun@freescale.com>
      Cc: Marc Zyngier <marc.zyngier@arm.com>
      Cc: York Sun <yorksun@freescale.com>
      Cc: Ian Campbell <ijc@hellion.org.uk>
      Cc: Hans de Goede <hdegoede@redhat.com>
      Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
      Signed-off-by: default avatarTom Rini <trini@konsulko.com>
      Acked-by: default avatarYork Sun <yorksun@freescale.com>
      dd09f7e7
    • Przemyslaw Marczak's avatar
      tegra-common: increase malloc pool len by dfu mmc file buffer size · 52a7c98a
      Przemyslaw Marczak authored
      
      
      The dfu mmc file buffer, which was static, now is allocated
      by memalign(), so the malloc pool len should be also increased.
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Cc: Tom Warren <twarren.nvidia@gmail.com>
      52a7c98a
    • Przemyslaw Marczak's avatar
      ti-armv7-common: increase malloc pool len by dfu mmc file buffer size · b648a789
      Przemyslaw Marczak authored
      
      
      The dfu mmc file buffer, which was static, now is allocated
      by memalign(), so the malloc pool len should be also increased.
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Cc: Tom Rini <trini@konsulko.com>
      b648a789
    • Przemyslaw Marczak's avatar
      zynq-common: increase malloc pool len by dfu mmc file buffer size · 599807fc
      Przemyslaw Marczak authored
      
      
      The dfu mmc file buffer, which was static, now is allocated
      by memalign(), so the malloc pool len should be also increased.
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Cc: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
      Cc: Michal Simek <monstr@monstr.eu>
      Acked-by: default avatarMichal Simek <michal.simek@xilinx.com>
      599807fc
    • Przemyslaw Marczak's avatar
      odroid-xu3: defconfig: disable memset at malloc init · 9b607380
      Przemyslaw Marczak authored
      
      
      Reduce the boot time of Odroid XU3 by disabling the memset
      at malloc init.
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      9b607380
    • Przemyslaw Marczak's avatar
      odroid: defconfig: disable memset at malloc init · d51f6999
      Przemyslaw Marczak authored
      
      
      Reduce the boot time of Odroid X2/U3 by disabling the memset
      at malloc init.
      
      This was tested on Odroid X2.
      A quick test with checking gpio pin state using the oscilloscope.
      Boot time from start to bootcmd (change gpio state by memory write command):
      - ~228ms - before this change (arch memset enabled for .bss clear)
      - ~100ms - after this change
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      d51f6999
    • Przemyslaw Marczak's avatar
      trats2: defconfig: disable memset at malloc init · 30181266
      Przemyslaw Marczak authored
      
      
      Reduce the boot time of Trats2 by disabling the memset
      at malloc init.
      
      This was tested on Trats2.
      A quick test with trace. Boot time from start to main_loop() entry:
      - ~464ms - before this change (arch memset enabled for .bss clear)
      - ~341ms - after this change
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      30181266
    • Przemyslaw Marczak's avatar
      dlmalloc: do memset in malloc init as new default config · 0aa8a4ad
      Przemyslaw Marczak authored
      
      
      This commit introduces new config: CONFIG_SYS_MALLOC_CLEAR_ON_INIT.
      
      This config is an expert option and is enabled by default.
      
      The all amount of memory reserved for the malloc, is by default set
      to zero in mem_malloc_init(). When the malloc reserved memory exceeds
      few MiB, then the boot process can slow down.
      
      So disabling this config, is an expert option to reduce the boot time,
      and can be disabled by Kconfig.
      
      Note:
      After disable this option, only calloc() will return the pointer
      to the zeroed memory area. Previously, without this option,
      the memory pointed to untouched malloc memory region, was filled
      with zeros. So it means, that code with malloc() calls should
      be reexamined.
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      0aa8a4ad
    • Przemyslaw Marczak's avatar
      dfu: mmc: file buffer: remove static allocation · 41ac233c
      Przemyslaw Marczak authored
      
      
      For writing files, DFU implementation requires the file buffer
      with the len at least of file size. For big files it requires
      the same big buffer.
      
      Previously the file buffer was allocated as a static variable,
      so it was a part of U-Boot .bss section. For 32MiB len of buffer
      we have 32MiB of additional space, required for this section.
      
      The .bss needs to be cleared after the relocation.
      This introduces an additional boot delay at every start, but usually
      the dfu feature is not required at the standard boot, so the buffer
      should be allocated only if required.
      
      This patch removes the static allocation of this buffer,
      and alloc it with memalign after first call of function:
      - dfu_fill_entity_mmc()
      and the buffer is freed on dfu_free_entity() call.
      
      This was tested on Trats2.
      A quick test with trace. Boot time from start to main_loop() entry:
      - ~888ms - before this change (arch memset enabled for .bss clear)
      - ~464ms - after this change
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Cc: Lukasz Majewski <l.majewski@samsung.com>
      Cc: Stephen Warren <swarren@nvidia.com>
      Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
      Cc: Tom Rini <trini@konsulko.com>
      Cc: Marek Vasut <marek.vasut@gmail.com>
      41ac233c
    • Przemyslaw Marczak's avatar
      arm: relocation: clear .bss section with arch memset if defined · 114c86d8
      Przemyslaw Marczak authored
      
      
      For ARM architecture, enable the CONFIG_USE_ARCH_MEMSET/MEMCPY,
      will highly increase the memset/memcpy performance. This is able
      thanks to the ARM multiple register instructions.
      
      Unfortunatelly the relocation is done without the cache enabled,
      so it takes some time, but zeroing the BSS memory takes much more
      longer, especially for the configs with big static buffers.
      
      A quick test confirms, that the boot time improvement after using
      the arch memcpy for relocation has no significant meaning.
      The same test confirms that enable the memset for zeroing BSS,
      reduces the boot time.
      
      So this patch enables the arch memset for zeroing the BSS after
      the relocation process. For ARM boards, this can be enabled
      in board configs by defining: 'CONFIG_USE_ARCH_MEMSET'.
      
      This was tested on Trats2.
      A quick test with trace. Boot time from start to main_loop() entry:
      - ~1384ms - before this change
      -  ~888ms - after this change
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Cc: Albert Aribaud <albert.u.boot@aribaud.net>
      Cc: Tom Rini <trini@konsulko.com>
      114c86d8
    • Przemyslaw Marczak's avatar
      exynos: config: enable arch memcpy and arch memset · 929d9a29
      Przemyslaw Marczak authored
      
      
      This commit enables the following configs:
      - CONFIG_USE_ARCH_MEMCPY
      - CONFIG_USE_ARCH_MEMSET
      This increases the performance of memcpy/memset
      and also reduces the boot time.
      
      This was tested on Trats2.
      A quick test with trace. Boot time from start to main_loop() entry:
      - ~1527ms - before this change (arch memset enabled for .bss clear)
      - ~1384ms - after this change
      Signed-off-by: default avatarPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Cc: Minkyu Kang <mk7.kang@samsung.com>
      Cc: Akshay Saraswat <akshay.s@samsung.com>
      Cc: Simon Glass <sjg@chromium.org>
      Cc: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
      929d9a29
  3. 08 Mar, 2015 1 commit
  4. 06 Mar, 2015 22 commits