Commit Graph

24 Commits

Author SHA1 Message Date
Moritz Fischer c415f9e830 ARM64: zynqmp: Fix i2c node's compatible string
The Zynq Ultrascale MP uses version 1.4 of the Cadence IP core
which fixes some silicon bugs that needed software workarounds
in Version 1.0 that was used on Zynq systems.

Signed-off-by: Moritz Fischer <mdf@kernel.org>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Sören Brinkmann <soren.brinkmann@xilinx.com>
Cc: Rob Herring <robh+dt@kernel.org>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-01-02 14:14:36 +01:00
Michal Simek 4ea2a6be95 ARM64: zynqmp: Fix W=1 dtc 1.4 warnings
The patch removes these warnings reported by dtc 1.4:
Warning (unit_address_vs_reg): Node /amba_apu has a reg or ranges
property, but no unit name
Warning (unit_address_vs_reg): Node /memory has a reg or ranges
property, but no unit name

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-01-02 14:14:30 +01: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
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
Punnaiah Choudary Kalluri 908c9e733b ARM64: zynqmp: Correct the watchdog timer interrupt number
Corrected the watchdog timer interrupt number.
Origin value was for CSUPMU watchdog.

Signed-off-by: Punnaiah Choudary Kalluri <punnaia@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-08-19 12:31:36 +02:00
Michal Simek 886e7ddda0 ARM64: zynqmp: Add missing interrupt-parent to PMU node
ZynqMP is not using global interrupt-parent setting that's why
it has to be listed in every node separately. PMU node missed it and
this patch is adding it.

Reported-by: John Linn <John.Linn@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-08-19 12:29:11 +02:00
Michal Simek 78b83b8cb3 ARM64: zynqmp: Add PCIe node
Add PCIe node with prefetchable memory which goes beyond 4GB.

Signed-off-by: Bharat Kumar Gogada <bharatku@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-08-19 12:29:10 +02:00
Michal Simek 7393fd8691 ARM64: zynqmp: Use 64bit size cell format
Use 64bit size cell format instead of 32bit for memory
description. Change 64bit sizes also for all others IPs.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-08-19 12:29:00 +02:00
Alexander Graf e753dc0359 ARM64: zynqmp: Align gic ranges for 64k in device tree
The GIC ranges in the zynqmp device tree are only 4kb aligned. Since
commit 12e14066f we automatically deal with aliases GIC regions though,
so we can map them transparently into guests even on 64kb page size
systems.

This patch makes use of that features and sets GICC and GICV to 64kb
aligned and sized regions.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-08-19 12:27:20 +02:00
Michal Simek 5087bccb2f ARM64: zynqmp: Extract clock information from EP108
Extract clocks and put it specific file to help with platform
autogeneration.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-02-25 14:01:03 +01:00
Michal Simek 72e5df437b ARM64: zynqmp: Keep gpio node alphabetically sorted
No functional change.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-02-25 14:00:50 +01:00
Soren Brinkmann bdd5739008 ARM64: zynqmp: DT: Add interrupt-controller property to GPIO
GPIO can be used as interrupt-controller. Add the missing properties to
the GPIO node.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-12-14 09:48:20 +01:00
Michal Simek f49310dc62 ARM64: zynqmp: Move SPI nodes to the right location
Keep nodes sorted.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:34 +02:00
Michal Simek 8fd7a775c5 ARM64: zynqmp: Move uart and ttcs to the right location
Sort nodes in DTSI.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:31 +02:00
Michal Simek 0fcb064f0f ARM64: zynqmp: Enable spi flashes on ep108
Enable spi flashes on ep108.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:30 +02:00
Michal Simek c590974629 ARM64: zynqmp: Add eeprom memories on i2c bus
Add i2c eeprom memories on i2c bus.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Shubhrajyoti Datta <shubhraj@xilinx.com>
2015-07-31 10:46:29 +02:00
Michal Simek 34ad39b145 ARM64: zynqmp: Enable sdhci on ep108
Enable both sdhcis on ep108.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:29 +02:00
Michal Simek c7c09d192f ARM64: zynqmp: Enable watchdog on ep108
Enable watchdog on ep108.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:28 +02:00
Michal Simek 22eda14afc ARM64: zynqmp: Add DWC3 usb support
Add usb nodes to DTSI and enable both of them on ep108.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:27 +02:00
Michal Simek ff92e3614a ARM64: zynqmp: Add SMMU support
Add SMMU DT node to DTSI.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:27 +02:00
Michal Simek 3a8691f530 ARM64: zynqmp: Add CANs node for platform
Also enable can0 for ep108.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:26 +02:00
Michal Simek b72b44b617 ARM64: zynqmp: Use zynqmp specific compatible string for gpio
The patch:
"gpio: Added support to Zynq Ultrascale+ MPSoC"
(sha1: bdf7a4ae37)
added zynqmp specific features. This patch is switching the driver to
use the zynqmp compatible string.
Also enable the driver for ep108 platform.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:25 +02:00
Suneel Garapati 8fae442f88 devicetree: xilinx: zynqmp: add sata node
add sata node with sata fixed clock nodes in dtsi file.
enable sata in zynqmp-ep108.dts with broken-gen2.

Signed-off-by: Suneel Garapati <suneel.garapati@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2015-07-31 10:46:25 +02:00
Michal Simek 5d1b79d2b2 ARM64: Add new Xilinx ZynqMP SoC
Initial version of device tree for Xilinx ZynqMP SoC.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2015-03-11 22:57:06 +01:00