1. 25 2月, 2014 2 次提交
  2. 26 9月, 2013 1 次提交
  3. 30 5月, 2013 1 次提交
  4. 29 10月, 2012 1 次提交
    • P
      ARM: 7566/1: vfp: fix save and restore when running on pre-VFPv3 and CONFIG_VFPv3 set · 39141ddf
      Paul Walmsley 提交于
      After commit 846a1368 ("ARM: vfp: fix
      saving d16-d31 vfp registers on v6+ kernels"), the OMAP 2430SDP board
      started crashing during boot with omap2plus_defconfig:
      
      [    3.875122] mmcblk0: mmc0:e624 SD04G 3.69 GiB
      [    3.915954]  mmcblk0: p1
      [    4.086639] Internal error: Oops - undefined instruction: 0 [#1] SMP ARM
      [    4.093719] Modules linked in:
      [    4.096954] CPU: 0    Not tainted  (3.6.0-02232-g759e00b8 #570)
      [    4.103149] PC is at vfp_reload_hw+0x1c/0x44
      [    4.107666] LR is at __und_usr_fault_32+0x0/0x8
      
      It turns out that the context save/restore fix unmasked a latent bug
      in commit 5aaf2544 ("ARM: 6203/1: Make
      VFPv3 usable on ARMv6").  When CONFIG_VFPv3 is set, but the kernel is
      booted on a pre-VFPv3 core, the code attempts to save and restore the
      d16-d31 VFP registers.  These are only present on non-D16 VFPv3+, so
      this results in an undefined instruction exception.  The code didn't
      crash before commit 846a1368 because the save and restore code was
      only touching d0-d15, present on all VFP.
      
      Fix by implementing a request from Russell King to add a new HWCAP
      flag that affirmatively indicates the presence of the d16-d31
      registers:
      
         http://marc.info/?l=linux-arm-kernel&m=135013547905283&w=2
      
      and some feedback from Måns to clarify the name of the HWCAP flag.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Dave Martin <dave.martin@linaro.org>
      Cc: Måns Rullgård <mans.rullgard@linaro.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      39141ddf
  5. 12 10月, 2012 1 次提交
  6. 13 12月, 2011 1 次提交
  7. 08 7月, 2011 2 次提交
    • W
      ARM: hwcaps: add new HWCAP defines for ARMv7-A · 254cdf8e
      Will Deacon 提交于
      Modern ARMv7-A cores can optionally implement these new hardware
      features:
      
      - VFPv4:
          The latest version of the ARMv7 vector floating-point extensions,
          including hardware support for fused multiple accumulate. D16 or D32
          variants may be implemented.
      
      - Integer divide:
          The SDIV and UDIV instructions provide signed and unsigned integer
          division in hardware. When implemented, these instructions may be
          available in either both Thumb and ARM, or Thumb only.
      
      This patch adds new HWCAP defines to describe these new features. The
      integer divide capabilities are split into two bits for ARM and Thumb
      respectively. Whilst HWCAP_IDIVA should never be set if HWCAP_IDIVT is
      clear, separating the bits makes it easier to interpret from userspace.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      254cdf8e
    • W
      ARM: hwcaps: use shifts instead of hardcoded constants · 194a7f72
      Will Deacon 提交于
      The HWCAP numbers are defined as constants, each one being a power of 2.
      This has become slightly unwieldy now that we have reached 32k.
      
      This patch changes the HWCAP defines to use (1 << n) instead of coding
      the constant directly. The values remain unchanged.
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      194a7f72
  8. 09 7月, 2010 1 次提交
  9. 12 2月, 2009 1 次提交
  10. 06 11月, 2008 1 次提交
  11. 03 8月, 2008 1 次提交
  12. 19 4月, 2008 1 次提交
  13. 12 7月, 2007 1 次提交