1. 25 2月, 2016 1 次提交
  2. 14 9月, 2015 1 次提交
  3. 04 4月, 2015 1 次提交
  4. 21 11月, 2014 1 次提交
  5. 27 8月, 2014 1 次提交
    • M
      ARM: 8129/1: errata: work around Cortex-A15 erratum 830321 using dummy strex · 2c32c65e
      Mark Rutland 提交于
      On revisions of Cortex-A15 prior to r3p3, a CLREX instruction at PL1 may
      falsely trigger a watchpoint exception, leading to potential data aborts
      during exception return and/or livelock.
      
      This patch resolves the issue in the following ways:
      
        - Replacing our uses of CLREX with a dummy STREX sequence instead (as
          we did for v6 CPUs).
      
        - Removing the clrex code from v7_exit_coherency_flush and derivatives,
          since this only exists as a minor performance improvement when
          non-cached exclusives are in use (Linux doesn't use these).
      
      Benchmarking on a variety of ARM cores revealed no measurable
      performance difference with this change applied, so the change is
      performed unconditionally and no new Kconfig entry is added.
      Signed-off-by: NMark Rutland <mark.rutland@arm.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      2c32c65e
  6. 23 7月, 2014 2 次提交
    • P
      ARM: EXYNOS: Refactored code for using PMU address via DT · 2e94ac42
      Pankaj Dubey 提交于
      Under "arm/mach-exynos" many files are using PMU register offsets.
      Since we have added support for accessing PMU base address via DT,
      now we can remove PMU mapping from exynosX_iodesc. Let's convert
      all these access using iomapped address.
      This will help us in removing static mapping of PMU base address
      as well as help in reducing dependency over machine header files.
      Thus helping for migration of PMU implementation from machine to
      driver folder which can be reused for ARM64 based SoC.
      
      Also as we have removed static mappings from "regs-pmu.h" it does
      not need map.h anymore. But "platsmp.c" needed this and till now it
      got included indirectly. So lets move header inclusion of
      "mach/map.h" from "regs-pmu.h" to "platsmp.c".
      Signed-off-by: NPankaj Dubey <pankaj.dubey@samsung.com>
      Reviewed-by: NTomasz Figa <t.figa@samsung.com>
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      2e94ac42
    • A
      ARM: EXYNOS: Support cluster power off on exynos5420/5800 · 20fe6f98
      Abhilash Kesavan 提交于
      Turning off a cluster when all 4 cores of the cluster are powered off
      saves power significantly. Powering off the A15 L2 alone gives around
      100mW in savings. Add support for powering off the A15/A7 clusters on
      exynos5420/5800.
      
      The patch enables specific register bits which ensure that:
         - cluster L2 will be turned on before the first man is powered up.
         - last man will be turned off before the cluster L2 is turned off.
         - core is powered down before powering it up.
      
      Remove the exynos_cluster_power_control function completely as we can
      rely on the above mentioned bits rather than polling the cluster power
      status register.
      Signed-off-by: NAbhilash Kesavan <a.kesavan@samsung.com>
      Acked-by: NNicolas Pitre <nico@linaro.org>
      Tested-by: NKevin Hilman <khilman@linaro.org>
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      20fe6f98
  7. 19 7月, 2014 1 次提交
  8. 18 7月, 2014 2 次提交
  9. 21 6月, 2014 1 次提交
    • D
      ARM: EXYNOS: Don't rely on firmware's secondary_cpu_start for mcpm · 7cbcb9d4
      Doug Anderson 提交于
      On exynos mcpm systems the firmware is hardcoded to jump to an address
      in SRAM (0x02073000) when secondary CPUs come up.  By default the
      firmware puts a bunch of code at that location.  That code expects the
      kernel to fill in a few slots with addresses that it uses to jump back
      to the kernel's entry point for secondary CPUs.
      
      Originally (on prerelease hardware) this firmware code contained a
      bunch of workarounds to deal with boot ROM bugs.  However on all
      shipped hardware we simply use this code to redirect to a kernel
      function for bringing up the CPUs.
      
      Let's stop relying on the code provided by the bootloader and just
      plumb in our own (simple) code jump to the kernel.  This has the nice
      benefit of fixing problems due to the fact that older bootloaders
      (like the one shipped on the Samsung Chromebook 2) might have put
      slightly different code into this location.
      
      Once suspend/resume is implemented for systems using exynos-mcpm we'll
      need to make sure we reinstall our fixed up code after resume.  ...but
      that's not anything new since IRAM (and thus the address of the
      mcpm_entry_point) is lost across suspend/resume anyway.
      Signed-off-by: NDoug Anderson <dianders@chromium.org>
      Acked-by: NKevin Hilman <khilman@linaro.org>
      Tested-by: NKevin Hilman <khilman@linaro.org>
      Acked-by: NNicolas Pitre <nico@linaro.org>
      Signed-off-by: NKukjin Kim <kgene.kim@samsung.com>
      7cbcb9d4
  10. 31 5月, 2014 2 次提交
  11. 16 5月, 2014 1 次提交