aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-10-30 08:16:33 -0400
committerArnd Bergmann <arnd@arndb.de>2017-10-30 08:16:33 -0400
commitb51c5cb56fa3a51bbf12bda03f3f10fa5796c376 (patch)
tree25cddceef5aa98a9af5653b7d605910636d7f534
parent877b203e15d34d14b2551ba97f9a58daac96f60e (diff)
parent1efed4072c5992ede080987e6d83dfead6af126a (diff)
Merge tag 'keystone_dts_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/dt
Pull "ARM: Keystone DTS update for 4.15" from Santosh Shilimkar: - McASP support for K2G EVM - I2C support for K2G EVM - USB support for K2G EVM - SPI & SPI NOR flash support for K2G EVM - ECAP PWM support for K2G EVM * tag 'keystone_dts_for_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: dts: keystone-k2g-evm: add bindings for SPI NOR flash ARM: dts: keystone-k2g: Add SPI nodes ARM: dts: keystone-k2g-evm: Enable PWM ECAP0 ARM: dts: keystone-k2g: Add ECAP PWM DT nodes ARM: dts: k2g-evm: Enable USB 0 and 1 ARM: dts: k2g: Add USB instances ARM: dts: keystone-k2g-evm: Add I2C EEPROM DT entry ARM: dts: keystone-k2g: Add I2C nodes ARM: dts: keystone-k2g: Add McASP nodes
-rw-r--r--arch/arm/boot/dts/keystone-k2g-evm.dts93
-rw-r--r--arch/arm/boot/dts/keystone-k2g.dtsi208
2 files changed, 301 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/keystone-k2g-evm.dts b/arch/arm/boot/dts/keystone-k2g-evm.dts
index f462f1043531..656af194a518 100644
--- a/arch/arm/boot/dts/keystone-k2g-evm.dts
+++ b/arch/arm/boot/dts/keystone-k2g-evm.dts
@@ -45,6 +45,22 @@
45 regulator-max-microvolt = <3300000>; 45 regulator-max-microvolt = <3300000>;
46 regulator-always-on; 46 regulator-always-on;
47 }; 47 };
48
49 ecap0_pins: ecap0_pins {
50 pinctrl-single,pins = <
51 K2G_CORE_IOPAD(0x1374) (BUFFER_CLASS_B | MUX_MODE4) /* pr1_mdio_data.ecap0_in_apwm0_out */
52 >;
53 };
54
55 spi1_pins: pinmux_spi1_pins {
56 pinctrl-single,pins = <
57 K2G_CORE_IOPAD(0x11a4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_scs0.spi1_scs0 */
58 K2G_CORE_IOPAD(0x11ac) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_clk.spi1_clk */
59 K2G_CORE_IOPAD(0x11b0) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_miso.spi1_miso */
60 K2G_CORE_IOPAD(0x11b4) (BUFFER_CLASS_B | PULL_DISABLE | MUX_MODE0) /* spi1_mosi.spi1_mosi */
61 >;
62 };
63
48}; 64};
49 65
50&k2g_pinctrl { 66&k2g_pinctrl {
@@ -81,6 +97,14 @@
81 K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_cmd.mmc1_cmd */ 97 K2G_CORE_IOPAD(0x1110) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* mmc1_cmd.mmc1_cmd */
82 >; 98 >;
83 }; 99 };
100
101 i2c0_pins: pinmux_i2c0_pins {
102 pinctrl-single,pins = <
103 K2G_CORE_IOPAD(0x137c) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_scl.i2c0_scl */
104 K2G_CORE_IOPAD(0x1380) (BUFFER_CLASS_B | PIN_PULLUP | MUX_MODE0) /* i2c0_sda.i2c0_sda */
105 >;
106 };
107
84}; 108};
85 109
86&uart0 { 110&uart0 {
@@ -112,3 +136,72 @@
112 memory-region = <&dsp_common_memory>; 136 memory-region = <&dsp_common_memory>;
113 status = "okay"; 137 status = "okay";
114}; 138};
139
140&i2c0 {
141 pinctrl-names = "default";
142 pinctrl-0 = <&i2c0_pins>;
143 status = "okay";
144
145 eeprom@50 {
146 compatible = "atmel,24c1024";
147 reg = <0x50>;
148 };
149};
150
151&keystone_usb0 {
152 status = "okay";
153};
154
155&usb0_phy {
156 status = "okay";
157};
158
159&usb0 {
160 dr_mode = "host";
161 status = "okay";
162};
163
164&keystone_usb1 {
165 status = "okay";
166};
167
168&usb1_phy {
169 status = "okay";
170};
171
172&usb1 {
173 dr_mode = "peripheral";
174 status = "okay";
175};
176
177&ecap0 {
178 status = "okay";
179 pinctrl-names = "default";
180 pinctrl-0 = <&ecap0_pins>;
181};
182
183&spi1 {
184 pinctrl-names = "default";
185 pinctrl-0 = <&spi1_pins>;
186 status = "okay";
187
188 spi_nor: flash@0 {
189 #address-cells = <1>;
190 #size-cells = <1>;
191 compatible = "jedec,spi-nor";
192 spi-max-frequency = <5000000>;
193 m25p,fast-read;
194 reg = <0>;
195
196 partition@0 {
197 label = "u-boot-spl";
198 reg = <0x0 0x100000>;
199 read-only;
200 };
201
202 partition@1 {
203 label = "misc";
204 reg = <0x100000 0xf00000>;
205 };
206 };
207};
diff --git a/arch/arm/boot/dts/keystone-k2g.dtsi b/arch/arm/boot/dts/keystone-k2g.dtsi
index a1ae69d712f7..8f313ff406b9 100644
--- a/arch/arm/boot/dts/keystone-k2g.dtsi
+++ b/arch/arm/boot/dts/keystone-k2g.dtsi
@@ -28,6 +28,9 @@
28 28
29 aliases { 29 aliases {
30 serial0 = &uart0; 30 serial0 = &uart0;
31 i2c0 = &i2c0;
32 i2c1 = &i2c1;
33 i2c2 = &i2c2;
31 rproc0 = &dsp0; 34 rproc0 = &dsp0;
32 }; 35 };
33 36
@@ -133,6 +136,39 @@
133 clocks = <&k2g_clks 0x0009 1>; 136 clocks = <&k2g_clks 0x0009 1>;
134 }; 137 };
135 138
139 i2c0: i2c@2530000 {
140 compatible = "ti,keystone-i2c";
141 reg = <0x02530000 0x400>;
142 clocks = <&k2g_clks 0x003a 0>;
143 power-domains = <&k2g_pds 0x003a>;
144 interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
145 #address-cells = <1>;
146 #size-cells = <0>;
147 status = "disabled";
148 };
149
150 i2c1: i2c@2530400 {
151 compatible = "ti,keystone-i2c";
152 reg = <0x02530400 0x400>;
153 clocks = <&k2g_clks 0x003b 0>;
154 power-domains = <&k2g_pds 0x003b>;
155 interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
156 #address-cells = <1>;
157 #size-cells = <0>;
158 status = "disabled";
159 };
160
161 i2c2: i2c@2530800 {
162 compatible = "ti,keystone-i2c";
163 reg = <0x02530800 0x400>;
164 clocks = <&k2g_clks 0x003c 0>;
165 power-domains = <&k2g_pds 0x003c>;
166 interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
167 #address-cells = <1>;
168 #size-cells = <0>;
169 status = "disabled";
170 };
171
136 kirq0: keystone_irq@26202a0 { 172 kirq0: keystone_irq@26202a0 {
137 compatible = "ti,keystone-irq"; 173 compatible = "ti,keystone-irq";
138 interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>; 174 interrupts = <GIC_SPI 1 IRQ_TYPE_EDGE_RISING>;
@@ -343,5 +379,177 @@
343 clock-names = "fck", "mmchsdb_fck"; 379 clock-names = "fck", "mmchsdb_fck";
344 status = "disabled"; 380 status = "disabled";
345 }; 381 };
382
383 mcasp0: mcasp@2340000 {
384 compatible = "ti,am33xx-mcasp-audio";
385 reg = <0x02340000 0x2000>,
386 <0x21804000 0x1000>;
387 reg-names = "mpu","dat";
388 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
389 <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
390 interrupt-names = "tx", "rx";
391 dmas = <&edma0 24 1>, <&edma0 25 1>;
392 dma-names = "tx", "rx";
393 power-domains = <&k2g_pds 0x4>;
394 clocks = <&k2g_clks 0x4 0>;
395 clock-names = "fck";
396 status = "disabled";
397 };
398
399 mcasp1: mcasp@2342000 {
400 compatible = "ti,am33xx-mcasp-audio";
401 reg = <0x02342000 0x2000>,
402 <0x21804400 0x1000>;
403 reg-names = "mpu","dat";
404 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
405 <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
406 interrupt-names = "tx", "rx";
407 dmas = <&edma1 48 1>, <&edma1 49 1>;
408 dma-names = "tx", "rx";
409 power-domains = <&k2g_pds 0x5>;
410 clocks = <&k2g_clks 0x5 0>;
411 clock-names = "fck";
412 status = "disabled";
413 };
414
415 mcasp2: mcasp@2344000 {
416 compatible = "ti,am33xx-mcasp-audio";
417 reg = <0x02344000 0x2000>,
418 <0x21804800 0x1000>;
419 reg-names = "mpu","dat";
420 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
421 <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
422 interrupt-names = "tx", "rx";
423 dmas = <&edma1 50 1>, <&edma1 51 1>;
424 dma-names = "tx", "rx";
425 power-domains = <&k2g_pds 0x6>;
426 clocks = <&k2g_clks 0x6 0>;
427 clock-names = "fck";
428 status = "disabled";
429 };
430
431 usb0_phy: usb-phy@0 {
432 compatible = "usb-nop-xceiv";
433 status = "disabled";
434 };
435
436 keystone_usb0: keystone-dwc3@2680000 {
437 compatible = "ti,keystone-dwc3";
438 #address-cells = <1>;
439 #size-cells = <1>;
440 reg = <0x2680000 0x10000>;
441 interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
442 ranges;
443 dma-coherent;
444 dma-ranges;
445 status = "disabled";
446 power-domains = <&k2g_pds 0x0016>;
447
448 usb0: usb@2690000 {
449 compatible = "snps,dwc3";
450 reg = <0x2690000 0x10000>;
451 interrupts = <GIC_SPI 128 IRQ_TYPE_EDGE_RISING>;
452 maximum-speed = "high-speed";
453 dr_mode = "otg";
454 usb-phy = <&usb0_phy>;
455 status = "disabled";
456 };
457 };
458
459 usb1_phy: usb-phy@1 {
460 compatible = "usb-nop-xceiv";
461 status = "disabled";
462 };
463
464 keystone_usb1: keystone-dwc3@2580000 {
465 compatible = "ti,keystone-dwc3";
466 #address-cells = <1>;
467 #size-cells = <1>;
468 reg = <0x2580000 0x10000>;
469 interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
470 ranges;
471 dma-coherent;
472 dma-ranges;
473 status = "disabled";
474 power-domains = <&k2g_pds 0x0017>;
475
476 usb1: usb@2590000 {
477 compatible = "snps,dwc3";
478 reg = <0x2590000 0x10000>;
479 interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
480 maximum-speed = "high-speed";
481 dr_mode = "otg";
482 usb-phy = <&usb1_phy>;
483 status = "disabled";
484 };
485 };
486
487 ecap0: pwm@21d1800 {
488 compatible = "ti,k2g-ecap", "ti,am3352-ecap";
489 #pwm-cells = <3>;
490 reg = <0x021d1800 0x60>;
491 power-domains = <&k2g_pds 0x38>;
492 clocks = <&k2g_clks 0x38 0>;
493 clock-names = "fck";
494 status = "disabled";
495 };
496
497 ecap1: pwm@21d1c00 {
498 compatible = "ti,k2g-ecap", "ti,am3352-ecap";
499 #pwm-cells = <3>;
500 reg = <0x021d1c00 0x60>;
501 power-domains = <&k2g_pds 0x39>;
502 clocks = <&k2g_clks 0x39 0x0>;
503 clock-names = "fck";
504 status = "disabled";
505 };
506
507 spi0: spi@21805400 {
508 compatible = "ti,keystone-spi";
509 reg = <0x21805400 0x200>;
510 num-cs = <4>;
511 ti,davinci-spi-intr-line = <0>;
512 interrupts = <GIC_SPI 64 IRQ_TYPE_EDGE_RISING>;
513 #address-cells = <1>;
514 #size-cells = <0>;
515 power-domains = <&k2g_pds 0x0010>;
516 clocks = <&k2g_clks 0x0010 0>;
517 };
518
519 spi1: spi@21805800 {
520 compatible = "ti,keystone-spi";
521 reg = <0x21805800 0x200>;
522 num-cs = <4>;
523 ti,davinci-spi-intr-line = <0>;
524 interrupts = <GIC_SPI 66 IRQ_TYPE_EDGE_RISING>;
525 #address-cells = <1>;
526 #size-cells = <0>;
527 power-domains = <&k2g_pds 0x0011>;
528 clocks = <&k2g_clks 0x0011 0>;
529 };
530
531 spi2: spi@21805c00 {
532 compatible = "ti,keystone-spi";
533 reg = <0x21805C00 0x200>;
534 num-cs = <4>;
535 ti,davinci-spi-intr-line = <0>;
536 interrupts = <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>;
537 #address-cells = <1>;
538 #size-cells = <0>;
539 power-domains = <&k2g_pds 0x0012>;
540 clocks = <&k2g_clks 0x0012 0>;
541 };
542
543 spi3: spi@21806000 {
544 compatible = "ti,keystone-spi";
545 reg = <0x21806000 0x200>;
546 num-cs = <4>;
547 ti,davinci-spi-intr-line = <0>;
548 interrupts = <GIC_SPI 70 IRQ_TYPE_EDGE_RISING>;
549 #address-cells = <1>;
550 #size-cells = <0>;
551 power-domains = <&k2g_pds 0x0013>;
552 clocks = <&k2g_clks 0x0013 0>;
553 };
346 }; 554 };
347}; 555};