Skip to content
Snippets Groups Projects
  1. Mar 23, 2015
  2. Mar 18, 2015
  3. Mar 15, 2015
  4. Mar 13, 2015
  5. Mar 09, 2015
    • 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
    • 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
      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
  6. Mar 06, 2015
  7. Mar 05, 2015
  8. Mar 04, 2015
Loading