3913 Commits

Author SHA1 Message Date
Vladimir Murzin
acda5430be ARM: KVM: Support vgic-v3
This patch allows to build and use vgic-v3 in 32-bit mode.

Unfortunately, it can not be split in several steps without extra
stubs to keep patches independent and bisectable.  For instance,
virt/kvm/arm/vgic/vgic-v3.c uses function from vgic-v3-sr.c, handling
access to GICv3 cpu interface from the guest requires vgic_v3.vgic_sre
to be already defined.

It is how support has been done:

* handle SGI requests from the guest

* report configured SRE on access to GICv3 cpu interface from the guest

* required vgic-v3 macros are provided via uapi.h

* static keys are used to select GIC backend

* to make vgic-v3 build KVM_ARM_VGIC_V3 guard is removed along with
  the static inlines

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-09-22 13:22:21 +02:00
Vladimir Murzin
7a1ff70828 KVM: arm64: vgic-its: Introduce config option to guard ITS specific code
By now ITS code guarded with KVM_ARM_VGIC_V3 config option which was
introduced to hide everything specific to vgic-v3 from 32-bit world.
We are going to support vgic-v3 in 32-bit world and KVM_ARM_VGIC_V3
will gone, but we don't have support for ITS there yet and we need to
continue keeping ITS away.
Introduce the new config option to prevent ITS code being build in
32-bit mode when support for vgic-v3 is done.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-09-22 13:21:47 +02:00
Vladimir Murzin
19f0ece439 arm64: KVM: Move vgic-v3 save/restore to virt/kvm/arm/hyp
So we can reuse the code under arch/arm

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-09-22 13:21:46 +02:00
Vladimir Murzin
b5525ce898 arm64: KVM: Move GIC accessors to arch_gicv3.h
Since we are going to share vgic-v3 save/restore code with ARM keep
arch specific accessors separately.

Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-09-22 13:21:46 +02:00
Vladimir Murzin
5a7a8426b2 arm64: KVM: Use static keys for selecting the GIC backend
Currently GIC backend is selected via alternative framework and this
is fine. We are going to introduce vgic-v3 to 32-bit world and there
we don't have patching framework in hand, so we can either check
support for GICv3 every time we need to choose which backend to use or
try to optimise it by using static keys. The later looks quite
promising because we can share logic involved in selecting GIC backend
between architectures if both uses static keys.

This patch moves arm64 from alternative to static keys framework for
selecting GIC backend. For that we embed static key into vgic_global
and enable the key during vgic initialisation based on what has
already been exposed by the host GIC driver.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2016-09-22 13:21:35 +02:00
Laura Abbott
ca219452c6 arm64: Correctly bounds check virt_addr_valid
virt_addr_valid is supposed to return true if and only if virt_to_page
returns a valid page structure. The current macro does math on whatever
address is given and passes that to pfn_valid to verify. vmalloc and
module addresses can happen to generate a pfn that 'happens' to be
valid. Fix this by only performing the pfn_valid check on addresses that
have the potential to be valid.

Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-22 10:17:22 +01:00
Thomas Gleixner
464b5847e6 Merge branch 'irq/urgent' into irq/core
Merge urgent fixes so pending patches for 4.9 can be applied.
2016-09-20 23:20:32 +02:00
Joerg Roedel
6e0a16673c Merge branch 'for-joerg/arm-smmu/updates' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into arm/smmu 2016-09-20 13:24:14 +02:00
Paul Gortmaker
0edfa83916 arm64: migrate exception table users off module.h and onto extable.h
These files were only including module.h for exception table
related functions.  We've now separated that content out into its
own file "extable.h" so now move over to that and avoid all the
extra header content in module.h that we don't really need to compile
these files.

Cc: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-20 09:36:21 +01:00
Ingo Molnar
b2c16e1efd Merge branch 'linus' into x86/asm, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-20 08:29:21 +02:00
Arnd Bergmann
a119a2c4c0 ZTE arm64 defconfig updates for 4.9:
- Enable ZTE ZX family support in arm64 defconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJX25FiAAoJEFBXWFqHsHzOzJ4IAKAxI7W3Ubnhdxdu8akLYm6a
 VHtnqSyr43kKCUEbg05+oTmPzXVF7YdnYmZpyy2mhA9+wpGC6vSwtSDM6Tj8KN8H
 ZGzR5Op94GPN3RnLRyGlplltMEbH4I8l6A7SsiJ5VB4Uab2x4bmBagW/vG0O+XuP
 exzGQoqlrI5N2gmiSf6P+2Y1oEM+JvClvWPdb9zkMb0B4i8kNJgh+efyNaCv7m/R
 v0s9f9AhhK3Saj2TSaJuGuZNHw9vZpDUiOuyTOvnc35bJLjy0AsWqw4BfK8NegQE
 4tgXiyVdZxOHvUtAQgw7b2Wkcxo+407zDJE1q6HxR2uudpuTHm0hyWxN62MuXm8=
 =zgWs
 -----END PGP SIGNATURE-----

Merge tag 'zte-defconfig64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/arm64

Pull "ZTE arm64 defconfig updates for 4.9" from Shawn Guo:
 - Enable ZTE ZX family support in arm64 defconfig

* tag 'zte-defconfig64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: defconfig: enable ZTE ZX related config
2016-09-19 22:35:21 +02:00
Arnd Bergmann
6f9a53ee23 ZTE arm64 SoC changes for 4.9:
- Add a Kconfig option for ZTE ZX SoC family support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJX25GmAAoJEFBXWFqHsHzOIh4H/30QlDQQyiPzTeKIn0Tfriyj
 aL13JVMxCIdGGLN3U1ruZReVwlBMnr14uWsjl7lFT3+VeOSEwyXbCzwn1SKGQ7uh
 GQ91KColUy2iFpWnhRCQHPUSUlBUq4R1qR4apP8laaM/xfS7QpG6dghzYcbwnrYG
 U51SLecjN234Oca5z7B1kIlOnxSxexEZfPIP2XfT1+ju+NyyU0yjSnLlAAgYVtbW
 SNAqrHj4gaZBe7VZB5hfE1ABPVjaXP8f8lkO9ihMHjR5tqEgfgZmayWKdVpR6Ky6
 7y0UzUBIuu9WDCvvTqIEXahG3Up+/eeN6lqi4XBlnBGJee+5LBGQ8iyamh5B7CY=
 =RDGI
 -----END PGP SIGNATURE-----

Merge tag 'zte-soc64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/arm64

Pull "ZTE arm64 SoC changes for 4.9" from Shawn Guo:
 - Add a Kconfig option for ZTE ZX SoC family support

* tag 'zte-soc64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: add ZTE ZX SoC family
2016-09-19 22:34:26 +02:00
Arnd Bergmann
80d9cf3474 ZTE arm64 device tree changes for 4.9:
- Add initial DTS support for ZTE ZX296718 SoC and ZX296718 EVB board.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJX22SoAAoJEFBXWFqHsHzOypkIAIj88TKFW6IWuiM+mFwu2Q3X
 3sqKB11szxucCd8XYHUQ/wknZX33sDSj63mUbYN20Mb4AbA7u1KG/hR6mBIq3no7
 xnIDixq6kIMmt3dY6OEgu3qlkEQnrbopcp7bt3N1QtXNtQazt5WWStSzBwAz1Qsq
 QQMUjoOyp3sx3E48HiAmPo2R8oh231w44aKS87YU7IIa3Ld9SyNW6/t8sAAhqvWH
 1DLFNgZ968jmbb46BylPSHslMSmjrv1HR+5nZ3zNOQeDcRvLqi7+z9xqhwJUVr08
 DXh90RaZNSULHlMWL3lEBLR9KTlca2+08c4ax5YOVeAQjaf+ZUAQUPGod+IBW7M=
 =KfUg
 -----END PGP SIGNATURE-----

Merge tag 'zte-dt64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt64

Pull "ZTE arm64 device tree changes for 4.9" from Shawn Guo:

 - Add initial DTS support for ZTE ZX296718 SoC and ZX296718 EVB board.

* tag 'zte-dt64-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: Add ZTE ZX296718 SoC dts and Makefile
2016-09-19 22:32:27 +02:00
Arnd Bergmann
85f8f5938c X-gene DTS changes queued for v4.9
This change set includes:
 + DTS entry to enable SoC PMU for X-Gene v1 SoC
 + DTS entry to enable SoC PMU for X-Gene v2 SoC
 + PCIe legacy interrupt polarity fix for X-Gene
 + X-Gene SoC hwmon DTS entry
 + DTS entries for X-Gene v2 CPU clock
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJX24y0AAoJEB11UG/BVQ/ghjgQAJBb7Hh523y8fRDVHx+/WIvv
 yMVqQtEGVGE9ATaVbofpQ4InCQzRNWA+lCX35Uw01k9PXixmevPnDvhUzocIeIGD
 uAKZrQHMMUuM6NyC8doPwWa27ouT0PkB4ZorDlnzjSV5aDC/C8nFXN/0CCnUwzdv
 nvR3Y3a4207l63FXhSaL0IkE0SXocFOYAvkCtws/rJExJkzrEksTwKQV0j1yxfxb
 urF+/fH2TgrApOucvQv0POZFLoRq4ZkkEjvWYgYB9VSo++ytpp/hl2uLfASduhqT
 AvoNiooQk5iir8oFWY0WQNWOsR4qm1IJ44Q1OnjIhi6THzLSCr2NnFBFkEYagW2P
 ViA332ZwBGOTheuQAfqadqDMn9/ZKm6aM7j6FnvT77fDUSoRZGFh/27/xNSo2jKD
 4Oz19AipJuy86NNSfnnfGUewUuPgQrP1p8KovjkkhSOIaU26ftrWNT7v+k7l0ZTH
 VoHBV835PoEEPyCiRK/++p8zzp8cfQANA0wS1B4ramPyzusZYc16AQmjiUZdcMUZ
 hIhFrwahU4zP2+jqwLmAosblYGujbgoUVRuViGix4r6HOde+W3gTC5m562DmPFCi
 MW/L1a53TYslzTI9l2KP+QGL77Eb+87ZDsUEQSZUvK8rGHlo1IetLgP4cppndFq7
 C5SEu8DbprXXjPq5A4fp
 =QQcM
 -----END PGP SIGNATURE-----

Merge tag 'xgene-dts-for-v4.9' of https://github.com/AppliedMicro/xgene-next into next/dt64

Pull "X-gene DTS changes queued for v4.9" from Duc Dang:

This change set includes:
+ DTS entry to enable SoC PMU for X-Gene v1 SoC
+ DTS entry to enable SoC PMU for X-Gene v2 SoC
+ PCIe legacy interrupt polarity fix for X-Gene
+ X-Gene SoC hwmon DTS entry
+ DTS entries for X-Gene v2 CPU clock

* tag 'xgene-dts-for-v4.9' of https://github.com/AppliedMicro/xgene-next:
  arm64: dts: apm: Add DT node for APM X-Gene 2 CPU clocks
  arm64: dts: apm: Add X-Gene SoC hwmon to device tree
  arm64: dts: apm: Fix interrupt polarity for X-Gene PCIe legacy interrupts
  arm64: dts: apm: Add APM X-Gene v2 SoC PMU DTS entries
  arm64: dts: apm: Add APM X-Gene SoC PMU DTS entries
2016-09-19 22:31:14 +02:00
Arnd Bergmann
473326a8d0 mvebu dt64 for 4.9 (part 2)
- enable MSI for PCIe on Armada 7K/8K
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlfZZyIACgkQCwYYjhRyO9WV9wCgplO/RTXtSazA02kkUsDSPezd
 tVkAnREnwZSo9CzGdQnEztgOpihvgBMH
 =2st8
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-dt64-4.9-2' of git://git.infradead.org/linux-mvebu into next/dt64

Pull "mvebu dt64 for 4.9 (part 2)" from Gregory CLEMENT:

- enable MSI for PCIe on Armada 7K/8K

* tag 'mvebu-dt64-4.9-2' of git://git.infradead.org/linux-mvebu:
  arm64: dts: marvell: enable MSI for PCIe on Armada 7K/8K
2016-09-19 22:29:45 +02:00
Linus Torvalds
7bb91e0673 Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto fixes from Herbert Xu:
 "This fixes a potential weakness in IPsec CBC IV generation, as well as
  a number of issues that arose out of an OOM crash on ARM with CTR-mode
  AES"

* 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
  crypto: arm64/aes-ctr - fix NULL dereference in tail processing
  crypto: arm/aes-ctr - fix NULL dereference in tail processing
  crypto: skcipher - Fix blkcipher walk OOM crash
  crypto: echainiv - Replace chaining with multiplication
2016-09-19 12:58:34 -07:00
Sebastian Andrzej Siewior
c23a7266e6 arm64/FP/SIMD: Convert to hotplug state machine
Install the callbacks via the state machine.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Acked-by: Will Deacon <will.deacon@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: rt@linutronix.de
Cc: linux-arm-kernel@lists.infradead.org
Link: http://lkml.kernel.org/r/20160906170457.32393-2-bigeasy@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2016-09-19 21:44:25 +02:00
Arnd Bergmann
c3a66272d6 Amlogic 64-bit DT changes for v4.9, round 2
Primarily adding support for newly added drivers
 
 - USB host
 - I2C
 - SPI flash controller
 - PWM
 - mailbox, MHU
 - pinctrl: add pins for SPI, I2C, SDIO
 
 and then enabling these drivers on various boards.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJX2yJ/AAoJEFk3GJrT+8ZlbE4QAJ9mkIsZ8aL4eZxkFpawzKUl
 glKK7nSZcToipC5i4BRdO9IUJKBYFzpJ+Mh/au25AabG5gE9u7lLMTp9mdXm4dZP
 9Vf0qYU0x2alG1vyzTIOkgF7AhgJa6lU1sa56HEKnzBd3hGBYcwdvPAOISLN300K
 UxDsbpTvzLK56RyWNicRD5kv9LvkF60gwJwb8s+LZl78T4ab4w7rUGd13ratafrn
 uzWbIvLztGUWH57j484/Sh2SFuTq4AKTxxpGFUOqhyS07VP2Ypkecv+RgzFpTjtU
 3TCQpz2Wr6Jt45HnB/i7ABwT8SSKjTqL0wgyw7oKdV9hdsXxMyPo1Ysa6EO3t6ve
 lMe+QjgA3iwRdr8tZvivDZwXh0eX8GJdtq6AfHi0jvtYSfKiw1DAfi1wTaq+ZWiZ
 pGg/yV1j5gfFHMxtYt/srIsISt1HdxsLmEx3DB102KAzvrDVzNgnt+HrSzG++XxF
 U1s+9tE05WTzlBZiAhk0/HllYepyKNI5qaLm7CxXC2se+UqSfa8hJaFuVBKAvMiD
 nKC51AhrHThVopXjkNnwYyA6+5ekhpR37ySi5fVkNXA0RIQPz3HUp+v+D2lsrQYE
 SLPVoSTodVIq3rqbg1pum31dlAmzHZmPgqXc7jCoLp1EEqyRn3m+OWrfz1HBlVqP
 LlZt6rcko++0zM7UJ17K
 =ahMS
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into next/late

Pull "Amlogic 64-bit DT changes for v4.9, round 2" from Kevin Hilman:

Primarily adding support for newly added drivers

- USB host
- I2C
- SPI flash controller
- PWM
- mailbox, MHU
- pinctrl: add pins for SPI, I2C, SDIO

and then enabling these drivers on various boards.

* tag 'amlogic-dt64-2' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
  ARM64: dts: meson-gxbb-vega-s95: Enable USB Nodes
  ARM64: dts: meson-gxbb-p20x: Enable USB Nodes
  ARM64: dts: meson-gxbb: add USB Nodes
  ARM64: dts: gxbb: add i2c bus
  ARM64: dts: meson-gxbb: add I2C nodes
  ARM64: dts: meson-gxbb: add pins for I2C
  ARM64: dts: meson-gxbb: Add SPIFC node
  ARM64: dts: meson-gxbb: add the SDIO pins
  ARM64: dts: amlogic: add spi nor pins
  ARM64: dts: meson-gxbb: use the new GXBB DWMAC glue driver
  ARM64: dts: meson-gxbb: Add Meson GXBB PWM Controller nodes
  ARM64: dts: meson-gxbb: Add Meson MHU Node
  ARM64: dts: amlogic: enable ethernet on all Tronsmart Vega S95 devices
2016-09-19 17:53:38 +02:00
Linus Torvalds
008f08d64a ARM: SoC fixes
Here are a couple of bugfixes for v4.8-rc. Most of them have
 actually been around for a while this time but for some reason
 didn't get applied early on. The shmobile regulator fix is the
 only one that isn't completely obvious.
 
 device tree changes:
 - archtimer interrupts must be level triggered (multiple platforms)
 - fix for USB and MMC clocks on STiH410
 - fix split DT repository in case of raspberry-pi 3
 - A new use of skeleton.dtsi on arm64 has crept in after that
   was removed.
 
 defconfig updates:
 - xilinx vdma has a new Kconfig symbol name
 - keystone requires CONFIG_NOP_USB_XCEIV since v4.8-rc1
 
 code fixes:
 - fix regulator quirk on shmobile
 - suspend-to-ram regression on EXYNOS
 
 maintainer updates:
 - Javier Martinez Canillas is now a reviewer for Samsung EXYNOS
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIVAwUAV9wHNGCrR//JCVInAQKPBhAA4HWz5YoE1FwatmrZ7LyLgl+SD7ezDuGC
 w/oo01kGYSq9vN8E7rTWqTW/lylTgt7adX3E6wNPIIfVg9dx9TnJ0HofH3TjHku4
 K7HeqapNqqqWh3VF8xFZO6YkKi09uhsX+j8NOAGlhd50A4OrOA1xh1NtpIakLX7z
 TYBpbjW1TB3SwNiq7CbC1PJUKzTfP49hQmf6dUdKajLZ2Wova4H0bonyo45DhanZ
 JiZyZlR9NnieVcftAP+kGFskM8q2hyZPqtoCar/mWrmerWMUG3n1MWj9LyDTVsVc
 zd7wBcX9dLOe26qGW88MUnbUBC/R2nZ+VDzMwyoYoIHlHALDcn2ldDotLDVIRp6A
 xGMejt06Q2qG8zX4SCjyq9hu2LeyBRWHkRTaoAD2tsT5SD4KNMi3GeYnq9Su+iYw
 hXrCOrua1pMDhWsU5RMGrfPXKbZSkkcvvt1MAoUn5h7xTqLQ1+PKLIUVOPnAR6Ns
 lHR86oo1kAoXDPbKZRnMbHSQ76kW+nWF+vDOJ7ozXNwZtcmXZiqfKxs/RDVecqFL
 kJMPJBPUGW5FAakarLb68f8XVsiHQr3ujofTyA77cUACqLBidbhxbfq+5NMWyck/
 zXPLk4HEGBlg9v8g17g1MxdttS+Na9pzNVfE23CuGKc147QIh1M3DeLjoIZ9gSfH
 p8cxVpe5gBs=
 =tYAb
 -----END PGP SIGNATURE-----

Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Pull ARM SoC fixes from Arnd Bergmann:
 "Here are a couple of bugfixes for v4.8-rc.

  Most of them have actually been around for a while this time but for
  some reason didn't get applied early on.  The shmobile regulator fix
  is the only one that isn't completely obvious.

  Device tree changes:
   - archtimer interrupts must be level triggered (multiple platforms)
   - fix for USB and MMC clocks on STiH410
   - fix split DT repository in case of raspberry-pi 3
   - a new use of skeleton.dtsi on arm64 has crept in after that was
     removed.

  defconfig updates:
   - xilinx vdma has a new Kconfig symbol name
   - keystone requires CONFIG_NOP_USB_XCEIV since v4.8-rc1

  Code fixes:
   - fix regulator quirk on shmobile
   - suspend-to-ram regression on EXYNOS

  Maintainer updates:
   - Javier Martinez Canillas is now a reviewer for Samsung EXYNOS"

* tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: keystone: defconfig: Fix USB configuration
  arm64: dts: Fix broken architected timer interrupt trigger
  ARM: multi_v7_defconfig: update XILINX_VDMA
  ARM64: dts: bcm: Use a symlink to R-Pi dtsi files from arch=arm
  ARM: dts: Remove use of skeleton.dtsi from bcm283x.dtsi
  ARM: dts: STiH407-family: Provide interconnect clock for consumption in ST SDHCI
  ARM: dts: STiH410: Handle interconnect clock required by EHCI/OHCI (USB)
  ARM: shmobile: fix regulator quirk for Gen2
  ARM: EXYNOS: Clear OF_POPULATED flag from PMU node in IRQ init callback
  MAINTAINERS: Add myself as reviewer for Samsung Exynos support
2016-09-16 12:15:41 -07:00
Jeremy Linton
85023b2e13 arm64: pmu: Hoist pmu platform device name
Move the PMU name into a common header file so it may
be referenced by other users.

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-16 17:11:34 +01:00
Jeremy Linton
236b9b91cd arm64: pmu: Probe default hw/cache counters
ARMv8 machines can identify the micro/arch defined counters
that are available on a machine. Add all these counters to the
default armv8 perf map. At run-time disable the counters which
are not available on the given PMU.

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-16 17:11:33 +01:00
Mark Salter
dbee3a74ef arm64: pmu: add fallback probe table
In preparation for ACPI support, add a pmu_probe_info table to
the arm_pmu_device_probe() call. This table gets used when
probing in the absence of a devicetree node for PMU.

Signed-off-by: Mark Salter <msalter@redhat.com>
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-16 17:11:33 +01:00
Robin Murphy
fade1ec055 iommu/dma: Avoid PCI host bridge windows
With our DMA ops enabled for PCI devices, we should avoid allocating
IOVAs which a host bridge might misinterpret as peer-to-peer DMA and
lead to faults, corruption or other badness. To be safe, punch out holes
for all of the relevant host bridge's windows when initialising a DMA
domain for a PCI device.

CC: Marek Szyprowski <m.szyprowski@samsung.com>
CC: Inki Dae <inki.dae@samsung.com>
Reported-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-16 09:34:22 +01:00
Jun Nie
12496aea08 arm64: add ZTE ZX SoC family
This patch introduces ARCH_ZX to add the support of the ZTE ZX SoC
family for the arm64 architecture.

Signed-off-by: Jun Nie <jun.nie@linaro.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-09-16 14:30:20 +08:00
Jun Nie
ba1f4d8170 arm64: defconfig: enable ZTE ZX related config
This patch enables the configuration for the ZTE ZX family.

Signed-off-by: Jun Nie <jun.nie@linaro.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-09-16 14:28:39 +08:00
Jun Nie
2e673c7dc3 arm64: dts: Add ZTE ZX296718 SoC dts and Makefile
Add device tree support for ZX296718 SoC and evaluation board based
on it.  Also document new values.

Signed-off-by: Jun Nie <jun.nie@linaro.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2016-09-16 10:47:05 +08:00
Al Viro
4855bd255f arm64: don't zero in __copy_from_user{,_inatomic}
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2016-09-15 19:51:56 -04:00
Martin Blumenstingl
c763eb82a0 ARM64: dts: meson-gxbb-vega-s95: Enable USB Nodes
Enable both gxbb USB controller and add a 5V regulator for the OTG port
VBUS

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2016-09-15 15:02:59 -07:00
Jerome Brunet
8735053d79 ARM64: dts: meson-gxbb-p20x: Enable USB Nodes
Enable both gxbb USB controller and add a 5V regulator for the OTG port
VBUS

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
[khilman: rename vbus node to match P200 schematics]
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2016-09-15 15:02:25 -07:00
hotran
39936ae1ab arm64: dts: apm: Add DT node for APM X-Gene 2 CPU clocks
Add DT nodes to enable APM X-Gene 2 CPU clocks.

[dhdang: changelog]
Signed-off-by: Hoan Tran <hotran@apm.com>
Signed-off-by: Duc Dang <dhdang@apm.com>
2016-09-15 11:19:39 -07:00
hotran
c6d62be5ea arm64: dts: apm: Add X-Gene SoC hwmon to device tree
This patch adds DT node to enable hwmon driver for APM X-Gene SoC.

Signed-off-by: Hoan Tran <hotran@apm.com>
Acked-by: Guenter Roeck <linux@roeck-us.net>
2016-09-15 11:13:35 -07:00
Duc Dang
7c7b08bfbd arm64: dts: apm: Fix interrupt polarity for X-Gene PCIe legacy interrupts
On X-Gene v1 and X-Gene v2, PCIe legacy interrupt
should be configured as level-active high.

Signed-off-by: Duc Dang <dhdang@apm.com>
2016-09-15 11:13:34 -07:00
Duc Dang
d65b5d5a5c arm64: dts: apm: Add APM X-Gene v2 SoC PMU DTS entries
This patch adds APM X-Gene v2 SoC PMU DTS entries.

Signed-off-by: Duc Dang <dhdang@apm.com>
Cc: Tai Nguyen <ttnguyen@apm.com>
2016-09-15 11:13:34 -07:00
Tai Nguyen
0317cd525d arm64: dts: apm: Add APM X-Gene SoC PMU DTS entries
This patch adds APM X-Gene SoC PMU DTS entries.

Signed-off-by: Tai Nguyen <ttnguyen@apm.com>
2016-09-15 11:13:32 -07:00
David A. Long
3e593f6675 arm64: Improve kprobes test for atomic sequence
Kprobes searches backwards a finite number of instructions to determine if
there is an attempt to probe a load/store exclusive sequence. It stops when
it hits the maximum number of instructions or a load or store exclusive.
However this means it can run up past the beginning of the function and
start looking at literal constants. This has been shown to cause a false
positive and blocks insertion of the probe. To fix this, further limit the
backwards search to stop if it hits a symbol address from kallsyms. The
presumption is that this is the entry point to this code (particularly for
the common case of placing probes at the beginning of functions).

This also improves efficiency by not searching code that is not part of the
function. There may be some possibility that the label might not denote the
entry path to the probed instruction but the likelihood seems low and this
is just another example of how the kprobes user really needs to be
careful about what they are doing.

Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: David A. Long <dave.long@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2016-09-15 08:33:46 +01:00
Ingo Molnar
d4b80afbba Merge branch 'linus' into x86/asm, to pick up recent fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-09-15 08:24:53 +02:00
Arnd Bergmann
dc8c76dd82 Allwinner ARM64 Kconfig changes
Select the pinctrl driver in kconfig
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJX1cn/AAoJEBx+YmzsjxAg69QP/AunSj46Q/3JrDwGoGut5oQy
 aOKgZzVNry0DtDkY/F9NSBWuZoGM4jtCM79fpW+9dxzc8z0TcDUmA+FUjAzx7SyX
 ua9k6uvDlGta85jpb2UZApuc/1rXScXyGS6WVVYoV6P9AD7KqZVVBc7YxwNiPOw2
 +ZBO4veplhtFRvv2HS+V/gsqgHyNTlwYMz9U5bI82aPbVnew/N9y+TblZShIv8Sa
 9Lm+maNNMKXL7RQhbYPCVCE/d/Ym+xxTck+jR38VYnKruU35KaP/Wc2EeKt1UrGl
 NmoX71kTPD2DtkQ2vT6Jol8UrBe5GZ/X/ZKu1A8wkyXAnw6PAZ16hxL8+Z5tUHBg
 1n3gqHQbpnhQ2AFeyC0+D7xc+PruCH4cYBw/bCZxB0IFMkfYxA+75hVhAgQtnQeP
 otWPyfvkbCqBgMD0cUUKm9i1TjcFuOrXoKmGn+GdP+A+zER/tSbkvJEN5XBPd9nK
 w/CYJPEw+1dMbNzEqx1mgy8xbdcuDEQniZE5+ysTGm/erTbMGB6nL6csST+YqabV
 DaXIup3OPQBTplcacDi2b8O9izU8Yu5gq27J/MowtETCF10KDQPAJogs/ukdv3kW
 WSJmclTVUxNxrE5yQVW8jiJtmBXVbqRsR9QSR79fhjYbwFofxvvIyaCW3Xjuhr9X
 xikbiJO0gyhYf2toHeXD
 =Cik5
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-config64-for-4.9' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into next/arm64

Pull "Allwinner ARM64 Kconfig changes" from Maxime Ripard:

Select the pinctrl driver in kconfig

* tag 'sunxi-config64-for-4.9' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux:
  arm64: sunxi: Kconfig: add essential pinctrl driver
2016-09-15 00:43:43 +02:00
Arnd Bergmann
45624a6eb1 This pull request contains Broadcom ARM64-based SoC changes for 4.9, please pull
the following:
 
 - collective effort from Florian, Doug and Markus to add the ARCH_BRCMSTB Kconfig
   symbol to the ARM64 kernel build, which is purposedly the same as the ARM/Linux
   one in order not to update any driver dependencies
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXz3GCAAoJEIfQlpxEBwcExK8QAMSWny7XPDQGFOZm7w8T90Ud
 Cx2FaxNGNFybbuXT8Z6VinJU0YgCoGBnzTgI0hYj8JOX3iP5DQuh39Ar0ul7WswZ
 6KrQ/aP9a6b82jGO+0NoP0R83IJgjNRnK+sFt63+dVxJqIpH4m5d6nnCnFnJrsQD
 Clii0Ij2JEHNEjcEaoa50s4bvWj1cMmiiFaInfbKgM3AnsTPXX2PJJvSqxTuwnKn
 gMSp8FWXdkNm4u651VA6loIJETRZ5T4rhrDw1mFcfpVps6ews/Ga+XCx78z6gdYA
 p2aRZIp6xXsi1m5zCGLRq0WiRDMyjaMXljgNJ5+9gPgKKdxxyMr+HEVx0ANJqLW6
 HOYpxYX7+iDDZqgz1xf0LfYVbEFiohdFNPER/DKf4kTuc7QXD1AMfdlIcH3ndXzY
 BPLAeZkWWCjThRDEiOIEv4bx8OzwpcxqX4eRuQpXZFLxV2MkF9p9apepBJQxYubF
 n22AIBKDW1hYSKPhWoM4fVZQ5iK/oNAah48ignBTwawuCCZTwucQxkO0FV9G4Qpz
 bLJbXbEza7r5iQuPH3sRDLPCDsDmvBUv7M8WB4d+0ky/mHzjQ6JblK0LZ1kwMURt
 P4uPK8EhzyuyukTBwbr/LNhIie8i1rqBuIie4weGl1jUjiZ8NIn4fotkDn0c1xqq
 1VjMTrJfApiUiX2p4Fwp
 =AjHP
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-4.9/soc-arm64' of http://github.com/Broadcom/stblinux into next/arm64

Pull "Broadcom soc-arm64 changes for 4.9" from Florian Fainelli:

This pull request contains Broadcom ARM64-based SoC changes for 4.9, please pull
the following:

- collective effort from Florian, Doug and Markus to add the ARCH_BRCMSTB Kconfig
  symbol to the ARM64 kernel build, which is purposedly the same as the ARM/Linux
  one in order not to update any driver dependencies

* tag 'arm-soc/for-4.9/soc-arm64' of http://github.com/Broadcom/stblinux:
  arm64: Add Broadcom Set Top Box Kconfig entry point
2016-09-15 00:10:22 +02:00
Arnd Bergmann
c975bd7ef5 Renesas ARM64 Based SoC Defconfig Updates for v4.9
* Enable HSUSB and SDHI
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXz8NJAAoJENfPZGlqN0++m3AQAI4IOiRcVRi4R+kypMqcnkyI
 dbQVd9CJl1H9ob4tpUL0hMvTSZdNzMDn4knHb5iUaqbeY865qLFZGqJ1z8+XYZ2a
 70kXHV0y2MLTZ/VPEsGRQLEjbyhq3hl5qbF5GXK1K7P63AMnXwnE6h99+ayWopQl
 lcVJbNkYFsn/F238zDUMFpJl3PIhDr4G3z/lqiFz1WydlK6APwHAfyHIsNTrX/+7
 ytzRLNtCLvpDSiwyOJ8ty5NMRBsBMUsq/REy0hsRabfP7ws9tC/Rpj9O5UGKueEQ
 wMkbTLYAwq8UrDGttrAY0lNNkzNVeBm/AO7VDDvfEl8BZKcxpGjF5t65miq4QWM8
 P2BBTIUHhyrbA98SwWjKCeZzqmisvQeCfKyRNJzgJViW3L0YW74ixmt0Q55wToqz
 CIcbnzLzfKfzVZpXHy0CvIIf+9reKyvQ/yLca6AAx14ZsMCKYP+EtwlG1pj1SMFE
 NB4tQKMWtK50TplqlTsmuXbSUu2QpbXyFE8vc/nCYLNHh4QfD/VaG0AmhThNg7Ix
 DFkdUM0rTz3Y7JKeGHWv6yzxuYQp39a+5Il2MaoxCq/W+Nx6u5bUkkwvei0RzvgC
 8EkPLu44hGcB+aFcX1tz0wE0X5ujRXvUCR2KcZlGrbNnvsvZcz5we7+NPBPVSFCj
 OiiHxPMYrOGuboR8dCcD
 =5O7N
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm64-defconfig-for-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/arm64

Pull "Renesas ARM64 Based SoC Defconfig Updates for v4.9" from Simon Horman:

* Enable HSUSB and SDHI

* tag 'renesas-arm64-defconfig-for-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  arm64: defconfig: Enable SDHI and GPIO_REGULATOR
  arm64: defconfig: Add Renesas R-Car HSUSB driver support as module
2016-09-15 00:08:55 +02:00
Leo Yan
57e109cb97 arm64: defconfig: enable common modules for power management
Enable common modules for power management; one is to enable
CPUFREQ_DT driver; the driver is used by many platforms by passing OPP
table from device tree.

Also enables thermal related drivers. Firstly we need enable
configuration CPU_THERMAL for CPU cooling device driver, this will bind
thermal zone with CPU cooling device; and enable 'power allocator'
thermal governor.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-15 00:07:46 +02:00
Arnd Bergmann
dafa5d3952 mvebu defconfig64 for 4.9 (part 1)
- add PCIe driver for Aardvark for Armada 3700
 - enable xhci-platform for A7K/A8K
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iEYEABECAAYFAlfMQewACgkQCwYYjhRyO9WrKgCeJWuHOFUlMYoZqEYKkdA5aJ9G
 iPsAoIFQivT7yCn9p7rJKzKt2NI4skoy
 =jIwM
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-defconfig64-4.9-1' of git://git.infradead.org/linux-mvebu into next/arm64

Pull "mvebu defconfig64 for 4.9 (part 1)" from Gregory CLEMENT:

- add PCIe driver for Aardvark for Armada 3700
- enable xhci-platform for A7K/A8K

* tag 'mvebu-defconfig64-4.9-1' of git://git.infradead.org/linux-mvebu:
  arm64: configs: enable PCIe driver for Aardvark
  arm64: defconfig: enable xhci-platform
2016-09-15 00:05:59 +02:00
Arnd Bergmann
23d4635ec9 Qualcomm ARM64 Based defconfig Updates for v4.9
* Enable defconfig options for QDF2432
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXycsjAAoJEFKiBbHx2RXVDBIQAKzDDaOiHHSMoGfQ2kFy64Q/
 1zDa0Ewnr5GW64N2roD6D1Z6eSnMY+8N+wtf6AUgBOmw8u1whwrYZ15BgIkuIhhU
 qOZHhes1FqE4hcAv8lOrJ9L+l1O48x6PJa/pdiZzIA3aGoVkROoJb2DVsLt/bneU
 Mmfx3ormi3srScUt1FhUlNFfDyQcSM/Q8B1b0oFcxE2SgZXIZZbr1GpZxYjf0Q3F
 XId7sjqwnSGYWhkGVjXIyewMbZS3+Jim87PO0lHgv651hyz6XHz2AE8Ceqb21ZHz
 jYZoGqb1l2rTSGoP6kK6ZLxBceSkwFS5ve6ldV6Pm4OpmRCyiS0vEUQD3iE6tHVG
 VW8xI+EnHbKunCa+rSSilefOjm359nj76K1LVANTipksCSwptDgh61fRqCnU8XGg
 OiFY/aoYq+FyZqnh7bNBmcXFwHvdMga/Knx8zEi1qIocMMU5r5BqVp2pXKJzxujj
 2rU1xk19YHvx1x7RC/cGUBmZb58uAU9UXinZ2k/BzDCYIK5X0NS/Qjm6P3hK0tDQ
 VaADHoUz83LRC/U/OrpDmOP9ErJBIu1y1fHQ48qYYW5e8uA7rMsJx9KEjZ4qjXM/
 wz8gzjETv9+UYD1szbY2hV4ZsUMSdvxjo+T7Z2pGIuGLKZ1ZpKHykaMDAuOHz7cY
 frtOPjV5O7MEzGCYa5bv
 =Y4cO
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-defconfig-for-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/arm64

Pull "Qualcomm ARM64 Based defconfig Updates for v4.9" from Andy Gross:

* Enable defconfig options for QDF2432

* tag 'qcom-arm64-defconfig-for-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: defconfig: Enable QDF2432 config options
2016-09-15 00:04:53 +02:00
Kevin Hilman
699189c848 arm64: defconfig: enable meson I2C
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-15 00:03:46 +02:00
Kevin Hilman
5a9a9cf0a1 arm64: defconfig: enable meson SPI as module
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-15 00:03:41 +02:00
Kevin Hilman
19b9869192 arm64: defconfig: enable meson WDT as modules
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-15 00:03:31 +02:00
Kevin Hilman
5012a09b9b arm64: defconfig: enable HW random as module
drivers/char/hw_random/Kconfig has 'default m', so
simply removing this entry from the defconfig will
enable building HW random drivers as modules.

Signed-off-by: Kevin Hilman <khilman@baylibre.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-15 00:03:21 +02:00
Arnd Bergmann
a458ae7321 ARM64: hisilicon: defconfig updates for 4.9
- Enable hisilicon SAS and XGE for hip05 and hip06
 - Enable drm, powerkey, bluetooth and adv7511/adv7533 for hikey
 - Add PINCTRL to HISI platform
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJXyVBpAAoJEAvIV27ZiWZcqWcQALMdZkeDs5iIwihsrRMnVmj9
 a/XA/xVFsZj8lys6LIhGWZ7L4BDZxLvF0065EeyVIDphhk51D5rgyYy2rP5SlDnj
 kZJxB/RoycDrp95rOZGHaC1prN23mmk6gGT3BK6CW6OJKEZI+UNu+a0P2EfntGR2
 vpGl4MeoI0GT2ZvpN0c2uzURHGof687mAgHbrNKDmKYKkHgV9hA2D2oFjWdYxcYB
 fXh7a7d5vRpTrYIKo5R2T2XUDIUQuohgIWDdyDTUsFTPqEXt9Dict5R6k6dXTiCR
 5SPKnZ8AgHU+wWTtB+A+XL5h+jbyftuymuaQY/iEESa/0e7xCWIRyk3wRYUKmNch
 Q5w4tqVzqeZjALKE1Lshaw78+SMf/vKSp09LSIx60hRNpuEXm9H7iALxETsgl8Av
 ofRD85K0HW18dhVTQoDB3hplqi485lSkkuigTX9R3TkE6iY2XitDJeseSxH/wHml
 0alpDMXqv4WNvrLfunZdVqOoLEbuFoYhwhq5EHv94LZoyIacVsd5dx7bg6P3o7sj
 3xRXyU3O7fSLc1Qr56+88i99PmbIX68B77V3xrwAJYW8kBGVdNci0ccLuVmlaSdc
 B3FmLk+MCd2gofNzyYG8lQeXCRM+ElnhAZ+QC0vQhvUETdGXSpA+ZJcph/adaq/j
 8im37ibx4oByG3TCk7w3
 =y80h
 -----END PGP SIGNATURE-----

Merge tag 'hisi-defconfig-for-4.9' of git://github.com/hisilicon/linux-hisi into next/arm64

Pull "ARM64: hisilicon: defconfig updates for 4.9" from Wei Xu:

- Enable hisilicon SAS and XGE for hip05 and hip06
- Enable drm, powerkey, bluetooth and adv7511/adv7533 for hikey
- Add PINCTRL to HISI platform

* tag 'hisi-defconfig-for-4.9' of git://github.com/hisilicon/linux-hisi:
  Kconfig: ARCH_HISI: Add PINCTRL to HISI platform
  arm64: defconfig: enable bluetooth supports as modules
  arm64: defconfig: enable CONFIG_INPUT_HISI_POWERKEY for HiKey
  arm64: defconfig: Enable HiSilicon kirin drm, adv7533 for HiKey
  arm64: defconfig: Enable Hisi SAS and HNS
2016-09-15 00:02:16 +02:00
Arnd Bergmann
37179033fc Merge branch 'dt/irq-fix' into next/dt64
* dt/irq-fix:
  arm64: dts: Fix broken architected timer interrupt trigger

This resolves a non-obvious conflict between a bugfix from
v4.8 and a cleanup for the exynos7 platform.
2016-09-14 22:48:29 +02:00
Arnd Bergmann
d20ced23c7 Merge branch 'dt/irq-fix' into fixes
* dt/irq-fix:
  arm64: dts: Fix broken architected timer interrupt trigger
2016-09-14 22:47:36 +02:00
Marc Zyngier
f2a89d3b2b arm64: dts: Fix broken architected timer interrupt trigger
The ARM architected timer specification mandates that the interrupt
associated with each timer is level triggered (which corresponds to
the "counter >= comparator" condition).

A number of DTs are being remarkably creative, declaring the interrupt
to be edge triggered. A quick look at the TRM for the corresponding ARM
CPUs clearly shows that this is wrong, and I've corrected those.
For non-ARM designs (and in the absence of a publicly available TRM),
I've made them active low as well, which can't be completely wrong
as the GIC cannot disinguish between level low and level high.

The respective maintainers are of course welcome to prove me wrong.

While I was at it, I took the liberty to fix a couple of related issue,
such as some spurious affinity bits on ThunderX, and their complete
absence on ls1043a (both of which seem to be related to copy-pasting
from other DTs).

Acked-by: Duc Dang <dhdang@apm.com>
Acked-by: Carlo Caione <carlo@endlessm.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Acked-by: Dinh Nguyen <dinguyen@opensource.altera.com>
Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2016-09-14 22:47:22 +02:00