1. 13 7月, 2014 3 次提交
    • H
      parisc: drop unused defines and header includes · fe22ddcb
      Helge Deller 提交于
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Cc: stable@vger.kernel.org # 3.13+
      fe22ddcb
    • H
      parisc: fix fanotify_mark() syscall on 32bit compat kernel · ab8a261b
      Helge Deller 提交于
      On parisc we can not use the existing compat implementation for fanotify_mark()
      because for the 64bit mask parameter the higher and lower 32bits are ordered
      differently than what the compat function expects from big endian
      architectures.
      
      Specifically:
      It finally turned out, that on hppa we end up with different assignments
      of parameters to kernel arguments depending on if we call the glibc
      wrapper function
       int fanotify_mark (int __fanotify_fd, unsigned int __flags,
                          uint64_t __mask, int __dfd, const char *__pathname);
      or directly calling the syscall manually
       syscall(__NR_fanotify_mark, ...)
      
      Reason is, that the syscall() function is implemented as C-function and
      because we now have the sysno as first parameter in front of the other
      parameters the compiler will unexpectedly add an empty paramenter in
      front of the u64 value to ensure the correct calling alignment for 64bit
      values.
      This means, on hppa you can't simply use syscall() to call the kernel
      fanotify_mark() function directly, but you have to use the glibc
      function instead.
      
      This patch fixes the kernel in the hppa-arch specifc coding to adjust
      the parameters in a way as if userspace calls the glibc wrapper function
      fanotify_mark().
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Cc: stable@vger.kernel.org # 3.13+
      ab8a261b
    • H
      parisc: add serial ports of C8000/1GHz machine to hardware database · eadcc720
      Helge Deller 提交于
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Cc: stable@vger.kernel.org # 3.13+
      eadcc720
  2. 11 7月, 2014 11 次提交
  3. 10 7月, 2014 1 次提交
  4. 09 7月, 2014 2 次提交
  5. 08 7月, 2014 1 次提交
  6. 05 7月, 2014 1 次提交
  7. 04 7月, 2014 4 次提交
  8. 02 7月, 2014 3 次提交
  9. 01 7月, 2014 3 次提交
    • T
      ARM: mvebu: fix cpuidle implementation to work on big-endian systems · 6509dc74
      Thomas Petazzoni 提交于
      On Marvell Armada XP, when a CPU comes back from deep idle state of
      cpuidle, it restarts its execution at armada_370_xp_cpu_resume(),
      which puts back the CPU into the coherency, and then calls the generic
      cpu_resume() function.
      
      While this works on little-endian configurations, it doesn't work on
      big-endian configurations because the CPU restarts in little-endian,
      and therefore must be switched back to big-endian to operate
      properly. To achieve this, a 'setend be' instruction must be executed
      in big-endian configurations. However, the ARM_BE8() macro that is
      used to implement nice compile-time conditional for ARM LE vs. ARM BE8
      is not easily usable in inline assembly.
      
      Therefore, this patch moves the armada_370_xp_cpu_resume() C function,
      which was anyway just a block of inline assembly, into a proper
      pmsu_ll.S file, and adds the appropriate ARM_BE8(setend be)
      instruction.
      
      Without this patch, an Armada XP big endian configuration with cpuidle
      enabled fails to boot, as it hangs as soon as one of the CPU hits the
      deep idle state.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Link: https://lkml.kernel.org/r/1404130165-3593-1-git-send-email-thomas.petazzoni@free-electrons.comSigned-off-by: NJason Cooper <jason@lakedaemon.net>
      6509dc74
    • T
      ARM: mvebu: update L2/PCIe deadlock workaround after L2CC cleanup · 01178890
      Thomas Petazzoni 提交于
      Commit 497a9230 ("ARM: mvebu:
      implement L2/PCIe deadlock workaround") introduced some logic in
      coherency.c to adjust the PL310 cache controller Device Tree node of
      Armada 375 and Armada 38x platform to include the 'arm,io-coherent'
      property if the system is running with hardware I/O coherency enabled.
      
      However, with the L2CC driver cleanup done by Russell King, the
      initialization of the L2CC driver has been moved earlier, and is now
      part of the init_IRQ() ARM function in
      arch/arm/kernel/irq.c. Therefore, calling coherency_init() in
      ->init_time() is now too late, as the Device Tree property gets added
      too late (after the L2CC driver has been initialized).
      
      In order to fix this, this commit removes the ->init_time() callback
      use in board-v7.c and replaces it with an ->init_irq() callback. We
      therefore no longer use the default ->init_irq() callback, but we now
      use the default ->init_time() callback.
      
      In this newly introduced ->init_irq() callback, we call irqchip_init()
      which is the default behavior when ->init_irq() isn't defined, and
      then do the initialization related to the coherency: SCU, coherency
      fabric, and mvebu-mbus (which is needed to start secondary CPUs).
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Link: https://lkml.kernel.org/r/1402585772-10405-4-git-send-email-thomas.petazzoni@free-electrons.comSigned-off-by: NJason Cooper <jason@lakedaemon.net>
      01178890
    • T
      ARM: mvebu: move Armada 375 external abort logic as a quirk · 752ef800
      Thomas Petazzoni 提交于
      In preparation to a small re-organization of the initialization
      sequence in board-v7.c, this commit moves the registration of the
      custom external abort handler on Armada 375 later in the boot
      sequence, and makes it more similar to the other quirks that we
      already have. There is indeed no need to register this abort handler
      particularly early, it simply needs to be registered before switching
      to userspace.
      
      In addition to this, this commit makes the registration of the custom
      abort handler conditional on Armada 375 Z1, because Armada 375 A0 and
      later iterations are not affected by the issue.
      
      This commit was tested on both Armada 375 Z1 and Armada 375 A0
      platforms.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Link: https://lkml.kernel.org/r/1402585772-10405-3-git-send-email-thomas.petazzoni@free-electrons.comSigned-off-by: NJason Cooper <jason@lakedaemon.net>
      752ef800
  10. 30 6月, 2014 1 次提交
  11. 29 6月, 2014 6 次提交
  12. 27 6月, 2014 1 次提交
    • O
      ARM: bcm: Fix bcm and multi_v7 defconfigs · bfda90cb
      Olof Johansson 提交于
      BCM (Kona/capri platform) has regressed in two ways on this release. First,
      bcm_defconfig no longer selected the appropriate MMC driver options due to
      changes in dependencies. Secondly, the new MFD and regulator drivers were not
      enabled on multi_v7_defconfig, so that caused the system to fail probing MMC
      there.
      
      Fix by enabling the new options as needed.
      
      Cc: Matt Porter <matt.porter@linaro.org>
      Cc: Christian Daudt <bcm@fixthebug.org>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      bfda90cb
  13. 26 6月, 2014 3 次提交