1. 09 3月, 2015 9 次提交
    • P
      ti-armv7-common: increase malloc pool len by dfu mmc file buffer size · b648a789
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Cc: Tom Rini <trini@konsulko.com>
      b648a789
    • P
      zynq-common: increase malloc pool len by dfu mmc file buffer size · 599807fc
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Cc: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
      Cc: Michal Simek <monstr@monstr.eu>
      Acked-by: NMichal Simek <michal.simek@xilinx.com>
      599807fc
    • P
      odroid-xu3: defconfig: disable memset at malloc init · 9b607380
      Przemyslaw Marczak 提交于
      Reduce the boot time of Odroid XU3 by disabling the memset
      at malloc init.
      Signed-off-by: NPrzemyslaw Marczak <p.marczak@samsung.com>
      9b607380
    • P
      odroid: defconfig: disable memset at malloc init · d51f6999
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      d51f6999
    • P
      trats2: defconfig: disable memset at malloc init · 30181266
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      30181266
    • P
      dlmalloc: do memset in malloc init as new default config · 0aa8a4ad
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      0aa8a4ad
    • P
      dfu: mmc: file buffer: remove static allocation · 41ac233c
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon 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
    • P
      arm: relocation: clear .bss section with arch memset if defined · 114c86d8
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon Glass <sjg@chromium.org>
      Cc: Albert Aribaud <albert.u.boot@aribaud.net>
      Cc: Tom Rini <trini@konsulko.com>
      114c86d8
    • P
      exynos: config: enable arch memcpy and arch memset · 929d9a29
      Przemyslaw Marczak 提交于
      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: NPrzemyslaw Marczak <p.marczak@samsung.com>
      Reviewed-by: NSimon 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
  2. 08 3月, 2015 1 次提交
  3. 06 3月, 2015 30 次提交