Commit Graph

5562 Commits

Author SHA1 Message Date
Luc Van Oostenryck
f0cda7e6dc arm64: fix endianness annotation in acpi_parking_protocol.c
Here both variables 'cpu_id' and 'entry_point' are read via
read[lq]_relaxed(), from a little-endian annotated pointer
and then used as a native endian value.

This is correct since the read[lq]() family of function
internally do a little-to-native endian conversion.

But in this case, it is wrong to declare these variable as
little-endian since there are native ones.

Fix this by changing the declaration of these variables
as 'u32' or 'u64' instead of '__le32' / '__le64'.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:33:15 +01:00
Luc Van Oostenryck
c0d109de4c arm64: use readq() instead of readl() to read 64bit entry_point
Here the entrypoint, declared as a 64 bit integer, is read from
a pointer to 64bit integer but the read is done via readl_relaxed()
which is for 32bit quantities.

All the high bits will thus be lost which change the meaning
of the test against zero done later.

Fix this by using readq_relaxed() instead as it should be for
64bit quantities.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:33:01 +01:00
Luc Van Oostenryck
02129ae5fe arm64: fix endianness annotation for reloc_insn_movw() & reloc_insn_imm()
Here the functions reloc_insn_movw() & reloc_insn_imm() are used
to read, modify and write back ARM instructions, which are always
stored in memory in little-endian order. These values are thus
correctly converted to/from native order but the pointers used to
hold their addresses are declared as for native order values.

Fix this by declaring the pointers as __le32* and remove the
casts that are now unneeded.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:09:39 +01:00
Luc Van Oostenryck
57c138357d arm64: fix endianness annotation for aarch64_insn_write()
aarch64_insn_write() is used to write an instruction.
As on ARM64 in-memory instructions are always stored
in little-endian order, this function, taking the instruction
opcode in native order, correctly convert it to little-endian
before sending it to an helper function __aarch64_insn_write()
which will do the effective write.

This is all good, but the variable and argument holding the
converted value are not annotated for a little-endian value
but left for native values.

Fix this by adjusting the prototype of the helper and
directly using the result of cpu_to_le32() without passing
by an intermediate variable (which was not a distinct one
but the same as the one holding the native value).

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:02:42 +01:00
Luc Van Oostenryck
65de142143 arm64: fix endianness annotation in aarch64_insn_read()
The function arch64_insn_read() is used to read an instruction.
On AM64 instructions are always stored in little-endian order
and thus the function correctly do a little-to-native endian
conversion to the value just read.

However, the variable used to hold the value before the conversion
is not declared for a little-endian value but for a native one.

Fix this by using the correct type for the declaration: __le32

Note: This only works because the function reading the value,
      probe_kernel_read((), takes a void pointer and void pointers
      are endian-agnostic. Otherwise probe_kernel_read() should
      also be properly annotated (or worse, need to be specialized).

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:02:42 +01:00
Luc Van Oostenryck
6cf5d4af83 arm64: fix endianness annotation in call_undef_hook()
Here we're reading thumb or ARM instructions, which are always
stored in memory in little-endian order. These values are thus
correctly converted to native order but the intermediate value
should be annotated as for little-endian values.

Fix this by declaring the intermediate var as __le32 or __le16.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:02:42 +01:00
Luc Van Oostenryck
a5018b0e6f arm64: fix endianness annotation for debug-monitors.c
Here we're reading thumb or ARM instructions, which are always
stored in memory in little-endian order. These values are thus
correctly converted to native order but the intermediate value
should be annotated as for little-endian values.

Fix this by declaring the intermediate var as __le32 or __le16.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-29 11:02:41 +01:00
Will Deacon
3edb1dd13c Merge branch 'aarch64/for-next/ras-apei' into aarch64/for-next/core
Merge in arm64 ACPI RAS support (APEI/GHES) from Tyler Baicar.
2017-06-26 10:54:27 +01:00
Will Deacon
9ad95c46c1 Merge branch 'perf/updates' into aarch64/for-next/core
Merge in arm64 perf updates:

  * xgene system PMUv3 support
  * 16-bit events for ARMv8.1
2017-06-26 10:50:50 +01:00
Luc Van Oostenryck
bcde519e8c arm64: pass endianness info to sparse
ARM64 depends on the macro __AARCH64EB__ being defined or not
to correctly select or define endian-specific macros, structures
or pieces of code.

This macro is predefined by the compiler but sparse knows nothing
about it and thus may pre-process files differently from what
gcc would.

Fix this by passing '-D__AARCH64EL__' or '-D__AARCH64EB__' to
sparse depending of the endianness of the kernel, like defined
by GCC.

Note: In most case it won't change anything since most arm64 use
      little-endian (but an allyesconfig would use big-endian!).

CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Will Deacon <will.deacon@arm.com>
CC: linux-arm-kernel@lists.infradead.org
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-26 10:15:06 +01:00
Arnd Bergmann
a1f338f874 arm64: defconfig: remove duplicate entry
This fixes a warning:
warning: override: reassigning to symbol SPI_MESON_SPIFC

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-25 22:30:05 +02:00
Mark Rutland
8486e54d30 arm64: ftrace: fix !CONFIG_ARM64_MODULE_PLTS kernels
When a kernel is built without CONFIG_ARM64_MODULE_PLTS, we don't
generate the expected branch instruction in ftrace_make_nop(). This
means we pass zero (rather than a valid branch) to ftrace_modify_code()
as the expected instruction to validate. This causes us to return
-EINVAL to the core ftrace code for a valid case, resulting in a splat
at boot time.

This was an unintended effect of commit:

  687644209a ("arm64: ftrace: fix building without CONFIG_MODULES")

... which incorrectly moved the generation of the branch instruction
into the ifdef for CONFIG_ARM64_MODULE_PLTS.

This patch fixes the issue by moving the ifdef inside of the relevant
if-else case, and always checking that the branch is in range,
regardless of CONFIG_ARM64_MODULE_PLTS. This ensures that we generate
the expected branch instruction, and also improves our sanity checks.

For consistency, both ftrace_make_nop() and ftrace_make_call() are
updated with this pattern.

Fixes: 687644209a ("arm64: ftrace: fix building without CONFIG_MODULES")
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reported-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-23 18:21:13 +01:00
Dave Martin
33f082614c arm64: signal: Allow expansion of the signal frame
This patch defines an extra_context signal frame record that can be
used to describe an expanded signal frame, and modifies the context
block allocator and signal frame setup and parsing code to create,
populate, parse and decode this block as necessary.

To avoid abuse by userspace, parse_user_sigframe() attempts to
ensure that:

 * no more than one extra_context is accepted;
 * the extra context data is a sensible size, and properly placed
   and aligned.

The extra_context data is required to start at the first 16-byte
aligned address immediately after the dummy terminator record
following extra_context in rt_sigframe.__reserved[] (as ensured
during signal delivery).  This serves as a sanity-check that the
signal frame has not been moved or copied without taking the extra
data into account.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
[will: add __force annotation when casting extra_datap to __user pointer]
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-23 18:20:18 +01:00
Arnd Bergmann
2b29ca22ed Revert "arm64: dts: marvell: add dma-mask in crypto nodes for 7k/8k"
As I found by chance while merging another patch, the usage of
a dma-mask in this DT node is wrong for multiple reasons:

- dma-masks are a Linux specific concept, not a general
  hardware feature
- In DT, we use the "dma-ranges" property to describe how DMA
  addresses related between devices.
- The 40-bit mask appears to be completely unnecessary here, as
  the SoC cannot address that much memory anyway, so simply
  asking for a 64-bit mask (as supported by the device) should
  succeed anyway.

The patch to remove the parsing of the property is getting merged
through the crypto tree.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 16:37:22 +02:00
Arnd Bergmann
3056bfb0d3 mvebu arm64 for 4.13 (part 1)
- enable the ICU and GICP drivers for Armada 7K/8K
 - enable the pinctrl driver for Armada 7K/8K
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWUu2SyMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71e3RAJ44zrZRlNbv
 +4HVU8m9Id+eIbzctwCgm7tk8F29RvtTTFP6Ns6H/PXFyUM=
 =h99y
 -----END PGP SIGNATURE-----

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

Pull "mvebu arm64 for 4.13 (part 1)" from Gregory CLEMENT

- enable the ICU and GICP drivers for Armada 7K/8K
- enable the pinctrl driver for Armada 7K/8K

* tag 'mvebu-arm64-4.13-1' of git://git.infradead.org/linux-mvebu:
  arm64: marvell: enable ICU and GICP drivers
  arm64: marvell: enable the Armada 7K/8K pinctrl driver
2017-06-23 15:09:32 +02:00
Arnd Bergmann
9b3088135a mvebu fixes for 4.12
Fix the interrupt description of the crypto node for device tree of
 the Armada 7K/8K SoCs
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWTAszCMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71bcsAJ4kcIDc5FwI
 e9qfRomziu3A+S6K0QCfX3Ii7XGH1fANfeTCAnyZGXmYFZI=
 =wjTT
 -----END PGP SIGNATURE-----

Merge tag 'mvebu-fixes-4.12-1' of git://git.infradead.org/linux-mvebu into next/dt64

mvebu fixes for 4.12

Fix the interrupt description of the crypto node for device tree of
the Armada 7K/8K SoCs

* tag 'mvebu-fixes-4.12-1' of git://git.infradead.org/linux-mvebu:
  arm64: marvell: dts: fix interrupts in 7k/8k crypto nodes
2017-06-23 14:29:17 +02:00
Arnd Bergmann
30edd98b3b mvebu dt64 for 4.13 (part 2)
- use new clock binding for Armada 7K/8K
 - add pinctrl on Armada 7K/8K
 - add GPIO on Armada 7K/8K
 - switch from GIC to ICU on CP110 (Armada 7K/8K)
 - enable the mdio node on the mcbin (Armada 8K based board)
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWUu1OyMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71eSWAJoCt4L+K8aB
 pXG1iuqtFCBtgXXfMQCgi/jFA0Qbq8oInY1qYmE44SG1fhY=
 =0hb0
 -----END PGP SIGNATURE-----

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

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

- use new clock binding for Armada 7K/8K
- add pinctrl on Armada 7K/8K
- add GPIO on Armada 7K/8K
- switch from GIC to ICU on CP110 (Armada 7K/8K)
- enable the mdio node on the mcbin (Armada 8K based board)

* tag 'mvebu-dt64-4.13-2' of git://git.infradead.org/linux-mvebu:
  arm64: dts: marvell: enable GICP and ICU on Armada 7K/8K
  arm64: dts: marvell: add gpio support for Armada 7K/8K
  arm64: dts: marvell: add pinctrl support for Armada 7K/8K
  arm64: dts: marvell: use new binding for the system controller on cp110
  arm64: dts: marvell: remove *-clock-output-names on cp110
  arm64: dts: marvell: use new bindings for xor clocks on ap806
  arm64: dts: marvell: mcbin: enable the mdio node
2017-06-23 14:06:00 +02:00
Arnd Bergmann
efd8b0ddaf ZTE arm64 device tree updates for 4.13:
- Fix DTC unit_address_vs_reg warnings in OPP entries by replacing
    '@' with '-' as the OPP nodes will never have a "reg" property.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJZSlgkAAoJEFBXWFqHsHzOxVsIALRBWPPcnJBNafvKxtL+DH63
 9lt62gZwKzLerqPVchGvapHfvpS5tu19fmmlvYIDZIICD4hjPQgdSN9EmKjGkhdo
 sIpBqJgYZ6i7OJEJMNKEUaDPqLXJY9Q2DVVVwIudtNnIu5EPYlCrQuGjQ5l2SXfk
 HeSeIOfybCbQM67fe2hP1Uk9P4AeVs+grTyg4nH3qP4kgEnd5fLkdNPdF2NGytE9
 IdzykK6LFDzDDW4qFL8T8luJpzh3gEsy2ecXpoI3WyCpdaZvIrFgXtvoFzdBTKBX
 4MQEnwaBn5OscAnXXGRzyPOsovSC6o6lkLCNw97ZwEbZGG4HdorhW8RGqqPm0yU=
 =/6Fg
 -----END PGP SIGNATURE-----

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

Pull "ZTE arm64 device tree updates for 4.13" from Shawn Guo:

 - Fix DTC unit_address_vs_reg warnings in OPP entries by replacing
   '@' with '-' as the OPP nodes will never have a "reg" property.

* tag 'zte-dt64-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: zte: Use - instead of @ for DT OPP entries
2017-06-23 13:43:43 +02:00
Arnd Bergmann
10c235cdc9 arm64: dts: mediatek: don't include missing file
This resolves a build error in the next/dt branch:

In file included from arch/arm64/boot/dts/mediatek/mt6797-evb.dts:16:0:
arch/arm64/boot/dts/mediatek/mt6797.dtsi:15:10: fatal error: dt-bindings/power/mt6797-power.h: No such file or directory

003f5d0c34 ("arm64: dts: mediatek: add clk and scp nodes for MT6797")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 12:28:34 +02:00
Timur Tabi
4bff58bfb8 arm64: defconfig: enable Qualcomm Technologies EMAC and some PHY drivers
The EMAC is present on Qualcomm Technologies' server and some mobile
chips, and is used as the primary Ethernet interface.

Systems that have these SOCs typically have an Atheros 803x or
Marvell 88e1111 PHY in them, so enable those drivers too.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:22 +02:00
Timur Tabi
fa8054ef45 arm64: defconfig: enable QCOM_L2_PMU and QCOM_L3_PMU
Now that the drivers are available, enable support for L2 and L3
performance monitoring Qualcomm Datacenter Technologies Centriq SoCs.
These PMU drivers provide support for performance optimization.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:22 +02:00
Timur Tabi
5816dda135 arm64: defconfig: enable EDAC options
Enable EDAC (Error Detection and Correction) support for ARM64 server
systems that feature it, so that user space applications can be
notified of memory errors.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:21 +02:00
Timur Tabi
c792e5e644 arm64: defconfig: enable APEI and GHES features
ARM64 server platforms can support ACPI Platform Error Interface (APEI)
and Generic Hardware Error Source (GHES) features, so enable them.

Platforms which support the firmware-first RAS error reporting model
require APEI and GHES functionality for the OS to receive and report
error records provided by the platform.

PCIe AER functionality is required for PCIe AER errors to be properly
reported and recovered from.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:20 +02:00
Timur Tabi
23237ef372 arm64: defconfig: enable support for PCIe hotplug
Some ARM64 server systems support PCIe hotplug, so enable the options
for that.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:19 +02:00
Timur Tabi
5526dfc2a7 arm64: defconfig: enable EFI_CAPSULE_LOADER
CONFIG_EFI_CAPSULE_LOADER allows the user to update the EFI firmware,
which is useful on ARM64 server platforms.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:18 +02:00
Timur Tabi
1176fb3c92 arm64: defconfig: enable BLK_DEV_NVME
NVME is non-volatile storage media attached via PCIe. NVME devices
typically have much higher potential throughput than other block
devices, like SATA, NVME is a must-have requirement for ARM64 based
servers.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:18 +02:00
Timur Tabi
51f2e0db40 arm64: defconfig: enable ACPI_CPPC_CPUFREQ
The CPPC CPUFreq driver is used on many ACPI-based ARM64 server systems.

Signed-off-by: Timur Tabi <timur@codeaurora.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-06-23 10:17:17 +02:00
Jerome Brunet
cd84aff1d9 ARM64: dts: meson-gxl: Add Libre Technology CC support
Add support for the CC  board from Shenzhen Libre Technology
More information about the board are available here:

https://libre.computer/blog/

Cc: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-06-22 12:02:05 -07:00
Tyler Baicar
621f48e40e arm/arm64: KVM: add guest SEA support
Currently external aborts are unsupported by the guest abort
handling. Add handling for SEAs so that the host kernel reports
SEAs which occur in the guest kernel.

When an SEA occurs in the guest kernel, the guest exits and is
routed to kvm_handle_guest_abort(). Prior to this patch, a print
message of an unsupported FSC would be printed and nothing else
would happen. With this patch, the code gets routed to the APEI
handling of SEAs in the host kernel to report the SEA information.

Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Acked-by: Christoffer Dall <cdall@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 18:22:05 +01:00
Tyler Baicar
7edda0886b acpi: apei: handle SEA notification type for ARMv8
ARM APEI extension proposal added SEA (Synchronous External Abort)
notification type for ARMv8.
Add a new GHES error source handling function for SEA. If an error
source's notification type is SEA, then this function can be registered
into the SEA exception handler. That way GHES will parse and report
SEA exceptions when they occur.
An SEA can interrupt code that had interrupts masked and is treated as
an NMI. To aid this the page of address space for mapping APEI buffers
while in_nmi() is always reserved, and ghes_ioremap_pfn_nmi() is
changed to use the helper methods to find the prot_t to map with in
the same way as ghes_ioremap_pfn_irq().

Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
CC: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
Reviewed-by: James Morse <james.morse@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 18:22:03 +01:00
Tyler Baicar
32015c2356 arm64: exception: handle Synchronous External Abort
SEA exceptions are often caused by an uncorrected hardware
error, and are handled when data abort and instruction abort
exception classes have specific values for their Fault Status
Code.
When SEA occurs, before killing the process, report the error
in the kernel logs.
Update fault_info[] with specific SEA faults so that the
new SEA handler is used.

Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
CC: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
Reviewed-by: James Morse <james.morse@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
[will: use NULL instead of 0 when assigning si_addr]
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 18:21:46 +01:00
Stefan Traby
d38338e396 arm64: Remove a redundancy in sysreg.h
This is really trivial; there is a dup (1 << 16) in the code

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Stefan Traby <stefan@hello-penguin.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2017-06-22 17:38:42 +01:00
Mark Rutland
8effeaaf2c arm64: dump cpu_hwcaps at panic time
When debugging a kernel panic(), it can be useful to know which CPU
features have been detected by the kernel, as some code paths can depend
on these (and may have been patched at runtime).

This patch adds a notifier to dump the detected CPU caps (as a hex
string) at panic(), when we log other information useful for debugging.
On a Juno R1 system running v4.12-rc5, this looks like:

[  615.431249] Kernel panic - not syncing: Fatal exception in interrupt
[  615.437609] SMP: stopping secondary CPUs
[  615.441872] Kernel Offset: disabled
[  615.445372] CPU features: 0x02086
[  615.448522] Memory Limit: none

A developer can decode this by looking at the corresponding
<asm/cpucaps.h> bits. For example, the above decodes as:

* bit  1: ARM64_WORKAROUND_DEVICE_LOAD_ACQUIRE
* bit  2: ARM64_WORKAROUND_845719
* bit  7: ARM64_WORKAROUND_834220
* bit 13: ARM64_HAS_32BIT_EL0

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Steve Capper <steve.capper@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 15:58:20 +01:00
Dave Martin
936eb65ca2 arm64: ptrace: Flush user-RW TLS reg to thread_struct before reading
When reading current's user-writable TLS register (which occurs
when dumping core for native tasks), it is possible that userspace
has modified it since the time the task was last scheduled out.
The new TLS register value is not guaranteed to have been written
immediately back to thread_struct in this case.

As a result, a coredump can capture stale data for this register.
Reading the register for a stopped task via ptrace is unaffected.

For native tasks, this patch explicitly flushes the TPIDR_EL0
register back to thread_struct before dumping when operating on
current, thus ensuring that coredump contents are up to date.  For
compat tasks, the TLS register is not user-writable and so cannot
be out of sync, so no flush is required in compat_tls_get().

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 15:58:20 +01:00
Dave Martin
e1d5a8fb73 arm64: ptrace: Flush FPSIMD regs back to thread_struct before reading
When reading the FPSIMD state of current (which occurs when dumping
core), it is possible that userspace has modified the FPSIMD
registers since the time the task was last scheduled out.  Such
changes are not guaranteed to be reflected immedately in
thread_struct.

As a result, a coredump can contain stale values for these
registers.  Reading the registers of a stopped task via ptrace is
unaffected.

This patch explicitly flushes the CPU state back to thread_struct
before dumping when operating on current, thus ensuring that
coredump contents are up to date.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 15:58:19 +01:00
Dave Martin
af66b2d88a arm64: ptrace: Fix VFP register dumping in compat coredumps
Currently, VFP registers are omitted from coredumps for compat
processes, due to a bug in the REGSET_COMPAT_VFP regset
implementation.

compat_vfp_get() needs to transfer non-contiguous data from
thread_struct.fpsimd_state, and uses put_user() to handle the
offending trailing word (FPSCR).  This fails when copying to a
kernel address (i.e., kbuf && !ubuf), which is what happens when
dumping core.  As a result, the ELF coredump core code silently
omits the NT_ARM_VFP note from the dump.

It would be possible to work around this with additional special
case code for the put_user(), but since user_regset_copyout() is
explicitly designed to handle this scenario it is cleaner to port
the put_user() to a user_regset_copyout() call, which this patch
does.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-22 15:58:19 +01:00
Ingo Molnar
a4eb8b9935 Merge branch 'linus' into x86/mm, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-22 10:57:28 +02:00
David S. Miller
3d09198243 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Two entries being added at the same time to the IFLA
policy table, whilst parallel bug fixes to decnet
routing dst handling overlapping with the dst gc removal
in net-next.

Signed-off-by: David S. Miller <davem@davemloft.net>
2017-06-21 17:35:22 -04:00
Thomas Petazzoni
29ad6bd9ad arm64: marvell: enable ICU and GICP drivers
This commit enables the newly introduced Marvell GICP and ICUs driver
for the 64-bit Marvell EBU platforms.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-21 17:47:17 +02:00
Thomas Petazzoni
6ef84a827c arm64: dts: marvell: enable GICP and ICU on Armada 7K/8K
This commit modifies the Marvell EBU Armada 7K and 8K Device Tree files
to describe the ICU and GICP units, and use ICU interrupts for all
devices in the CP110 blocks.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-21 17:09:48 +02:00
Gregory CLEMENT
c4c1436585 arm64: marvell: enable the Armada 7K/8K pinctrl driver
This commit makes sure the drivers for the Armada 7K/8K pin controllers
are enabled.

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-21 14:51:21 +02:00
Viresh Kumar
61c9e02991 arm64: dts: zte: Use - instead of @ for DT OPP entries
Compiling the DT file with W=1, DTC warns like follows:

Warning (unit_address_vs_reg): Node /opp_table0/opp@1000000000 has a
unit name, but no reg property

Fix this by replacing '@' with '-' as the OPP nodes will never have a
"reg" property.

Reported-by: Krzysztof Kozlowski <krzk@kernel.org>
Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
2017-06-21 19:05:38 +08:00
Thomas Gleixner
17d9d6875c Merge branch 'fortglx/4.13/time' of https://git.linaro.org/people/john.stultz/linux into timers/core
Merge time(keeping) updates from John Stultz:

  "Just a small set of changes, the biggest changes being the MONOTONIC_RAW
   handling cleanup, and a new kselftest from Miroslav. Also a a clear
   warning deprecating CONFIG_GENERIC_TIME_VSYSCALL_OLD, which affects ppc
   and ia64."
2017-06-21 09:08:13 +02:00
Thomas Gleixner
f0cd9ae5d0 Merge branch 'timers/urgent' into timers/core
Pick up dependent changes.
2017-06-21 09:07:52 +02:00
John Stultz
fc6eead7c1 time: Clean up CLOCK_MONOTONIC_RAW time handling
Now that we fixed the sub-ns handling for CLOCK_MONOTONIC_RAW,
remove the duplicitive tk->raw_time.tv_nsec, which can be
stored in tk->tkr_raw.xtime_nsec (similarly to how its handled
for monotonic time).

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Miroslav Lichvar <mlichvar@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Stephen Boyd <stephen.boyd@linaro.org>
Cc: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Daniel Mentz <danielmentz@google.com>
Tested-by: Daniel Mentz <danielmentz@google.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
2017-06-20 22:13:59 -07:00
Luc Van Oostenryck
f5d284900c arm64: pass machine size to sparse
When using sparse on the arm64 tree we get many thousands of
warnings like 'constant ... is so big it is unsigned long long'
or 'shift too big (32) for type unsigned long'. This happens
because by default sparse considers the machine as 32bit and
defines the size of the types accordingly.

Fix this by passing the '-m64' flag to sparse so that
sparse can correctly define longs as being 64bit.

CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Will Deacon <will.deacon@arm.com>
CC: linux-arm-kernel@lists.infradead.org
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 16:47:16 +01:00
Gregory CLEMENT
63dac0f492 arm64: dts: marvell: add gpio support for Armada 7K/8K
Enable gpio support for CP and AP on the Marvell Armada 7K/8K SoCs.

The Armada 8K has two CP110 blocks, each having two GPIO controllers.
However, in each CP110 block, one of the GPIO controller cannot be
used: in the master CP110, only the second GPIO controller can be used,
while on the slave CP110, only the first GPIO controller can be used.

On the other side, the Armada 7K has only one CP110, but both its GPIO
controllers can be used.

For this reason, the GPIO controllers are marked as "disabled" in the
armada-cp110-master.dtsi and armada-cp110-slave.dtsi files, and only
enabled in the per-SoC dtsi files.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 16:34:18 +02:00
Gregory CLEMENT
ae701b6002 arm64: dts: marvell: add pinctrl support for Armada 7K/8K
Enable pinctrl support for CP and AP on the Armada 7K/8K SoCs.

The CP master being different between Armada 7k and Armada 8k. This
commit introduces the intermediates files armada-70x0.dtsi and
armada-80x0.dtsi.

These new files will provide different compatible strings depending of
the SoC family. They will also be the location for the pinmux
configuration at the SoC level.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 16:33:24 +02:00
Gregory CLEMENT
db7bc1ba91 arm64: dts: marvell: use new binding for the system controller on cp110
The new binding for the system controller on cp110 moved the clock
controller into a subnode. This preliminary step will allow to add gpio
and pinctrl subnodes.

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 16:22:17 +02:00
Gregory CLEMENT
8dcd4ab004 arm64: dts: marvell: remove *-clock-output-names on cp110
The *-clock-output-names of the cp110-system-controller0 node are not
used anymore, so remove them.

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 16:09:56 +02:00
Dave Martin
bb4322f743 arm64: signal: factor out signal frame record allocation
This patch factors out the allocator for signal frame optional
records into a separate function, to ensure consistency and
facilitate later expansion.

No overrun checking is currently done, because the allocation is in
user memory and anyway the kernel never tries to allocate enough
space in the signal frame yet for an overrun to occur.  This
behaviour will be refined in future patches.

The approach taken in this patch to allocation of the terminator
record is not very clean: this will also be replaced in subsequent
patches.

For future extension, a comment is added in sigcontext.h
documenting the current static allocations in __reserved[].  This
will be important for determining under what circumstances
userspace may or may not see an expanded signal frame.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:59 +01:00
Dave Martin
bb4891a6c3 arm64: signal: factor frame layout and population into separate passes
In preparation for expanding the signal frame, this patch refactors
the signal frame setup code in setup_sigframe() into two separate
passes.

The first pass, setup_sigframe_layout(), determines the size of the
signal frame and its internal layout, including the presence and
location of optional records.  The resulting knowledge is used to
allocate and locate the user stack space required for the signal
frame and to determine which optional records to include.

The second pass, setup_sigframe(), is called once the stack frame
is allocated in order to populate it with the necessary context
information.

As a result of these changes, it becomes more natural to represent
locations in the signal frame by a base pointer and an offset,
since the absolute address of each location is not known during the
layout pass.  To be more consistent with this logic,
parse_user_sigframe() is refactored to describe signal frame
locations in a similar way.

This change has no effect on the signal ABI, but will make it
easier to expand the signal frame in future patches.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:59 +01:00
Dave Martin
47ccb02868 arm64: signal: Refactor sigcontext parsing in rt_sigreturn
Currently, rt_sigreturn does very limited checking on the
sigcontext coming from userspace.

Future additions to the sigcontext data will increase the potential
for surprises.  Also, it is not clear whether the sigcontext
extension records are supposed to occur in a particular order.

To allow the parsing code to be extended more easily, this patch
factors out the sigcontext parsing into a separate function, and
adds extra checks to validate the well-formedness of the sigcontext
structure.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:58 +01:00
Dave Martin
20987de3c2 arm64: signal: split frame link record from sigcontext structure
In order to be able to increase the amount of the data currently
written to the __reserved[] array in the signal frame, it is
necessary to overwrite the locations currently occupied by the
{fp,lr} frame link record pushed at the top of the signal stack.

In order for this to work, this patch detaches the frame link
record from struct rt_sigframe and places it separately at the top
of the signal stack.  This will allow subsequent patches to insert
data between it and __reserved[].

This change relies on the non-ABI status of the placement of the
frame record with respect to struct sigframe: this status is
undocumented, but the placement is not declared or described in the
user headers, and known unwinder implementations (libgcc,
libunwind, gdb) appear not to rely on it.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:58 +01:00
Ard Biesheuvel
8f36094802 arm64: mm: select CONFIG_ARCH_PROC_KCORE_TEXT
To avoid issues with the /proc/kcore code getting confused about the
kernels block mappings in the VMALLOC region, enable the existing
facility that describes the [_text, _end) interval as a separate
KCORE_TEXT region, which supersedes the KCORE_VMALLOC region that
it intersects with on arm64.

Reported-by: Tan Xiaojun <tanxiaojun@huawei.com>
Tested-by: Tan Xiaojun <tanxiaojun@huawei.com>
Tested-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Laura Abbott <labbott@redhat.com>
Reviewed-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2017-06-20 12:42:58 +01:00
Ingo Molnar
902b319413 Merge branch 'WIP.sched/core' into sched/core
Conflicts:
	kernel/sched/Makefile

Pick up the waitqueue related renames - it didn't get much feedback,
so it appears to be uncontroversial. Famous last words? ;-)

Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-06-20 12:28:21 +02:00
Antoine Tenart
a6d8bd919a arm64: dts: marvell: use new bindings for xor clocks on ap806
New bindings are used for the system controller on the ap806, which
means all clock properties must be converted. Use the new bindings in
the xor nodes.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 11:38:23 +02:00
Antoine Tenart
6691565fb8 arm64: dts: marvell: mcbin: enable the mdio node
Since the mdio nodes are disabled by default now, we should explicitly
enable these nodes at the board level when they are used. Enable the
cpm_mdio node for the 8040-mcbin.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-20 11:38:19 +02:00
Christoph Hellwig
e0d60ac10e arm64: remove DMA_ERROR_CODE
The dma alloc interface returns an error by return NULL, and the
mapping interfaces rely on the mapping_error method, which the dummy
ops already implement correctly.

Thus remove the DMA_ERROR_CODE define.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
2017-06-20 11:13:08 +02:00
Will Deacon
dbb236c1ce arm64/vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW
Recently vDSO support for CLOCK_MONOTONIC_RAW was added in
49eea433b3 ("arm64: Add support for CLOCK_MONOTONIC_RAW in
clock_gettime() vDSO"). Noticing that the core timekeeping code
never set tkr_raw.xtime_nsec, the vDSO implementation didn't
bother exposing it via the data page and instead took the
unshifted tk->raw_time.tv_nsec value which was then immediately
shifted left in the vDSO code.

Unfortunately, by accellerating the MONOTONIC_RAW clockid, it
uncovered potential 1ns time inconsistencies caused by the
timekeeping core not handing sub-ns resolution.

Now that the core code has been fixed and is actually setting
tkr_raw.xtime_nsec, we need to take that into account in the
vDSO by adding it to the shifted raw_time value, in order to
fix the user-visible inconsistency. Rather than do that at each
use (and expand the data page in the process), instead perform
the shift/addition operation when populating the data page and
remove the shift from the vDSO code entirely.

[jstultz: minor whitespace tweak, tried to improve commit
 message to make it more clear this fixes a regression]
Reported-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
Tested-by: Daniel Mentz <danielmentz@google.com>
Acked-by: Kevin Brodsky <kevin.brodsky@arm.com>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Stephen Boyd <stephen.boyd@linaro.org>
Cc: "stable #4 . 8+" <stable@vger.kernel.org>
Cc: Miroslav Lichvar <mlichvar@redhat.com>
Link: http://lkml.kernel.org/r/1496965462-20003-4-git-send-email-john.stultz@linaro.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2017-06-20 10:41:51 +02:00
Linus Torvalds
1132d5e7b6 ARM: SoC fixes
Stream of fixes has slowed down, only a few this week:
 
  - Some DT fixes for Allwinner platforms, and addition of a clock to
    the R_CCU clock controller that had been missed.
  - A couple of small DT fixes for am335x-sl50.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZR3FwAAoJEIwa5zzehBx3MmsQAJ+VV9hfqtXihWZFTqM+RqLO
 0qn4BU+zpxS/4TK/cVXy69/PNXRJJqq0hPfmyfBPj3Mm5revejFaFg7w620mBvUy
 01w1Wu2bLf6HG+9PBjmwBl9CIG4qjSHQXKvkT3A/ZVvV1zw+V/Yvs48Y7e7CDYMc
 or+URw9JS5R8UZdJ03oklnkNdSRLfXCfjfwKz6Hn1WmZ30Gsg74DYBuGzvL2wFRx
 qyBaNwTaItipiIIPSzrns4yexpujYwzMxypIF6q9cHXfmnA669NwHCUwhZawdvQi
 ibEoGxTpisjus07/y+zcar73f+NFN3QVtKdTi+XxYTKBPH3OxU4d4DbbE4EBpazk
 G/I8ZVZ87tpuskkLegTuXDjsgfsVJTdBt+Rck4+MGiP/4DccOXXauEsGhbryk5Jg
 TB6r45tf9pDpoYiCF0JIkkl9TLEv4hUXgIYZBYtH1lFXbSVkGpk1y+ZM3SrgSoP1
 U2wAY6vxAB6taGHI/99i3/8VI5Fd7Q06XpaGVyk9ET7pRc5Lvpbz9255jpLOasf/
 8ZkaVk3yM9mzcSEezHohzQd2en1sIvA6gZbLFMBL9UoLBgrtbSJPQCIalnRelwJf
 SZoO/mDmgYAr3Tq3NuYUI4dp1U49q5nGme6ujm98Hg5VdH/50ZDwidaFS/N+Ba71
 gIc2TLD0OMC/zhuOOBaE
 =pi+d
 -----END PGP SIGNATURE-----

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

Pull ARM SoC fixes from Olof Johansson:
 "Stream of fixes has slowed down, only a few this week:

   - Some DT fixes for Allwinner platforms, and addition of a clock to
     the R_CCU clock controller that had been missed.

   - A couple of small DT fixes for am335x-sl50"

* tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  arm64: allwinner: a64: Add PLL_PERIPH0 clock to the R_CCU
  ARM: sunxi: h3-h5: Add PLL_PERIPH0 clock to the R_CCU
  ARM: dts: am335x-sl50: Fix cannot claim requested pins for spi0
  ARM: dts: am335x-sl50: Fix card detect pin for mmc1
  arm64: allwinner: h5: Remove syslink to shared DTSI
  ARM: sunxi: h3/h5: fix the compatible of R_CCU
2017-06-19 16:50:09 +08:00
Olof Johansson
b87a08f962 The Freescale arm64 device tree updates for 4.13:
- A series from NXP employee Li Yang that updates the copyright claims
    to comply with company policy.
  - A patch-set from Madalin Bucur that adds Data Path Acceleration
    Architecture (DPAA) QBMan and FMan.  Quite a few .dtsi files are
    created for SoCs with different DPAA configuration to include the
    devices as needed.
  - Enable UHS-I SD and eMMC support for LS1046A and LS208xA RDB/QDS
    boards.
  - Enable TMU device for thermal management support on LS1088A.
  - Update SATA device node for LS1088A with correct compatible and ECC
    register bit.
  - A few small random device tree updates.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJZRpzyAAoJEFBXWFqHsHzOiB0H/2j7iQRVuiwINPE1VlIyWIrC
 GrBVcf3chm0R/9E87LtX0PdgX2FweKyQ6AHDK2A8zM68pavX70LGVRfKSYqFoVN8
 dEIAHhvNiLMVCPbxiuDtYSsWBSnWLM5+PEpy6pUSej9A/9m6KLyeX82+0QYL/tL0
 /DaN+vwVQm5GYi/5KiK3JQ765Vva435ImYf3+N15Jra5NXVDn4myInOOcvcX6zK+
 WtTckAyJT9e8KLfNA5UT39KbRRD8sZjlIF75TGu6RJGT1KWbU+atzEp1L9Nwgg51
 +5pW11vs5ADoqFiT6LdjGjFf1WJEphWbLoDknDr+QJJThi1mCMy2pU7xMVUF86I=
 =uI6T
 -----END PGP SIGNATURE-----

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

The Freescale arm64 device tree updates for 4.13:
 - A series from NXP employee Li Yang that updates the copyright claims
   to comply with company policy.
 - A patch-set from Madalin Bucur that adds Data Path Acceleration
   Architecture (DPAA) QBMan and FMan.  Quite a few .dtsi files are
   created for SoCs with different DPAA configuration to include the
   devices as needed.
 - Enable UHS-I SD and eMMC support for LS1046A and LS208xA RDB/QDS
   boards.
 - Enable TMU device for thermal management support on LS1088A.
 - Update SATA device node for LS1088A with correct compatible and ECC
   register bit.
 - A few small random device tree updates.

* tag 'imx-dt64-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (22 commits)
  arm64: dts: ls1088a: update sata node
  dt-bindings: ahci-fsl-qoriq: add ls1088a chip name to the list
  arm64: dts: ls1012a: Add coreclk
  arm64: dts: ls1046a: Add dis_rxdet_inp3_quirk property to USB3 node
  arm64: dts: ls208xa: disable SD UHS-I modes by default on RDB
  arm64: dts: ls1043a: Add generic compatible string for I2C EEPROM
  arm64: dts: add LS1046A DPAA FMan nodes
  arm64: dts: add LS1043A DPAA FMan support
  arm64: dts: add DPAA FMan nodes
  arm64: dts: add LS1046A DPAA QBMan nodes
  arm64: dts: add LS1043A DPAA QBMan nodes
  arm64: dts: add DPAA QBMan portals
  arm64: dts: ls1088a: Add TMU device tree support
  arm64: dts: ls1088a: update the sata node
  arm64: dts: Add flash node for ls1088a qds and rdb
  arm64: dts: ls1088a: add esdhc node
  arm64: dts: ls1012a: add eSDHC nodes
  arm64: dts: ls208xa: support SD UHS-I on RDB and eMMC HS200 on QDS
  arm64: dts: ls1046a: support SD UHS-I and eMMC HS200 on RDB
  mmc: dt: add compatible into eSDHC required properties
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 23:07:59 -07:00
Olof Johansson
4623e69d1c mvebu dt64 for 4.13 (part 1)
- Improve the mcbin support (Armada 8040 based board): add sdhci and
   the second 1G port
 - Improve crypro nodes description on Aramda 7K/8K
 - Use new binding for ap806 clocks
 - Improve mdio nodes and add xmdio on Aramda 7K/8K
 - Add second SGCI node on Armada 37xx
 - Improve the description of the Armada 3720 DB board
 -----BEGIN PGP SIGNATURE-----
 
 iIEEABECAEEWIQQYqXDMF3cvSLY+g9cLBhiOFHI71QUCWUTPlSMcZ3JlZ29yeS5j
 bGVtZW50QGZyZWUtZWxlY3Ryb25zLmNvbQAKCRALBhiOFHI71VOLAJoC5+faPv4o
 ob78Tena5JEbNcQtlQCeKrl7v3V4DP3BMhlBa9eguRn4RRQ=
 =LHta
 -----END PGP SIGNATURE-----

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

mvebu dt64 for 4.13 (part 1)

- Improve the mcbin support (Armada 8040 based board): add sdhci and
  the second 1G port
- Improve crypro nodes description on Aramda 7K/8K
- Use new binding for ap806 clocks
- Improve mdio nodes and add xmdio on Aramda 7K/8K
- Add second SGCI node on Armada 37xx
- Improve the description of the Armada 3720 DB board

* tag 'mvebu-dt64-4.13-1' of git://git.infradead.org/linux-mvebu:
  arm64: dts: marvell: add xmdio nodes for 7k/8k
  arm64: dts: marvell: add a comment on the cp110 slave node status
  arm64: dts: marvell: remove cpm crypto nodes from dts files
  arm64: dts: marvell: cp110: enable the crypto engine at the SoC level
  arm64: dts: marvell: armada-3720-db: Add vqmmc regulator for SD slot
  arm64: dts: marvell: Enable second SDHCI controller in Armada 37xx
  arm64: dts: marvell: armada-37xx: Use angle bracket for each register set
  arm64: dts: marvell: armada-37xx: Align the compatible string
  arm64: dts: marvell: armada-3720-db: Add information about the V2 board
  arm64: dts: marvell: armada-3720-db: Sort the dts node alphabetically
  arm64: dts: marvell: disable the mdio nodes by default
  arm64: dts: marvell: explicitly enable the mdio nodes for 7k/8k DB
  arm64: dts: marvell: add dma-mask in crypto nodes for 7k/8k
  arm64: dts: marvell: 8040-mcbin: Enable 1GB Ethernet
  arm64: dts: marvell: cp110: add required clocks for mdio interface
  arm64: dts: marvell: use new binding for the system controller on ap806
  arm64: dts: marvell: remove clock-output-names on ap806
  arm64: dts: marvell: add second 1G port on the Armada 8040 DB
  arm64: dts: marvell: mcbin: add sdhci
  arm64: dts: marvell: add clocks for Armada AP806 XOR engines

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 22:59:47 -07:00
Olof Johansson
5d518c8aa3 Second Round of Renesas ARM64 Based SoC DT Updates for v4.13
* Add reset control properties for audio to r9a779[56] SoCs
 * Add add DMA for IIC_DVFS to r9a779[56] SoCs
 * Add support for Salvator-XS and H3ULCB with R-Car H3 (r8a7795) ES2
 * Add missing index to PWM pinctrl subnode name to Salvator-X board
 * Add 12288000 for sound ADG to Salvator-X and ULCB boards
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZQ9NmAAoJENfPZGlqN0++YKQP/29K6aCDPyztpPHBpmDs6oEx
 viTr0YTxyIBD256Z+gJMxlDRm36HZzZFRzFdLn2c5iGjHt/jXY5bPTvMR9FkPUDJ
 OHB1SPOVoyYdy0l+ti+RdO4JoIM295auueL4vlyVLz0co/3q97RUWlfVclZtuIx7
 k4m0hhmFgeVloNFYIOOKWr60MHcz5tw1tEm48wsLk2hg9OkugkbIdEo64rq6Q08G
 2Sw87T9+4K2TGA8RV0ypjlZ/xfryfnGbDy2bNQNDyph+5NK6KrJYdoj4vUTzfPLX
 1e2uIF9KcTMiAf6BVtx/rTAXM2i3F4xAlL3FNyqLMIfAkIWwVZ62Jf22BFQ4QQ1m
 lcE9wsP1zDO7DvaqGsuq3kyA8eZ7w1UHo+Xx7rpin1hl4D7H53jDyXWpDJqyAuYH
 /lxTCQ2y3sdsixHINwLD2Dgmv7O5OaHiqMH0rPGcoaayqDWNm1j8SqxMNvU5hUKp
 6jMmZST55+P52nYlAJPP4zVcJ6BzBhMa4tcaTth6cg6fAFF68kHyeeahjRgh3PS3
 Fqt+mrXey1meWpBsWGJsnpgcDAVcVEDqOI9eDKm7vQFWi6bfn46feYw7geiPiABf
 IPDITrmnKJXlP2wjz1Uw3kRSbG9cl36vgVWLdqaq7P37xRgmkL1R5bYo/u/UUW/N
 kkWe3GgcxbwtNoCeNkxr
 =wed7
 -----END PGP SIGNATURE-----

Merge tag 'renesas-arm64-dt2-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt64

Second Round of Renesas ARM64 Based SoC DT Updates for v4.13

* Add reset control properties for audio to r9a779[56] SoCs
* Add add DMA for IIC_DVFS to r9a779[56] SoCs
* Add support for Salvator-XS and H3ULCB with R-Car H3 (r8a7795) ES2
* Add missing index to PWM pinctrl subnode name to Salvator-X board
* Add 12288000 for sound ADG to Salvator-X and ULCB boards

* tag 'renesas-arm64-dt2-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  arm64: dts: r8a7796: Add reset control properties for audio
  arm64: dts: r8a7795: Add reset control properties for audio
  arm64: dts: renesas: Add support for Salvator-XS with R-Car H3 ES2.0
  arm64: dts: renesas: Add common Salvator-XS board support
  arm64: dts: renesas: Extract common Salvator-X/XS board support
  arm64: dts: salvator-x: Add missing index to PWM pinctrl subnode name
  arm64: dts: r8a7795: h3ulcb: Add support for R-Car H3 ES2.0
  arm64: dts: r8a7796: add DMA for IIC_DVFS
  arm64: dts: r8a7795: add DMA for IIC_DVFS
  arm64: dts: ulcb: add 12288000 for sound ADG
  arm64: dts: salvator-x: add 12288000 for sound ADG

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 22:40:59 -07:00
Olof Johansson
e4140e649e Renesas ARM64 Based SoC Defconfig Updates for v4.13
* Enable Simple Sound Card support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZQ9IiAAoJENfPZGlqN0++yIoP/3Q4z6mpjC46tcpKc9yH6y3w
 Xl8GPDr7MSkmSQO6GgdIFlKET7itoCD14PhceHbJzJkrFD5qLAGXQa/CMKYynmtq
 XuA8KC66/ViokU8cztQx3uPEyGjzpFftg0oWPxw0TRGJFYUpsAiR1t9l43sF+h/q
 eGxFWUferJa2QoB02xfRCD8MpowTRm8lFoO5pM6yc5vOfweSQSc3RvRagvIIcp53
 9ACk3QGdL+SE7Xyoofo/J1BKDwnina1bru3rkm9UzLSN2JcMZk9NvE9Lfk9Q68x3
 2fZjXu6OVqbuvj3ns73FAFXwVS3ZGKRYO4PYUd4+WTOaw9T/OZT1fRQKErQ2ew7z
 8VpDsGn1/fdm3vHNoaENM/7v1msLk806fePrjudRpHQ8sIB7G+lcVHWcrboIZwsq
 WZELfAIBM3Sh6JY+P2wLJVx5sETQTo5Wztq/fUVSC66UZWv+shSXcQGPVANWgYID
 cmqNgsnQidflZXuGhkRRBEPz2l0myqBmVp0XGj+aBQrsAI7e3sZjVb9QAG8COPn9
 bsAW0/l3OsRt0OpC0rfkXqdU80CFljmgjzU8cxjQolsPSTS3qNadACb6nS2N9sAl
 egpp2g42dxYuNb9K2SXT92P90faGE6CZmU0LmAMOIaF5kH/JEVg6T2UTyQLnrUrC
 87FiZ0EQ17KOenJ0onzp
 =13yT
 -----END PGP SIGNATURE-----

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

Renesas ARM64 Based SoC Defconfig Updates for v4.13

* Enable Simple Sound Card support

* tag 'renesas-arm64-defconfig-for-v4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  arm64: defconfig: enable Simple Sound Card support

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 22:40:28 -07:00
Olof Johansson
9d03b29694 Qualcomm ARM64 Updates for v4.13
* Fix APQ8016 SBC WLAN LED
 * Add MSM8996 CPU node
 * Add MSM8992 SMEM and fixed regulator
 * Fixup MSM8916 USB support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZQBXaAAoJEFKiBbHx2RXVLrgQAL5Bm+Tnl7jE03Cdtis+ob3Q
 htJxDMVK5jNStB9CqrH30cUJn8vyRExc2eFWM3Kugz5m7MkFcPIapPLynmIJQVU4
 87hEKu07DOlWmBkWsm0N4VhRlYcp79ahWwCM3mzxm4lqHJiDSSd0U38qhuHeYOM3
 6VPw18BFF1c9Cy72U2sITuPIu0u0F5uaeQ0/XMp9RESHoDkv1iMvNSRaPeA9UoEI
 YRe3FqBqtYL80kG1LFQ4pdVSFjcCkxswqR9I4JFtUdSOvo8mxGTTy0/MIsFWZ2qG
 V4JuFTM+iPzJuy6AZKPUj5EdsNvx9Fu329nyRl+wbVvDWRvNkmYS3fDwedNAx+aw
 yoD8vO9ruM2V63wb17fLFG3jPi+uc0WZnzY/vDwqK4imt1RPfhfabKgRzUGHT02Q
 LrH5bu1J1b7bQnHCmk12x7s6RrrWMLr4aPrqtPyu3/jVRuck5IX7TbWffe/Pu4rJ
 CSADP9gWRP4QxmJ6dw7NAneZLRJgHjCAMTkTY5HkkSLROLkf1fzAP6NZ+lgU6bQs
 6T1pvPpxGTBzEjLAzdhrYHsDje/rnLm0q1Mvp7IN6RniBcZP3Qs/PoCGje36cbBa
 ASZ3vHnlcwULyRphaqNSPQ8+5Bq5hkgRMAVFn6XBj4ok2ZeaMq3VymHgGv1KAKkE
 1CnzKKoyTDu6/vjViEw9
 =91Qc
 -----END PGP SIGNATURE-----

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

Qualcomm ARM64 Updates for v4.13

* Fix APQ8016 SBC WLAN LED
* Add MSM8996 CPU node
* Add MSM8992 SMEM and fixed regulator
* Fixup MSM8916 USB support

* tag 'qcom-arm64-for-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: dts: apq8016-sbc: Correct WLAN LED default-trigger
  arm64: dts: msm8996: Add CPU clock controller node
  arm64: dts: smem enablement for msm8992
  arm64: dts: msm8992 add fixed regulator
  arm64: dts: qcom: Collapse usb support into one node

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 22:28:48 -07:00
Olof Johansson
e4b79c3b6b arm64: tegra: Device tree changes for v4.13-rc1
This adds the CCPLEX cluster on Tegra186, which is used to initiate CPU
 frequency and voltage transitions.
 
 Also included is a bit of cleanup for PCI related device tree content,
 in preparation for a future DTC release that has additional checks for
 the PCI bus.
 -----BEGIN PGP SIGNATURE-----
 
 iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAllDkc0THHRyZWRpbmdA
 bnZpZGlhLmNvbQAKCRDdI6zXfz6zoVAtEACNPwpKvx7jTNmP8Z2nGARRU/7X5PjK
 BXRd3C4IgCgOmUHrUQCOvxPVdtYqc/lyW7Bs8v3jo3o5eOG+glXoZ/QRRlwKmBnV
 hJrxT4qfgC0MwdXdukbxQ44wP4ehQdZBTxhyBuRHj0JpW6/cJ8DKfe6hNYhexzR0
 sUXiRzf6VskehZHVeowkqNNoltoEsIzwshIwWKh1Z6gZydPHTmop3jd+v/iWFBj6
 jDkF1FZv80I+MulChz5enGEKq1b5E9E0IU9zd8jnelqRAqCDy+xw7x1sGg6KM2st
 z3lL17msDPV73KBWfyPJ20vIodFfY9WUlQ4E3DzHHTkdUUMBzQ7C804c4HPf/8KE
 rF9/0Kr+JFOuzo8znHtvz8WQiimK3X8BH7MwhuFNlfzniu3PPqBeFmf/mZcxl1Cx
 xf17l43tTM14e7+8rjVMmuIfqCnrIbW0bmr74YgU20VOvdQ1T0VUBQCFDG3bU+zT
 t4ljt7G8/i4SoWf1eVUtv7PW/miwEb8qnjx7yfHS7Qzfjhr+z3OxorqIdc1A0n4l
 rxVBkpjRpcRyXicmF8j+aT3cU5inVQ0UnvKbkiFmsia3hIPKlAnLJXFQLvTRizKa
 1BXa0HH4QvQxnmLzVGx9aOcndI1XoCMmNQMAdFeC4XXD7IDJ8CXke9hVU875cj6V
 YWX4IqtXljIDgg==
 =nFWX
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-4.13-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/dt64

arm64: tegra: Device tree changes for v4.13-rc1

This adds the CCPLEX cluster on Tegra186, which is used to initiate CPU
frequency and voltage transitions.

Also included is a bit of cleanup for PCI related device tree content,
in preparation for a future DTC release that has additional checks for
the PCI bus.

* tag 'tegra-for-4.13-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: dts: nvidia: fix PCI bus dtc warnings
  arm64: tegra: Add CCPLEX_CLUSTER area in Tegra186

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 21:02:19 -07:00
Olof Johansson
010da09e26 ARM64: DT: Hisilicon SoC DT updates for 4.13
- Add and update Hi3660-Hikey960 board, Hi3660 PCIe RC, Hi6421v530 MFD and
   Hi3660 MMC binding
 - Add and refine devices support for Hi3660-Hikey 960 including clock, reset,
   I2C, GPIO, UART, Bluetooth, RTC, Power Key, LED, SPI, timer, PMIC, regulator,
   sd/sdio and WiFi
 - Add k3-dma and i2s/hdmi audio support based on audio-card-graph method for
   Hikey board
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZQ+xAAAoJEAvIV27ZiWZc9m4QALQpeVS+9RHYkLKuDfOlkZUY
 g0N0QcQSrOgsASgpDpHnozrUD25v+A8hyL2yXFyeFQSAG9+q295GKHFIHquEY+lb
 Rk0gUSNjvZj7JWcXBV1ydfLvuM3Qu/tRv2GKmaJTnuJZp2x1Bu3T/JemlAEW8hGT
 x4zxbcw1YtvqMYksii77iXSN4VoVVDVgdLoEre4q6vGwC9PVFwu0+wSPRYMmsglX
 lnE4+DdVuqokbHBAAteTVFLMoHP4UKj7UXA143dUuC8A8v607o1NLRgWpGfrr4aN
 7lCPhbKSoZMizDP7G8E+po8ygMwGQGwOqfVEetO5CW45nJa+w7SECBI1zLSOV3J6
 cV/Fs7tIPsTuJb438pPP/GMuciSEK413Iy99CmLZLG/ByIXOsPwW59ARsd/tUlob
 k6fVvjScQr281Ietqqls4oKzICLpoV3yzeio+NDyOaX4swq3mY+exWlP6y8fIemx
 2OdIUrxSMd76tdYxDjtchwNw/SmwrHXIAwF/AndVM7B3qb2SFEgJq7BK7rp+Ebci
 4ULYmK4B+nbMg5HbDsokqvxbWXjGFgbBF7UNcFlYajiz9yo9v6w1sKzRhcGBGmDS
 Iw1dtebbtqBAQdggraCJtNjxLYfQZ4e9V49KrYjq/J9aAqfnzsRprXuu3Xa7uj4C
 F1OeJ+wTDtGoL12OJAWa
 =/TK9
 -----END PGP SIGNATURE-----

Merge tag 'hisi-arm64-dt-for-4.13-v2' of git://github.com/hisilicon/linux-hisi into next/dt64

ARM64: DT: Hisilicon SoC DT updates for 4.13

- Add and update Hi3660-Hikey960 board, Hi3660 PCIe RC, Hi6421v530 MFD and
  Hi3660 MMC binding
- Add and refine devices support for Hi3660-Hikey 960 including clock, reset,
  I2C, GPIO, UART, Bluetooth, RTC, Power Key, LED, SPI, timer, PMIC, regulator,
  sd/sdio and WiFi
- Add k3-dma and i2s/hdmi audio support based on audio-card-graph method for
  Hikey board

* tag 'hisi-arm64-dt-for-4.13-v2' of git://github.com/hisilicon/linux-hisi: (21 commits)
  arm64: dts: hi6220: Add k3-dma and i2s/hdmi audio support
  arm64: dts: hi3660-hikey960: add nodes for WiFi
  arm64: dts: hi3660: add sd/sdio device nodes
  dt-bindings: mmc: dw_mmc-k3: add document of hi3660 mmc
  arm64: dts: hikey960: add device node for pmic and regulators
  dt-bindings: mfd: hi6421: Add hi6421v530 compatible string
  arm64: dts: hisi: add kirin pcie node
  dt-bindings: PCI: hisi: Add document for PCIe of Kirin SoCs
  arm64: dts: hi3660: add sp804 timer node
  arm64: dts: hi3660: add spi device nodes
  arm64: dts: hikey960: add LED nodes
  arm64: dts: hi3660: add power key dts node
  arm64: dts: hi3660: Add pl031 rtc node
  arm64: dts: hikey960: add WL1837 Bluetooth device node
  arm64: dts: hi3660: Add uarts nodes
  arm64: dts: hi3660: add gpio dtsi file for Hisilicon Hi3660 SOC
  arm64: dts: Add I2C nodes for Hi3660
  arm64: dts: hi3660: add resources for clock and reset
  arm64: dts: hikey960: pinctrl: add more pinmux and pinconfig
  arm64: dts: hisilicon: update compatible string for hikey960
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:56:42 -07:00
Olof Johansson
2003c78b3c ARMv8 Vexpress/Juno DT updates for v4.13
1. Adds support for Coresight CPU debug MMIO interface on all Juno variants.
 
 2. Enables support for few SMMUs on Juno which were previously disabled
    waiting for IOMMU-backed DMA API support to be stabilised.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJZQmvdAAoJEABBurwxfuKYob0P/RB2bYmP0bjlIP/QRII1b3tI
 nlBIWQIcOSzedLK3sayK3WCSsyYeLAQP9Y3qRM6GJwzTd5fGHJNUzwEHKhxvml+6
 H8z/7ym0OoIRYdY40OyOdao+9uKm1A7i399KPKd+1Ukwfu/1eKyBRMIuqbo/PQ+I
 yCDhlEPCWTPpUQF4gAslowg9HYSeUtbfFtekT+BqA9MHz0pp8Btr3yOTUhaHy5w7
 MGV4sQfi9IqwBqvy5BDR7byFoGzYdZJN0MEQkQyjK08fJITNRzrUOHffbEWcQ6N8
 Q4yCay0BpNw0JMCwEJmsysKw0XyPTyPSVZdfoFH9gTxDEymxSv+GYeoqSEhjpvWM
 6SESHyfBGuEbYCITQafeD1bS9vI3bbgpoUj7aw6tql1gW2GusUV7PJACjIIkp24M
 LurfA/WgBLn2NUYC5GG5e919EzDFKzHwe4fJA6tfSf14pq/a3HUpFoArn/z9vX2k
 UnGmFHpWCoRff3ZaEI9d8faHoHhU4h0hNaTFhPAAT+4YF/Vz4Bj/2wilUTO3AQ98
 zX1cEsxQFQjPl1JjpWXeEASgsK9KmnV13eVMgWpUuUzbHZoifzwvuBOSIQA8QXh5
 z0Jh7zM26n8SAB6JxI74Imw4b5eXWPZDSPsbUXeGW5VjENzzue3fBaieLO6Q3t4d
 YEAJXL+pJTBLQL/dZHQL
 =BIsT
 -----END PGP SIGNATURE-----

Merge tag 'juno-updates-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into next/dt64

ARMv8 Vexpress/Juno DT updates for v4.13

1. Adds support for Coresight CPU debug MMIO interface on all Juno variants.

2. Enables support for few SMMUs on Juno which were previously disabled
   waiting for IOMMU-backed DMA API support to be stabilised.

* tag 'juno-updates-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux:
  arm64: dts: juno: enable some SMMUs
  arm64: dts: juno: add coresight CPU debug nodes

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:55:51 -07:00
Olof Johansson
b69cfb5abf Allwinner H5 DT changes for 4.13
Just like the H3, this is mostly about enabling the EMAC on the H5, and
 also has a new board, the Orange Pi Zero Plus 2
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJZQZulAAoJEBx+YmzsjxAgdrIP/2Y+cVwgdqbe3JzIy2xAbboe
 5/jYgEkrxT9u0yFefKZCbPMUnz9q9hBjqYHnTRwzTMuIGvSqsxgWqsVBL+OZoFHk
 s3OUJOm0FnRV+5Er1NMbfkfW2rRmeQzsCYpKMf6bTkfyIAk4rSqMnB5ruZCYINbZ
 OyNO7IFQ7ryORGpRT8F70dNeqsN7wxtWAhNN+FWC0UaHAZbXFZqGny5YINGghX1h
 74gy8hU4/qQZfHd+IBFf2v/WB1TYgNFHxKMfnoHvj3NQtWtV8GqQg3X32tY4YI7t
 S873vCYZhqLLlGJYPbScFjsVCr8pW2851fZxfvd2cUNQR65b7EzJAI25+9N7aPau
 rZVDi2eUZlchmEZhpg1W4k5xcBhXjXvaK11dOyue48S9WI1PcAMeI19vRm4AhFqm
 p6v5UTUgJpD/pKP7ZkrpXdi5rg4jjQ+JNltjeks9vcakDg+feiOlq8euNq2Vq8Wu
 vML1s15CL2WHVD/4FiDTUHKgz6v86+ksYqY0VOnr2eWGLrlkb8XtV7HlCfzFUuJ3
 V0v7d45wuW/renvGziTwhxqyA7h+V/R5rww+/HwSGOuAY7KtATYVfpNWIX/aYNEU
 aeEVR4FtN+usgKCMBnieD9FfN7Qe86aFq1d5hCaWrgKooZ9TaLlWN6RQuWJ/NTf5
 YvA3keSVdqByZBgw1PkT
 =x40b
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt-h5-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt64

Allwinner H5 DT changes for 4.13

Just like the H3, this is mostly about enabling the EMAC on the H5, and
also has a new board, the Orange Pi Zero Plus 2

* tag 'sunxi-dt-h5-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: allwinner: h5: Add initial Orangepi Zero Plus 2 support
  arm64: allwinner: h5: enable dwmac-sun8i for Nano Pi NEO2
  arm64: allwinner: h5: enable dwmac-sun8i for Orange Pi Prime
  arm64: allwinner: h5: sort the device nodes in / part for some boards
  arm64: allwinner: h5: add support for NanoPi NEO2 board
  arm64: allwinner: h5: add support for Orange Pi Prime board
  arm64: allwinner: orangepi-pc2: Enable dwmac-sun8i
  arm: sun8i: sunxi-h3-h5: add dwmac-sun8i ethernet driver
  arm: sun8i: sunxi-h3-h5: Add dt node for the syscon control module
  ARM: sunxi: h3-h5: Convert R_CCU raw numbers to macros

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:45:17 -07:00
Olof Johansson
a1858df975 Allwinner fixes for 4.12
A few fixes around the PRCM support that got in 4.12 with a wrong
 compatible, and a missing clock in the binding.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJZQZkZAAoJEBx+YmzsjxAg4nAQAJJqzy8//Ur0o6Ppc6eufIAY
 gYGS80x5n/a6/X7PPMj/cMBVc1/HoOoF5YVKry2edRi4jKwpBjCE6THNJ/EdI0LM
 6PrN4y9yJAzxbwWfD9rfVNLg54665TGW8etBp5C3Sqdi+qmU9BTL068UYGcA46I8
 XGZ53wGLnCfRH5VGpVzxORbdQMStKsZ2D0PTmZ7aJU2nrPugbf4DiGg2Uhgdx+bI
 Mz3Zl6cZQraWdl6gSVTjG1Z5LQOKo5tXGIaC4zxbXe/Ss2lspxM3WKtJDhdtoTH9
 ZiLGDf6Q3XUeMN5WkQNT6ZnT8+/8NQujhcktEfxhfiA5pGeHLzuOCaOLgEWVy8sc
 Z6jNLHUht3W/XGOGY0szKfqmsOnDdnsnv3YbCUoWJ/0ER8kwQdJ8k4iI1EVMi23Q
 UcXDiZivCgjj7mYOzfhG2YYZ03rxhadPqsnoDro/a+mI6splPhQplJC/we8TUYHt
 eJmXF3rvOgXGYJAdnF8FJiftzUKUd0h8S8qsxBB3knP4mPY73vtppsvJwPOqlil2
 EPcqHmcd3EvHRZrmHNsP7qpQXMiaWqImf6Ioq7hz4mPPJ5uiIPrEIdRmACCAdn9H
 eeOQyI0rdg3bTCKi/dztaX4zVCMjEy9HG0xZ/Y6dvPwKjuWTpJApsTC+xEaiql2L
 gQ+OFMX4mvgr79OUNp7L
 =WD1J
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-fixes-for-4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into fixes

Allwinner fixes for 4.12

A few fixes around the PRCM support that got in 4.12 with a wrong
compatible, and a missing clock in the binding.

* tag 'sunxi-fixes-for-4.12' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: allwinner: a64: Add PLL_PERIPH0 clock to the R_CCU
  ARM: sunxi: h3-h5: Add PLL_PERIPH0 clock to the R_CCU
  arm64: allwinner: h5: Remove syslink to shared DTSI
  ARM: sunxi: h3/h5: fix the compatible of R_CCU

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:42:21 -07:00
Olof Johansson
08d13c7028 Allwinner arm64 DT changes for 4.13
Our usual arm64 changes. The most notable things are the EMAC support and
 USB support enhancements. There's also support for the SoPine SoM, and the
 OrangePi Win.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABAgAGBQJZQZR6AAoJEBx+YmzsjxAgbdsP/Ajq3CXNiJE9iMHdcQhDt/JA
 4nUQuzP4F00HTd4C8xwl/17zNic1X/irSKg7bdm9vCYmW5wD1TT9OwsLaJZLCbgk
 63+MHuxObvVmjpIoVs9rjT40H1v4b3bGPJmHhBL/RIvkO9yKAfqQ9Yw1Wk5XXfNf
 N6d06GgnpYyVYVuL2IJqTYeJqqk6uh+9gi4FjEVZmpL6zdPzLe9P4AVrHgsj3QK1
 Y6xZzo3YY4ulHE99LQkLpT4RJP4Fqpalb8vE3+xmn/OcSA2O+wwNvrYxatW9mp9O
 Qs0FEem4o3x50Oz5DVnml/BbsnDeI5nzGIm+gwHQxYOq1Jrab7N0og61Lb8oXos2
 fxYqF7tHLKvCXjY7df+tLpkGjqPuF11KoM7xKM65bF7PfvXAmUq+tj/6ZWdLFIqk
 JEYhP/xoRIli+m8blH/AmH7XZBQ7+HRJOHHmwsshozR4u4ty3WRSJDOG3SvGWKPh
 txDHynuHN8ahevohRPMDYLutaAX8U2recj47Rm33Q89sFsHIbJ4OtkHIQGzgld0M
 aj8K7fnRayWUp9J5jDjhLaQazP3F3aeCazdTA8+KqERhvJUodNYZM1Wps3PVipxg
 9O/iQbCXivJaqFjRfgnoenh84G0pRzpXt8mM2fYyam7W1bzhEzJTl4+G08N2DxSg
 KrhqR1bXR03D5qnX8y3N
 =MCTy
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-dt64-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt64

Allwinner arm64 DT changes for 4.13

Our usual arm64 changes. The most notable things are the EMAC support and
USB support enhancements. There's also support for the SoPine SoM, and the
OrangePi Win.

* tag 'sunxi-dt64-for-4.13' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux:
  arm64: allwinner: a64: Add initial Orangepi Win/WinPlus support
  arm64: allwinner: a64: add device tree for SoPine with baseboard
  arm64: allwinner: bananapi-m64: Enable dwmac-sun8i
  arm64: allwinner: pine64-plus: Enable dwmac-sun8i
  arm64: allwinner: pine64: Enable dwmac-sun8i
  arm64: allwinner: sun50i-a64: add dwmac-sun8i Ethernet driver
  arm64: allwinner: sun50i-a64: Add dt node for the syscon control module
  arm64: allwinner: a64: add DTSI file for SoPine SoM
  arm64: allwinner: a64: Convert CCU raw number references to macros
  arm64: dts: allwinner: pine64: Prepare optional UART nodes with pinctrl
  arm64: allwinner: a64: enable RSB on A64
  arm64: dts: allwinner: pine64: Add remaining UART aliases
  arm64: dts: allwinner: a64: Add UART2 pin nodes
  arm64: allwinner: a64: enable EHCI0/OHCI0 for Pine64
  arm64: allwinner: a64: add EHCI0/OHCI0 nodes to A64 DTSI

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:41:35 -07:00
Olof Johansson
0fd5e85267 Amlogic 64-bit DT changes for v4.13
- cleanup/reorganize alphabetically to better avoid conflicts
 - add HDMI and CVBS nodes for multiple boards
 - new pinctrl pins: SPI, HDMI CEC
 - SCPI: fix thermal sensor reporting
 
 New board support
 - NanoPi K2 (GXBB)
 - R-Box Pro (GXM)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJZQW/vAAoJEFk3GJrT+8ZlfCYP/3djmzPvLMITaV7EbteiyHWA
 b/YZMGVySW4N6K/qXthZvGNbJ2aLmx6TdRDoj1weimSbDl9KMnZvrLkJGVf8fY74
 qC5wHJ5zZq6Gvq33Zn7m0P1ZAi1ItuI5g+ggn1QibimGO9JIyHVG2/FUkFIBHz0c
 X8U5Er/BmF0PbBQW/vqgO4Wy2kFSbCrESgMq3GoOOCfaPnSUlMnzoGA5Va1gKY0u
 fNfuKBE2A2sy+NNPxwT3nTCZkmt1LZplFgjJcjV9sSFd9JiwIll87J0zLoNjOWXt
 SzIzmUfq8ur4bPAg+5kInrgffC446+CWFwJY/KmaUw7/BiwBuQO73JwPyUA2u+0X
 hxOhX0yUjWfy6F43sHBwoglqNCxfHRGKLZWAYtiShtPF1N/SiObrzWJUXTW8noL1
 dB6YlRkZoTOASRamEhNGMwmu9aDS5aFC/D36gbAUmAf6WBU67PTIiO68/gEUpzbB
 TwsQW5TD4UcIxK3/rzAbreGvl06TBcvYA4tD1JDzIoXexdKgeB4b+URSbCn7vgsE
 Ka5myloDecC5aiNkpYjJuJP3bq8bEF9DBfZxwIjoqvtEKEAmZfNCNhouoBzlOCCi
 cqCr+Ige9kM2PgUTtjwXGexXLIW9B0aMkvuplbHfZ5aF6RN7IAq78xzbiVivIPFM
 58PZYz0Q/rlTBrmJ59mM
 =7jfz
 -----END PGP SIGNATURE-----

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

Amlogic 64-bit DT changes for v4.13
- cleanup/reorganize alphabetically to better avoid conflicts
- add HDMI and CVBS nodes for multiple boards
- new pinctrl pins: SPI, HDMI CEC
- SCPI: fix thermal sensor reporting

New board support
- NanoPi K2 (GXBB)
- R-Box Pro (GXM)

* tag 'amlogic-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic: (36 commits)
  ARM64: dts: meson-gxl-s905x-p212: Add HDMI and CVBS nodes
  ARM64: dts: meson-gxl-s905x-khadas-vim: Add HDMI nodes
  ARM64: dts: meson-gxl-s905d-p230: Add HDMI nodes
  ARM64: dts: meson-gxbb-wetek-play2: Add HDMI and CVBS Nodes
  ARM64: dts: meson-gx: Fix sensors reporting from SCP
  ARM64: dts: meson-gxl: Add SPI pinctrl nodes
  ARM64: dts: meson-gxbb: Add SPI pinctrl nodes
  ARM64: dts: meson-gxl: Add Ethernet PHY LEDS pins nodes
  ARM64: dts: meson-gxl: Add CEC pins nodes
  ARM64: dts: meson-gxbb: Add CEC pins nodes
  ARM64: dts: Fix GXBB periphs pinctrl pull-enable register base
  ARM64: dts: Fix GXL periphs pinctrl pull-enable register base
  ARM64: dts: meson-gxl: Fix pinctrl periphs gpio-ranges
  arm64: dts: amlogic: Add NanoPi K2
  dt-bindings: arm: amlogic: Add NanoPi K2
  arm64: dts: meson-gxm: Add R-Box Pro
  dt-bindings: arm: amlogic: Add R-Box Pro
  dt-bindings: Add Kingnovel vendor prefix
  arm64: dts: meson-gx-p23x-q20x: Fix node order
  arm64: dts: meson-gxm-nexbox-a1: Fix node order
  ...

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:40:24 -07:00
Olof Johansson
77b0611f77 Amlogic arm64 defconfig changes for v4.13
- enable meson SPICC as module
 - enable IR core, decoders and Meson IR device
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJZQXJjAAoJEFk3GJrT+8ZlL8wP/jeUqx592UtMlLYFmuDrbImn
 Ojn7vBY8fZyo4ZqymK5HzgEsaieQBi0CS1CsFjio2Y0CsGaYbrjddBZpPelWjVuf
 lyINNrV1IZ+r6FKzIQIRmJ+zgeUWwkWOrsufuoeyzVuMW6rsVevgB7dA/WVQt6v2
 8e9Lni0ZF2ZT8gMdG1C5HHcyx/+M/iftzEBnFIATT7BE6SCuvCThEH7pl5I56bk0
 ZYZsRVDc8RyC7gSSCoH8zyWmzLJcQQVuGQT1/QF8bxrK8nHgJGH+1mzKnn6sfiba
 ZwZIOjQDl2SAsBgpTUcl1N2pNcKG6KwyT6+7tjfBt8OP7hgFfOrLX5AZ7sQgtywa
 nz1rPMvox4Po4BdB/V5wpvOWKQvoOyFFpXpvG7JTXqkFx2JuM+4bVPbiVc85qd54
 AsqCNy8TAsIRkdX8mou4oPq7FKzIkrt6nxwV/bijOjlhFhg22+dWOfwBmTmkN5g5
 8ehn/P+JlwEYvbMKkgvHIRvC2McyNhO/Mb2Qxw99ej2gujjj4PA0HjqfZjXvsqTQ
 DpfOODw5Ql/dwjz9ZxYAxE/MeSYbr2GAncEhyCJEJ5YekTsginSFdUG+HVwaS/cf
 6REI5wTALgyCyl+vTJpti1wGD2KC9RAoBYMKopJz12kmxq1Ba2GyK7J/Icpik6n6
 gwnSFRuOitACPbk6OSZl
 =MTfE
 -----END PGP SIGNATURE-----

Merge tag 'amlogic-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic into next/arm64

Amlogic arm64 defconfig changes for v4.13
- enable meson SPICC as module
- enable IR core, decoders and Meson IR device

* tag 'amlogic-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic:
  ARM64: defconfig: enable meson SPICC as module
  ARM64: defconfig: enable IR core, decoders and Meson IR device

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:36:59 -07:00
Olof Johansson
a91ca5e376 This pull request contains ARM64 defconfig changes for 4.13, please pull the
following:
 
 - Florian enables ARCH_BRCMSTB in the arm64 defconfig to get more build coverage
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJZPs3NAAoJEIfQlpxEBwcEkMQP/REAq/Mso8ChSoohC2xZekMs
 qgW07yvitr4LrqF7gmYXTqrE+vLrHOK4anNztg4fGJO4+NbrNoiPiK8SUGUzrKSB
 caPz4G/zn9rY3DbjeayZUcT1+DhbNCZ6eLLyqadHoBqBghUIpiNE34O+rDNErF6f
 TnMptJYzSp4RdrgWDfQ9EMrRIF7atp3TLJKYm5SIvQg1sUNUen6Fff0l6x3gjqBZ
 QR8/Pd6aGjyvZbyOEsFd4WqFr55UM9JtYj69iJwRtHaqmaZT+AztqNZrQhOmHVxS
 GF2gWnCS3OIIJh9KHEKERC5mXDN2rL9ooQSDCsgBUjAXi3C0nI4MaRB89cn76SG8
 0CCbb85hJqRf1qAoAX4r6qFHrkIumPSML9PNuHe9xEBQrnpkqzC/JtsnvuhsKrU3
 xOzQ5HG3OFREJO5WlIXkoTboKbWr0hDRSDs28MZAJ5FyD0sfMrQNSsKFo8R6VXJP
 omP2mNMpUt7o0TwlgtGv+ADCW7IxHEfyONQuFxCHJBiINf+sRSnuvMHWMPVDdMzU
 vjTUtW5K4HmPhp7DXTWssQFNVG9fsX37CFFSWlnq+0r1qQSN624QqHr81xeNhezo
 IXUhFLvDy8Rob0I9gH0I2cIMU+UazVFC3XJHisC1tTyo6OXU/HYWat8U4vOe4R/m
 38H7iERBTSb2naSZTp7e
 =EPCT
 -----END PGP SIGNATURE-----

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

This pull request contains ARM64 defconfig changes for 4.13, please pull the
following:

- Florian enables ARCH_BRCMSTB in the arm64 defconfig to get more build coverage

* tag 'arm-soc/for-4.13/defconfig-arm64' of http://github.com/Broadcom/stblinux:
  arm64: defconfig: Enable ARCH_BRCMSTB

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:19:30 -07:00
Olof Johansson
8aba614385 This pull request contains Broadcom ARM64-based SoCs Device Tree changes for
4.13. Please note the following from Eric:
 
 I've based this summary on the bcm2835-dt-next tag, to clarify what's in this
 patch series, but it does require being careful since it involves a cross-merge
 between branches.
 
 - Anup documents the Broadcom Stingray binding, common clocks, adds initial
   support for the Stingray DTSI and DTS files and adds support for the PL022,
   PL330 and SP805
 
 - Sandeep adds the clock nodes to the Stingray Device Tree nodes
 
 - Pramod adds support for the NAND, pinctrl, GPIO to the Stingray Device Tree nodes
 
 - Oza adds I2C Device Tree nodes to the Stingray DTSes
 
 - Srinath adds PWM and SDHCI Device Tree nodes for the Stingray SoC
 
 - Ravijeta adds support for the USB Dual Role PHY on Northstar 2
 
 - Gerd starts adding references to the sdhost and sdhci controllers, and then
   switches the sdcard to to use the SDHOST (faster than SDHCI)
 
 - Stefan defines the BCM2837 thermal coefficients in order for the Raspberry Pi
   thermal driver to work correctly
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJZQEIyAAoJEIfQlpxEBwcEtZoP/jSCkP5BsHM9i5PWCjZ8TTTb
 359QZNjT2TDE08nqrdIOoeu2LUBFcqlVBR/IROyMJEkyY7AmGJ/S/s8OGI7DI5kw
 3KaJYPl3YQ3VKfFK3MrsSwSDHUB9yvHzFd2sOrxWNT42N+mYykq61oqPAxHnVbMU
 zd9e1SiJL6iWYlEjE0vvqYv5I8V6I9r8fZV35qBmEZLO0PkJBklWOiubs1Z4j0IM
 cZjbG/MGsjdAyUoIHxxkx1QK8/4ivKvnNxa28wLD+1Trj5CvwcL0sMdBP/pPCZD2
 QM5DjBpq5O5LNCOPA1YDOCCgKus9JkNBPTlSHlg6HeBl7WEjefQqhQd3pVnsQhzL
 U/1DeUc4taPPssCvtE2RJPXz8JB1U6iNY85z1wwT5oqKJW0JwzB04yHVLcRz8oUJ
 yb719jXnvWEJb56E+LjvnRsoICwSX4clNQyWvKsRcwmwZ82PFsZzCiqGZsmXydrs
 /m9wyGlPKvkJgFdN9rwcuIMWI4KMLIO7mmPqY9kHahRjNCp9gm+4KS/oEli0/2So
 he7zKa/45JlAmaFX2bK2oPiUPhI1puXEW2GTfl+5zDe9ZstZX7N7DIc1DCs2ebYB
 MrqBgYTZYB1GRhiny0cgRJhTBcdtqpKIt/RjJVDnXTAwI8N8icnwp3rNmYv6OgxR
 IY6trZH7vw2BSp4lIJ1j
 =QtXg
 -----END PGP SIGNATURE-----

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

This pull request contains Broadcom ARM64-based SoCs Device Tree changes for
4.13. Please note the following from Eric:

I've based this summary on the bcm2835-dt-next tag, to clarify what's in this
patch series, but it does require being careful since it involves a cross-merge
between branches.

- Anup documents the Broadcom Stingray binding, common clocks, adds initial
  support for the Stingray DTSI and DTS files and adds support for the PL022,
  PL330 and SP805

- Sandeep adds the clock nodes to the Stingray Device Tree nodes

- Pramod adds support for the NAND, pinctrl, GPIO to the Stingray Device Tree nodes

- Oza adds I2C Device Tree nodes to the Stingray DTSes

- Srinath adds PWM and SDHCI Device Tree nodes for the Stingray SoC

- Ravijeta adds support for the USB Dual Role PHY on Northstar 2

- Gerd starts adding references to the sdhost and sdhci controllers, and then
  switches the sdcard to to use the SDHOST (faster than SDHCI)

- Stefan defines the BCM2837 thermal coefficients in order for the Raspberry Pi
  thermal driver to work correctly

* tag 'arm-soc/for-4.13/devicetree-arm64' of http://github.com/Broadcom/stblinux:
  arm64: dts: NS2: Add USB DRD PHY device tree node
  ARM64: dts: bcm2837: Define CPU thermal coefficients
  arm64: dts: Add PWM and SDHCI DT nodes for Stingray SOC
  arm64: dts: Add PL022, PL330 and SP805 DT nodes for Stingray
  arm64: dts: Add I2C DT nodes for Stingray SoC
  arm64: dts: Add GPIO DT nodes for Stingray SOC
  arm64: dts: Add pinctrl DT nodes for Stingray SOC
  arm64: dts: Add NAND DT nodes for Stingray SOC
  arm64: dts: Add clock DT nodes for Stingray SOC
  arm64: dts: Initial DTS files for Broadcom Stingray SOC
  dt-bindings: clk: Extend binding doc for Stingray SOC
  dt-bindings: bcm: Add Broadcom Stingray bindings document
  ARM: dts: bcm283x: switch from &sdhci to &sdhost
  arm64: dts: bcm2837: add &sdhci and &sdhost
  ARM: dts: bcm283x: Add CPU thermal zone with 1 trip point
  ARM: dts: Add devicetree for the Raspberry Pi 3, for arm32 (v6)

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:18:44 -07:00
Olof Johansson
d828e97815 UniPhier ARM64 SoC DT updates for v4.13
- specify timing delay properties of eMMC
 - fix W=1 build warnings
 - increase memory reserve size
 - use SPDX License Identifier
 - add new board support (LD11/LD20 global)
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJZPq+XAAoJED2LAQed4NsGRMEP+QG/YasxyPGOQQmK5qTrLapn
 UT22GHcMl/Z4RkFH9GuRx3eCzNr/lyImNCvg/TuDd/IlOPbC9v/X48izkkCrgC4k
 sZWtIx+s8Az89EjntvYrv0laj75oATItKwVvIK1+HKu4elBS5ybZfp6bgmdOWnqO
 IuYIcl20EjyJ5wct5/egJEBhriPxLI+OzlpFyX2M3CpCmpOYQJnuMsuMNPe2064B
 4XCFfbc9wFXnnC9ItXplR9hA7vrWUN4FdHItlQR5g5g9LS9s8/1Tj65s8AvBbv7d
 M0YSUtklL1jWPRIoVRK7qcF5IT3dV5xg9nAMkol/dcJx+iFf91hL0kwr+HWb9m0m
 YvH6z4mp7SqY75y0A2nW4GPejRkD/JFPVrFsmhJThS2+n3RTWGrRmFLWAfqVT76Q
 9pLXiN6nKBNaSs2oJ0NkxZhpCnlVu+7ak81Vw/GpamF23vpKWZ5QjlprBzCLedFB
 mRaFYTrMAlaASOmbKExSv4VNYua+tMZtznv6D1WryMDqZ/0gc1vLpKf7NyU2QZvD
 7x1V4RmT2FuBPFs+7OyLNdrIVyErbNoTGTNHEGVJFUHn2NSTBmymCjOSCGJFx9fk
 X+Tq2ptTyiBBlJJjJaauBFaPtgi0nVqRXY8neJdo3pnvJpfMZOs6GOO3Vmh/oyws
 5qKj4t/ldB2JaEqH0Wtr
 =yvlM
 -----END PGP SIGNATURE-----

Merge tag 'uniphier-dt64-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier into next/dt64

UniPhier ARM64 SoC DT updates for v4.13

- specify timing delay properties of eMMC
- fix W=1 build warnings
- increase memory reserve size
- use SPDX License Identifier
- add new board support (LD11/LD20 global)

* tag 'uniphier-dt64-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-uniphier:
  arm64: dts: uniphier: add support for LD20 Global board
  arm64: dts: uniphier: add support for LD11 Global board
  arm64: dts: uniphier: use SPDX-License-Identifier
  arm64: dts: uniphier: reserve more memory for LD11/LD20
  arm64: dts: uniphier: fix simple-bus unit address format error
  arm64: dts: uniphier: Use - instead of @ for DT OPP entries
  arm64: dts: uniphier: add cdns, phy-dll-delay-sdclk(-hsmmc) for eMMC
  arm64: dts: uniphier: add input-delay properties to Cadence eMMC node

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 20:12:57 -07:00
Olof Johansson
d8a4109634 Add device tree nodes for
mt8173:
 - split USB SuperSpeed port in HighSpeed and SuperSpeed ports.
 - move USB phy clocks up in hierarchy to met new bindings description
 - move MDP nodes up in hierarchy to met new bindings description
 
 mt6797:
 - add basic SoC support
 - add clock driver
 - add power domain
 
 dt-bindings:
 - clean-up i2c binding description
 - add binding for mt2701 i2c node
 - add fallback compatible to scpsys binding description
 - add bindings description for mt7622 and mt6796
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJZPmpvAAoJELQ5Ylss8dND8NwQAI4LIEM7orrUJDBwnrXWRhXC
 O5UzuKG6S+cUqY4l/8z2pEcEjMxqcVY2NqtbUToJKc6ZXw08ho/VfMMUKjiAFj0C
 Xhtmis7G5srIIxd9cNuajPQ9zkUAkFNFJzQOirJTfZibyPbHcXuJW94/8qGztXKj
 QDsxWg4aPL35KPXZlhVAqya1hIXRlT49OaIH1qhCO0ZOpIWWH6Rj9c1lCmZA4B9o
 o9SmTg0PktG3r0LGT+2A9PQ0eukKKqGMSku+dUq5Uw/YxvHNO+qdyw0ZxUYyOrw2
 aM/WKZeEPamfgVl5a6G+0iCxZbZqnwlIgjuHvKp87jNgEx+apUoBuweoSi+N4J/W
 a4efrgATcgseiMb8NNgj6AmvZr67rocG1ZOnMXazOUPj6hixMb2i3Zm7vm1wCezr
 gYV+dTUQwhyEIcJU3joju2xt4Ll7yWJlGvixeu8eFg5N/R6m12D49+tCgc93GA7v
 NXWDrX9/MdU9GwmuqvrAQAh/0DlmQkU32DxmQxqvPF+A0OzEzeYankLGlEe45wef
 CAsZMSO8DKmPfrKvEUR99aEthNkrzbg6Iiyl5EUWf1qNsXqXmaou2h+hoQaMsi4/
 qCjQFO8F7bztJqCQAr+Ym95bFv2dpb2B+2S+7eb24V6OifxtWLwYDQywEJPekZft
 7oOp24vJYzWl/dabwjmC
 =H12B
 -----END PGP SIGNATURE-----

Merge tag 'v4.12-next-dts64' of https://github.com/mbgg/linux-mediatek into next/dt64

Add device tree nodes for
mt8173:
- split USB SuperSpeed port in HighSpeed and SuperSpeed ports.
- move USB phy clocks up in hierarchy to met new bindings description
- move MDP nodes up in hierarchy to met new bindings description

mt6797:
- add basic SoC support
- add clock driver
- add power domain

dt-bindings:
- clean-up i2c binding description
- add binding for mt2701 i2c node
- add fallback compatible to scpsys binding description
- add bindings description for mt7622 and mt6796

* tag 'v4.12-next-dts64' of https://github.com/mbgg/linux-mediatek:
  dt-bindings: mediatek: add bindings for MediaTek MT7622 SoC
  arm64: dts: mt8173: Fix mdp device tree
  dt-bindings: i2c: Add Mediatek MT2701 i2c binding
  dt-bindings: i2c-mtk: Add mt7623 binding
  dt-bindings: i2c-mtk: Delete bindings
  dt-bindings: i2c-mt6577: Rename file to reflect bindings
  dt-bindings: mtk-sysirq: Correct bindings for supported SoCs
  arm64: dts: mediatek: add clk and scp nodes for MT6797
  dt-bindings: mediatek: add MT6797 power dt-bindings
  arm64: dts: mediatek: add mt6797 support
  dt-bindings: mediatek: Add bindings for mediatek MT6797 Platform
  arm64: dts: mt8173: move clock from phy node into port nodes
  arm64: dts: mt8173: split usb SuperSpeed port into two ports

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 19:35:00 -07:00
Olof Johansson
c7404287eb Samsung DeviceTree ARM64 update for v4.13:
1. Remove unneeded TE interrupt gpio property.
 -----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJZOs2UAAoJEME3ZuaGi4PX6cEP+wc7U7AOq57YePw1hJcJRHMV
 6IwzW/kQ6LhxkZeIfCdsPEiYw3tIMuEdHyYDtva++bTGevPWtVFl0mQLfdN2q/8M
 KGirg4amJBHSznKfM2ns1a5ArurszI7YsmpqZ1nPHELxUqIRZA9Tj+isZtDa5/un
 VH3G7coL0hP2t1HdhLz2Y/WUTwQ5cbQci3E3lxwW7WdlsQ2L1jd4Q1bJW+YJwfRi
 PiS0fDtndLtfygPYyw43XjN3ExxXQ3FCTEakJizZt55u52kLINJr4OW+YWlK2PKA
 gLaT2PIHI5wBPvXJYNyMQq8XcbQyYAa4e2xepAlqeFaFfSzuEMc1Wu1vhAZVCKJm
 BH6e2SFwYdhqhap5gnYwAPdwyTuGoVUND/sfLamxCypnNiLw8wo8RA6StZaX//LN
 btjkxgelMAvunpflvotvEXOJHgmlk89FA+e93k5wCnql2+1EqPDPlR1WR7mY9UWY
 xSmkWmqDivylUKQCCnrltyQPm8DjlgsmzJSu+HitqPeTd2rLnKGShwTWlkznjeZA
 U3JRZh4UHEY2WjgDqpiVkpRJAjE1/LXRgf+GRI64eUmU1evo4ehvlh9u1W+OPgBz
 wSWiiYexURJwL5aQWg7iwVxYGMxq/cJL/wpHgBoYY5iwIDHIxko+LaJQ2T1cqnI+
 fzSrnreX8/bzIrlpTbzo
 =4UOb
 -----END PGP SIGNATURE-----

Merge tag 'samsung-dt64-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into next/dt64

Samsung DeviceTree ARM64 update for v4.13:
1. Remove unneeded TE interrupt gpio property.

* tag 'samsung-dt64-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux:
  arm64: dts: exynos: Remove the te-gpios property in the TM2 boards

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 19:11:03 -07:00
Olof Johansson
b21af9751a Support for the new rk3399 firefly board; extending the pcie ranges to
make usage of pci switches possible; some more qos and pinctrl nodes on
 rk3399; updates for the rk3399 cpu operating points including separate
 opps for the higher rates OP1 variant of the chip and mmc-nodes for
 the rk3328.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAlk5yQ4QHGhlaWtvQHNu
 dGVjaC5kZQAKCRDzpnnJnNEdgU7rCACdo8/RlAH58lR+35ZkJ3hAFHAlJJ9l2GFW
 pobp2PYjtSCLaHz2o9yU7tT0peNph3YoeL9rFS44U/NUwtE4eloPbPea/FaGJ0nW
 LUP6Y5bnM8sJMmO3YrG6Y3ryjTFD9GGe9IzSDgQhai+rXPfo/FZ+a1krpNN3HrJN
 dd6PIozaa5aJpDkpET7NyvTRePMiDmuJAoj/9atDr8MLDKuuKNqQtnKcXGJ+3gUb
 Zc4Ltxy2uTtc9bFi05Bi19AnZIqDXAGQdU+u+lqUGps3f8Q63iWYU/OEiCw3Oozs
 3RJ7KXSZ58JN1CXwxMUE1OFplF5fVvPsv4Vzg8ddJ+vOK4E4t8Pd
 =UMmB
 -----END PGP SIGNATURE-----

Merge tag 'v4.13-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt64

Support for the new rk3399 firefly board; extending the pcie ranges to
make usage of pci switches possible; some more qos and pinctrl nodes on
rk3399; updates for the rk3399 cpu operating points including separate
opps for the higher rates OP1 variant of the chip and mmc-nodes for
the rk3328.

* tag 'v4.13-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  arm64: dts: rockchip: update common rk3399 operating points
  arm64: dts: rockchip: introduce rk3399-op1 operating points
  arm64: dts: rockchip: enable usb3 controllers on rk3399-firefly
  arm64: dts: rockchip: add ethernet0 alias on rk3399
  arm64: dts: rockchip: bring rk3399-firefly power-tree in line
  arm64: dts: rockchip: add sdmmc/sdio/emmc nodes for RK3328 SoCs
  arm64: dts: rockchip: extent IORESOURCE_MEM_64 of PCIe for rk3399
  arm64: dts: rockchip: extent bus-ranges of PCIe for rk3399
  arm64: dts: rockchip: add pinctrl settings for some rk3399 peripherals
  arm64: dts: rockchip: add some missing qos nodes on rk3399
  arm64: dts: rockchip: add support for firefly-rk3399 board
  dt-bindings: add firefly-rk3399 board support

Signed-off-by: Olof Johansson <olof@lixom.net>
2017-06-18 19:08:10 -07:00
Andreas Färber
c88cc3ee1b arm64: Prepare Actions Semi S900
Add ARCH_ACTIONS.

Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-06-19 03:14:48 +02:00
Andreas Färber
06edb80f8c arm64: dts: Add Actions Semi S900 and Bubblegum-96
Add Device Trees for Actions Semiconductor S900 SoC and
uCRobotics Bubblegum-96 board.

UART0/1/4/6 interrupts are guesses.

Cc: 96boards@ucrobotics.com
Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-06-19 00:33:22 +02:00
Antoine Tenart
f66b2aff46 arm64: dts: marvell: add xmdio nodes for 7k/8k
Add the description of the xMDIO bus for the Marvell Armada 7k and
Marvell Armada 8k; for both CP110 slave and master. This bus is found
on Marvell Ethernet controllers and provides an interface with the
xMDIO bus.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:29 +02:00
Antoine Tenart
c7c3d6731f arm64: dts: marvell: add a comment on the cp110 slave node status
The cryptographic engine found on the cp110 slave is disabled by default
because of some known limitations. Add a comment to explain why it is
disabled by default.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:28 +02:00
Antoine Tenart
b97afaf69e arm64: dts: marvell: remove cpm crypto nodes from dts files
The cryptographic engine on the master cp110 is now enabled by default
at the SoC level. Remove its dts nodes that were only enabling it.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:27 +02:00
Antoine Tenart
bcd0256473 arm64: dts: marvell: cp110: enable the crypto engine at the SoC level
Enable the cryptographic engine at the SoC level on the master cp110.
This engine is always present and do not depends on any pinmux
configuration.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:26 +02:00
Gregory CLEMENT
07d065abf9 arm64: dts: marvell: armada-3720-db: Add vqmmc regulator for SD slot
By adding this regulator, the SD cards are usable at higher speed
protocols such as SDR104.

This patch was tested with an SD HC card compatible with UHS-I.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:26 +02:00
Konstantin Porotchkin
1208d2f0c8 arm64: dts: marvell: Enable second SDHCI controller in Armada 37xx
The Armada 37xx SoCs has 2 SDHCI interfaces. This patch adds the second
one.

Moreover, the Armada 37xx DB v2 board populates the 2 SDHCI interfaces.

The second interface is using pluggable module that can either
have an SD connector or eMMC on it.
This patch adds support for SD module in the device DT.

[ gregory.clement@free-electrons.com:
 - Add more detail in commit log
 - Sort the dt node in address order
 - Document the SD slot in the dts ]

Signed-off-by: Konstantin Porotchkin <kostap@marvell.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:25 +02:00
Gregory CLEMENT
e9bfac543e arm64: dts: marvell: armada-37xx: Use angle bracket for each register set
When several groups of register address and size are used with reg, then
surround each one by angle bracket.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:24 +02:00
Gregory CLEMENT
55ad5b1ae9 arm64: dts: marvell: armada-37xx: Align the compatible string
This cosmetic patch aligns the compatible string when there are on
several lines.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:23 +02:00
Gregory CLEMENT
718e46395c arm64: dts: marvell: armada-3720-db: Add information about the V2 board
The initial device tree file was for the board V1.4. Now the V2.0 board
is also available. The same dtb will work for both, but the CON number
have changed, so update the comment in the dts to reflect this.

Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:23 +02:00
Gregory CLEMENT
483b4da2bf arm64: dts: marvell: armada-3720-db: Sort the dts node alphabetically
Sort the reference nodes in alphabetical order to ease the merge of
future nodes.

Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:22 +02:00
Antoine Tenart
5526bdc641 arm64: dts: marvell: disable the mdio nodes by default
Disable the mdio nodes by default in the cp110 slave and master dtsi as
they're not wired on every board.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:21 +02:00
Antoine Tenart
3c6912cdc8 arm64: dts: marvell: explicitly enable the mdio nodes for 7k/8k DB
Explicitly enable the MDIO nodes in the Marvell Armada 7k DB and Marvell
Armada 8k DB. This is needed as the MDIO nodes will be disabled in the
CP 110 slave and master dtsi by a following up patch.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:20 +02:00
Antoine Tenart
b1a97f86b7 arm64: dts: marvell: add dma-mask in crypto nodes for 7k/8k
The EIP197 cryptographic engine supports 64 bits address width but is
limited to 40 bits on 7k/8k. Add a dma-mask property in the
cryptographic engine nodes to reflect this.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:06 +02:00
Marc Zyngier
2a32465912 arm64: dts: marvell: 8040-mcbin: Enable 1GB Ethernet
Enable the 1GB Ethernet interface that lives on the slave CP110,
with its corresponding phy (that oddly lives on the master CP110).

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:05 +02:00
Russell King
e21a3b5437 arm64: dts: marvell: cp110: add required clocks for mdio interface
Add the three required clocks for the MDIO interface to be functional
on Armada 8k platforms.  Without this, the CPU hangs, causing RCU
stalls or the system to become unresponsive.

Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
[Thomas:
 - remove mg_core_clock, since it's a parent of mg_clock
 - also add clock references to the slave CP mdio instance]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:04 +02:00
Gregory CLEMENT
3675fb5980 arm64: dts: marvell: use new binding for the system controller on ap806
The new binding for the system controller on ap806 moved the clock into a
subnode. This preliminary step will allow to add gpio and pinctrl
subnodes

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:04 +02:00
Gregory CLEMENT
952eaa509d arm64: dts: marvell: remove clock-output-names on ap806
The clock-output-names of the ap806-system-controller node are not used
anymore, so remove them.

Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:03 +02:00
Marcin Wojtas
4f08187d8c arm64: dts: marvell: add second 1G port on the Armada 8040 DB
Armada 8040 DB is equipped with 4 (2x 10G SFI + 2x 1G RGMII)
ethernet ports of which only one was hitherto enabled.
Because currently mvpp2 driver is capable of supporting only
1G RGMII/SGMII, enable second port from CP slave HW block.

Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
2017-06-17 08:19:02 +02:00