aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-10-30 09:38:56 -0400
committerArnd Bergmann <arnd@arndb.de>2017-10-30 09:38:56 -0400
commite45cba78c6a0df67383df36086f65950c5239e76 (patch)
treec7be5f5017bf3a2064e07e4c32614fb73f1cef0f
parent25b838489824d226b3b1ae45d6a640c00b18f751 (diff)
parente54b911fd859acfc2b00e03223aed7afdbd1a539 (diff)
Merge tag 'imx-dt64-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt
Pull "Freescale arm64 device tree updates for 4.15" from Shawn Guo: - Add GICv3 ITS node and PCIe devcies for LS1088A support. - Enable PCIe support for LS2088A SoC. - Add OP-TEE support for various Layerscape SoCs, LS1012A, LS1043A, LS1046A, LS1088A and LS208XA. - Update DPAA QBMan nodes to use constant defines in the interrupt description. - Add DSPI device to support SPI-NOR on LS1012A based boards. * tag 'imx-dt64-4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: arm64: dts: update the DPAA QBMan nodes arm64: dts: ls1088a: add PCIe controller DT nodes arm64: dts: ls1088a: add gicv3 ITS DT node arm64: dts: ls2088a: add pcie support arm64: dts: ls: Add optee node dt-bindings: mtd: add sst25wf040b and en25s64 to sip-nor list dt-bindings: spi: Add fsl,ls1012a-dspi compatible string arm64: dts: ls1012a: add the DTS node for DSPI support
-rw-r--r--Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt2
-rw-r--r--Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt1
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts33
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi20
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi11
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi11
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi88
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi4
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi7
9 files changed, 173 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt
index 9ce35af8507c..4cab5d85cf6f 100644
--- a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt
+++ b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt
@@ -13,6 +13,7 @@ Required properties:
13 at25df321a 13 at25df321a
14 at25df641 14 at25df641
15 at26df081a 15 at26df081a
16 en25s64
16 mr25h256 17 mr25h256
17 mr25h10 18 mr25h10
18 mr25h40 19 mr25h40
@@ -31,6 +32,7 @@ Required properties:
31 s25fl008k 32 s25fl008k
32 s25fl064k 33 s25fl064k
33 sst25vf040b 34 sst25vf040b
35 sst25wf040b
34 m25p40 36 m25p40
35 m25p80 37 m25p80
36 m25p16 38 m25p16
diff --git a/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt b/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt
index 13b1fcc8469e..dcc7eaada511 100644
--- a/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt
+++ b/Documentation/devicetree/bindings/spi/spi-fsl-dspi.txt
@@ -5,6 +5,7 @@ Required properties:
5 "fsl,ls2085a-dspi" 5 "fsl,ls2085a-dspi"
6 or 6 or
7 "fsl,ls2080a-dspi" followed by "fsl,ls2085a-dspi" 7 "fsl,ls2080a-dspi" followed by "fsl,ls2085a-dspi"
8 "fsl,ls1012a-dspi" followed by "fsl,ls1021a-v1.0-dspi"
8- reg : Offset and length of the register set for the device 9- reg : Offset and length of the register set for the device
9- interrupts : Should contain SPI controller interrupt 10- interrupts : Should contain SPI controller interrupt
10- clocks: from common clock binding: handle to dspi clock. 11- clocks: from common clock binding: handle to dspi clock.
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts
index 8c013b54db14..cdc4aee75227 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts
@@ -93,6 +93,39 @@
93 }; 93 };
94}; 94};
95 95
96&dspi {
97 bus-num = <0>;
98 status = "okay";
99
100 flash@0 {
101 #address-cells = <1>;
102 #size-cells = <1>;
103 compatible = "n25q128a11", "jedec,spi-nor";
104 reg = <0>;
105 spi-max-frequency = <10000000>;
106 };
107
108 flash@1 {
109 #address-cells = <1>;
110 #size-cells = <1>;
111 compatible = "sst25wf040b", "jedec,spi-nor";
112 spi-cpol;
113 spi-cpha;
114 reg = <1>;
115 spi-max-frequency = <10000000>;
116 };
117
118 flash@2 {
119 #address-cells = <1>;
120 #size-cells = <1>;
121 compatible = "en25s64", "jedec,spi-nor";
122 spi-cpol;
123 spi-cpha;
124 reg = <2>;
125 spi-max-frequency = <10000000>;
126 };
127};
128
96&duart0 { 129&duart0 {
97 status = "okay"; 130 status = "okay";
98}; 131};
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
index df83915d6ea6..3b0b6e4fdc11 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
@@ -355,6 +355,19 @@
355 status = "disabled"; 355 status = "disabled";
356 }; 356 };
357 357
358 dspi: dspi@2100000 {
359 compatible = "fsl,ls1012a-dspi", "fsl,ls1021a-v1.0-dspi";
360 #address-cells = <1>;
361 #size-cells = <0>;
362 reg = <0x0 0x2100000 0x0 0x10000>;
363 interrupts = <0 64 IRQ_TYPE_LEVEL_HIGH>;
364 clock-names = "dspi";
365 clocks = <&clockgen 4 0>;
366 spi-num-chipselects = <5>;
367 big-endian;
368 status = "disabled";
369 };
370
358 duart0: serial@21c0500 { 371 duart0: serial@21c0500 {
359 compatible = "fsl,ns16550", "ns16550a"; 372 compatible = "fsl,ns16550", "ns16550a";
360 reg = <0x00 0x21c0500 0x0 0x100>; 373 reg = <0x00 0x21c0500 0x0 0x100>;
@@ -472,4 +485,11 @@
472 phy_type = "ulpi"; 485 phy_type = "ulpi";
473 }; 486 };
474 }; 487 };
488
489 firmware {
490 optee {
491 compatible = "linaro,optee-tz";
492 method = "smc";
493 };
494 };
475}; 495};
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
index d16b9cc1e825..380e7c713395 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
@@ -376,14 +376,14 @@
376 qman: qman@1880000 { 376 qman: qman@1880000 {
377 compatible = "fsl,qman"; 377 compatible = "fsl,qman";
378 reg = <0x0 0x1880000 0x0 0x10000>; 378 reg = <0x0 0x1880000 0x0 0x10000>;
379 interrupts = <0 45 0x4>; 379 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
380 memory-region = <&qman_fqd &qman_pfdr>; 380 memory-region = <&qman_fqd &qman_pfdr>;
381 }; 381 };
382 382
383 bman: bman@1890000 { 383 bman: bman@1890000 {
384 compatible = "fsl,bman"; 384 compatible = "fsl,bman";
385 reg = <0x0 0x1890000 0x0 0x10000>; 385 reg = <0x0 0x1890000 0x0 0x10000>;
386 interrupts = <0 45 0x4>; 386 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
387 memory-region = <&bman_fbpr>; 387 memory-region = <&bman_fbpr>;
388 }; 388 };
389 389
@@ -749,6 +749,13 @@
749 }; 749 };
750 }; 750 };
751 751
752 firmware {
753 optee {
754 compatible = "linaro,optee-tz";
755 method = "smc";
756 };
757 };
758
752}; 759};
753 760
754#include "qoriq-qman-portals.dtsi" 761#include "qoriq-qman-portals.dtsi"
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
index c8ff0baddf1d..3a07914175f0 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
@@ -281,7 +281,7 @@
281 qman: qman@1880000 { 281 qman: qman@1880000 {
282 compatible = "fsl,qman"; 282 compatible = "fsl,qman";
283 reg = <0x0 0x1880000 0x0 0x10000>; 283 reg = <0x0 0x1880000 0x0 0x10000>;
284 interrupts = <0 45 0x4>; 284 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
285 memory-region = <&qman_fqd &qman_pfdr>; 285 memory-region = <&qman_fqd &qman_pfdr>;
286 286
287 }; 287 };
@@ -289,7 +289,7 @@
289 bman: bman@1890000 { 289 bman: bman@1890000 {
290 compatible = "fsl,bman"; 290 compatible = "fsl,bman";
291 reg = <0x0 0x1890000 0x0 0x10000>; 291 reg = <0x0 0x1890000 0x0 0x10000>;
292 interrupts = <0 45 0x4>; 292 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
293 memory-region = <&bman_fbpr>; 293 memory-region = <&bman_fbpr>;
294 294
295 }; 295 };
@@ -689,6 +689,13 @@
689 no-map; 689 no-map;
690 }; 690 };
691 }; 691 };
692
693 firmware {
694 optee {
695 compatible = "linaro,optee-tz";
696 method = "smc";
697 };
698 };
692}; 699};
693 700
694#include "qoriq-qman-portals.dtsi" 701#include "qoriq-qman-portals.dtsi"
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
index 33797b373674..bd80e9a2e67c 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
@@ -147,6 +147,15 @@
147 <0x0 0x0c0d0000 0 0x1000>, /* GICH */ 147 <0x0 0x0c0d0000 0 0x1000>, /* GICH */
148 <0x0 0x0c0e0000 0 0x20000>; /* GICV */ 148 <0x0 0x0c0e0000 0 0x20000>; /* GICV */
149 interrupts = <1 9 IRQ_TYPE_LEVEL_HIGH>; 149 interrupts = <1 9 IRQ_TYPE_LEVEL_HIGH>;
150 #address-cells = <2>;
151 #size-cells = <2>;
152 ranges;
153
154 its: gic-its@6020000 {
155 compatible = "arm,gic-v3-its";
156 msi-controller;
157 reg = <0x0 0x6020000 0 0x20000>;
158 };
150 }; 159 };
151 160
152 timer { 161 timer {
@@ -434,6 +443,85 @@
434 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 443 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
435 }; 444 };
436 }; 445 };
446
447 pcie@3400000 {
448 compatible = "fsl,ls1088a-pcie", "snps,dw-pcie";
449 reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
450 0x20 0x00000000 0x0 0x00002000>; /* configuration space */
451 reg-names = "regs", "config";
452 interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
453 interrupt-names = "aer";
454 #address-cells = <3>;
455 #size-cells = <2>;
456 device_type = "pci";
457 dma-coherent;
458 num-lanes = <4>;
459 bus-range = <0x0 0xff>;
460 ranges = <0x81000000 0x0 0x00000000 0x20 0x00010000 0x0 0x00010000 /* downstream I/O */
461 0x82000000 0x0 0x40000000 0x20 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
462 msi-parent = <&its>;
463 #interrupt-cells = <1>;
464 interrupt-map-mask = <0 0 0 7>;
465 interrupt-map = <0000 0 0 1 &gic 0 0 0 109 IRQ_TYPE_LEVEL_HIGH>,
466 <0000 0 0 2 &gic 0 0 0 110 IRQ_TYPE_LEVEL_HIGH>,
467 <0000 0 0 3 &gic 0 0 0 111 IRQ_TYPE_LEVEL_HIGH>,
468 <0000 0 0 4 &gic 0 0 0 112 IRQ_TYPE_LEVEL_HIGH>;
469 };
470
471 pcie@3500000 {
472 compatible = "fsl,ls1088a-pcie", "snps,dw-pcie";
473 reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
474 0x28 0x00000000 0x0 0x00002000>; /* configuration space */
475 reg-names = "regs", "config";
476 interrupts = <0 113 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
477 interrupt-names = "aer";
478 #address-cells = <3>;
479 #size-cells = <2>;
480 device_type = "pci";
481 dma-coherent;
482 num-lanes = <4>;
483 bus-range = <0x0 0xff>;
484 ranges = <0x81000000 0x0 0x00000000 0x28 0x00010000 0x0 0x00010000 /* downstream I/O */
485 0x82000000 0x0 0x40000000 0x28 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
486 msi-parent = <&its>;
487 #interrupt-cells = <1>;
488 interrupt-map-mask = <0 0 0 7>;
489 interrupt-map = <0000 0 0 1 &gic 0 0 0 114 IRQ_TYPE_LEVEL_HIGH>,
490 <0000 0 0 2 &gic 0 0 0 115 IRQ_TYPE_LEVEL_HIGH>,
491 <0000 0 0 3 &gic 0 0 0 116 IRQ_TYPE_LEVEL_HIGH>,
492 <0000 0 0 4 &gic 0 0 0 117 IRQ_TYPE_LEVEL_HIGH>;
493 };
494
495 pcie@3600000 {
496 compatible = "fsl,ls1088a-pcie", "snps,dw-pcie";
497 reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
498 0x30 0x00000000 0x0 0x00002000>; /* configuration space */
499 reg-names = "regs", "config";
500 interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
501 interrupt-names = "aer";
502 #address-cells = <3>;
503 #size-cells = <2>;
504 device_type = "pci";
505 dma-coherent;
506 num-lanes = <8>;
507 bus-range = <0x0 0xff>;
508 ranges = <0x81000000 0x0 0x00000000 0x30 0x00010000 0x0 0x00010000 /* downstream I/O */
509 0x82000000 0x0 0x40000000 0x30 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
510 msi-parent = <&its>;
511 #interrupt-cells = <1>;
512 interrupt-map-mask = <0 0 0 7>;
513 interrupt-map = <0000 0 0 1 &gic 0 0 0 119 IRQ_TYPE_LEVEL_HIGH>,
514 <0000 0 0 2 &gic 0 0 0 120 IRQ_TYPE_LEVEL_HIGH>,
515 <0000 0 0 3 &gic 0 0 0 121 IRQ_TYPE_LEVEL_HIGH>,
516 <0000 0 0 4 &gic 0 0 0 122 IRQ_TYPE_LEVEL_HIGH>;
517 };
518 };
519
520 firmware {
521 optee {
522 compatible = "linaro,optee-tz";
523 method = "smc";
524 };
437 }; 525 };
438 526
439}; 527};
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
index 6aa319dae396..aeaef01d375f 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
@@ -151,6 +151,7 @@
151}; 151};
152 152
153&pcie1 { 153&pcie1 {
154 compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
154 reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */ 155 reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
155 0x20 0x00000000 0x0 0x00002000>; /* configuration space */ 156 0x20 0x00000000 0x0 0x00002000>; /* configuration space */
156 157
@@ -159,6 +160,7 @@
159}; 160};
160 161
161&pcie2 { 162&pcie2 {
163 compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
162 reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */ 164 reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
163 0x28 0x00000000 0x0 0x00002000>; /* configuration space */ 165 0x28 0x00000000 0x0 0x00002000>; /* configuration space */
164 166
@@ -167,6 +169,7 @@
167}; 169};
168 170
169&pcie3 { 171&pcie3 {
172 compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
170 reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */ 173 reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
171 0x30 0x00000000 0x0 0x00002000>; /* configuration space */ 174 0x30 0x00000000 0x0 0x00002000>; /* configuration space */
172 175
@@ -175,6 +178,7 @@
175}; 178};
176 179
177&pcie4 { 180&pcie4 {
181 compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
178 reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */ 182 reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
179 0x38 0x00000000 0x0 0x00002000>; /* configuration space */ 183 0x38 0x00000000 0x0 0x00002000>; /* configuration space */
180 184
diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
index 4fb9a0966a84..f3a40af33af8 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
@@ -786,4 +786,11 @@
786 interrupts = <0 18 0x4>; 786 interrupts = <0 18 0x4>;
787 little-endian; 787 little-endian;
788 }; 788 };
789
790 firmware {
791 optee {
792 compatible = "linaro,optee-tz";
793 method = "smc";
794 };
795 };
789}; 796};