diff options
author | Olof Johansson <olof@lixom.net> | 2013-06-14 21:51:21 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-06-14 21:51:21 -0400 |
commit | ef0a3402cccf75b43b1ed854f57fb11b54a1241a (patch) | |
tree | 671b865c1967e12003fd2716e26b1b69037f683b | |
parent | 37177faefc22209deb547579d4c2dfd5d6bf30ab (diff) | |
parent | 24ce10e142e7b063c4ae4437dd3b290fbfafe052 (diff) |
Merge tag 'at91-dt' of git://github.com/at91linux/linux-at91 into next/dt
From Nicolas Ferre:
Again some nice DT updates for AT91:
- DMA binding update with one patch shared with slave-dma tree
- more SPI DT activation
- enable the USB gadget HS for DT platforms
* tag 'at91-dt' of git://github.com/at91linux/linux-at91:
ARM: at91: sam9m10g45ek add udc DT support
ARM: at91: sam9g45 add udc DT support
ARM: at91: sam9x5ek add udc DT support
ARM: at91: sam9x5 add udc DT support
ARM: at91: dt: at91sam9x5: add SPI DMA client infos
ARM: at91: dt: switch DMA DT bindings to pre-processor
ARM: at91: dt: add header to define at_hdmac configuration
-rw-r--r-- | arch/arm/boot/dts/at91sam9g45.dtsi | 67 | ||||
-rw-r--r-- | arch/arm/boot/dts/at91sam9m10g45ek.dts | 5 | ||||
-rw-r--r-- | arch/arm/boot/dts/at91sam9n12.dtsi | 11 | ||||
-rw-r--r-- | arch/arm/boot/dts/at91sam9x5.dtsi | 85 | ||||
-rw-r--r-- | arch/arm/boot/dts/at91sam9x5ek.dtsi | 5 | ||||
-rw-r--r-- | arch/arm/boot/dts/sama5d3.dtsi | 19 | ||||
-rw-r--r-- | arch/arm/mach-at91/at91sam9g45.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-at91/at91sam9x5.c | 2 | ||||
-rw-r--r-- | include/dt-bindings/dma/at91.h | 27 |
9 files changed, 199 insertions, 24 deletions
diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi index a03d0c05d027..c3e514837074 100644 --- a/arch/arm/boot/dts/at91sam9g45.dtsi +++ b/arch/arm/boot/dts/at91sam9g45.dtsi | |||
@@ -10,6 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include "skeleton.dtsi" | 12 | #include "skeleton.dtsi" |
13 | #include <dt-bindings/dma/at91.h> | ||
13 | #include <dt-bindings/pinctrl/at91.h> | 14 | #include <dt-bindings/pinctrl/at91.h> |
14 | #include <dt-bindings/interrupt-controller/irq.h> | 15 | #include <dt-bindings/interrupt-controller/irq.h> |
15 | #include <dt-bindings/gpio/gpio.h> | 16 | #include <dt-bindings/gpio/gpio.h> |
@@ -617,7 +618,7 @@ | |||
617 | compatible = "atmel,hsmci"; | 618 | compatible = "atmel,hsmci"; |
618 | reg = <0xfff80000 0x600>; | 619 | reg = <0xfff80000 0x600>; |
619 | interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>; | 620 | interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>; |
620 | dmas = <&dma 1 0>; | 621 | dmas = <&dma 1 AT91_DMA_CFG_PER_ID(0)>; |
621 | dma-names = "rxtx"; | 622 | dma-names = "rxtx"; |
622 | #address-cells = <1>; | 623 | #address-cells = <1>; |
623 | #size-cells = <0>; | 624 | #size-cells = <0>; |
@@ -628,7 +629,7 @@ | |||
628 | compatible = "atmel,hsmci"; | 629 | compatible = "atmel,hsmci"; |
629 | reg = <0xfffd0000 0x600>; | 630 | reg = <0xfffd0000 0x600>; |
630 | interrupts = <29 IRQ_TYPE_LEVEL_HIGH 0>; | 631 | interrupts = <29 IRQ_TYPE_LEVEL_HIGH 0>; |
631 | dmas = <&dma 1 13>; | 632 | dmas = <&dma 1 AT91_DMA_CFG_PER_ID(13)>; |
632 | dma-names = "rxtx"; | 633 | dma-names = "rxtx"; |
633 | #address-cells = <1>; | 634 | #address-cells = <1>; |
634 | #size-cells = <0>; | 635 | #size-cells = <0>; |
@@ -662,6 +663,68 @@ | |||
662 | pinctrl-0 = <&pinctrl_spi1>; | 663 | pinctrl-0 = <&pinctrl_spi1>; |
663 | status = "disabled"; | 664 | status = "disabled"; |
664 | }; | 665 | }; |
666 | |||
667 | usb2: gadget@fff78000 { | ||
668 | #address-cells = <1>; | ||
669 | #size-cells = <0>; | ||
670 | compatible = "atmel,at91sam9rl-udc"; | ||
671 | reg = <0x00600000 0x80000 | ||
672 | 0xfff78000 0x400>; | ||
673 | interrupts = <27 IRQ_TYPE_LEVEL_HIGH 0>; | ||
674 | status = "disabled"; | ||
675 | |||
676 | ep0 { | ||
677 | reg = <0>; | ||
678 | atmel,fifo-size = <64>; | ||
679 | atmel,nb-banks = <1>; | ||
680 | }; | ||
681 | |||
682 | ep1 { | ||
683 | reg = <1>; | ||
684 | atmel,fifo-size = <1024>; | ||
685 | atmel,nb-banks = <2>; | ||
686 | atmel,can-dma; | ||
687 | atmel,can-isoc; | ||
688 | }; | ||
689 | |||
690 | ep2 { | ||
691 | reg = <2>; | ||
692 | atmel,fifo-size = <1024>; | ||
693 | atmel,nb-banks = <2>; | ||
694 | atmel,can-dma; | ||
695 | atmel,can-isoc; | ||
696 | }; | ||
697 | |||
698 | ep3 { | ||
699 | reg = <3>; | ||
700 | atmel,fifo-size = <1024>; | ||
701 | atmel,nb-banks = <3>; | ||
702 | atmel,can-dma; | ||
703 | }; | ||
704 | |||
705 | ep4 { | ||
706 | reg = <4>; | ||
707 | atmel,fifo-size = <1024>; | ||
708 | atmel,nb-banks = <3>; | ||
709 | atmel,can-dma; | ||
710 | }; | ||
711 | |||
712 | ep5 { | ||
713 | reg = <5>; | ||
714 | atmel,fifo-size = <1024>; | ||
715 | atmel,nb-banks = <3>; | ||
716 | atmel,can-dma; | ||
717 | atmel,can-isoc; | ||
718 | }; | ||
719 | |||
720 | ep6 { | ||
721 | reg = <6>; | ||
722 | atmel,fifo-size = <1024>; | ||
723 | atmel,nb-banks = <3>; | ||
724 | atmel,can-dma; | ||
725 | atmel,can-isoc; | ||
726 | }; | ||
727 | }; | ||
665 | }; | 728 | }; |
666 | 729 | ||
667 | nand0: nand@40000000 { | 730 | nand0: nand@40000000 { |
diff --git a/arch/arm/boot/dts/at91sam9m10g45ek.dts b/arch/arm/boot/dts/at91sam9m10g45ek.dts index 91dbf791d2c6..a4b00e5c61c0 100644 --- a/arch/arm/boot/dts/at91sam9m10g45ek.dts +++ b/arch/arm/boot/dts/at91sam9m10g45ek.dts | |||
@@ -116,6 +116,11 @@ | |||
116 | reg = <0>; | 116 | reg = <0>; |
117 | }; | 117 | }; |
118 | }; | 118 | }; |
119 | |||
120 | usb2: gadget@fff78000 { | ||
121 | atmel,vbus-gpio = <&pioB 19 GPIO_ACTIVE_HIGH>; | ||
122 | status = "okay"; | ||
123 | }; | ||
119 | }; | 124 | }; |
120 | 125 | ||
121 | nand0: nand@40000000 { | 126 | nand0: nand@40000000 { |
diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi index d37761846cd5..973bf5fd9800 100644 --- a/arch/arm/boot/dts/at91sam9n12.dtsi +++ b/arch/arm/boot/dts/at91sam9n12.dtsi | |||
@@ -8,6 +8,7 @@ | |||
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include "skeleton.dtsi" | 10 | #include "skeleton.dtsi" |
11 | #include <dt-bindings/dma/at91.h> | ||
11 | #include <dt-bindings/pinctrl/at91.h> | 12 | #include <dt-bindings/pinctrl/at91.h> |
12 | #include <dt-bindings/interrupt-controller/irq.h> | 13 | #include <dt-bindings/interrupt-controller/irq.h> |
13 | #include <dt-bindings/gpio/gpio.h> | 14 | #include <dt-bindings/gpio/gpio.h> |
@@ -97,7 +98,7 @@ | |||
97 | compatible = "atmel,hsmci"; | 98 | compatible = "atmel,hsmci"; |
98 | reg = <0xf0008000 0x600>; | 99 | reg = <0xf0008000 0x600>; |
99 | interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>; | 100 | interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>; |
100 | dmas = <&dma 1 0>; | 101 | dmas = <&dma 1 AT91_DMA_CFG_PER_ID(0)>; |
101 | dma-names = "rxtx"; | 102 | dma-names = "rxtx"; |
102 | #address-cells = <1>; | 103 | #address-cells = <1>; |
103 | #size-cells = <0>; | 104 | #size-cells = <0>; |
@@ -465,8 +466,8 @@ | |||
465 | compatible = "atmel,at91sam9x5-i2c"; | 466 | compatible = "atmel,at91sam9x5-i2c"; |
466 | reg = <0xf8010000 0x100>; | 467 | reg = <0xf8010000 0x100>; |
467 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 6>; | 468 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 6>; |
468 | dmas = <&dma 1 13>, | 469 | dmas = <&dma 1 AT91_DMA_CFG_PER_ID(13)>, |
469 | <&dma 1 14>; | 470 | <&dma 1 AT91_DMA_CFG_PER_ID(14)>; |
470 | dma-names = "tx", "rx"; | 471 | dma-names = "tx", "rx"; |
471 | #address-cells = <1>; | 472 | #address-cells = <1>; |
472 | #size-cells = <0>; | 473 | #size-cells = <0>; |
@@ -477,8 +478,8 @@ | |||
477 | compatible = "atmel,at91sam9x5-i2c"; | 478 | compatible = "atmel,at91sam9x5-i2c"; |
478 | reg = <0xf8014000 0x100>; | 479 | reg = <0xf8014000 0x100>; |
479 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 6>; | 480 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 6>; |
480 | dmas = <&dma 1 15>, | 481 | dmas = <&dma 1 AT91_DMA_CFG_PER_ID(15)>, |
481 | <&dma 1 16>; | 482 | <&dma 1 AT91_DMA_CFG_PER_ID(16)>; |
482 | dma-names = "tx", "rx"; | 483 | dma-names = "tx", "rx"; |
483 | #address-cells = <1>; | 484 | #address-cells = <1>; |
484 | #size-cells = <0>; | 485 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/at91sam9x5.dtsi b/arch/arm/boot/dts/at91sam9x5.dtsi index ff4bd7a061b0..57d45f5bea09 100644 --- a/arch/arm/boot/dts/at91sam9x5.dtsi +++ b/arch/arm/boot/dts/at91sam9x5.dtsi | |||
@@ -10,6 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include "skeleton.dtsi" | 12 | #include "skeleton.dtsi" |
13 | #include <dt-bindings/dma/at91.h> | ||
13 | #include <dt-bindings/pinctrl/at91.h> | 14 | #include <dt-bindings/pinctrl/at91.h> |
14 | #include <dt-bindings/interrupt-controller/irq.h> | 15 | #include <dt-bindings/interrupt-controller/irq.h> |
15 | #include <dt-bindings/gpio/gpio.h> | 16 | #include <dt-bindings/gpio/gpio.h> |
@@ -550,7 +551,7 @@ | |||
550 | compatible = "atmel,hsmci"; | 551 | compatible = "atmel,hsmci"; |
551 | reg = <0xf0008000 0x600>; | 552 | reg = <0xf0008000 0x600>; |
552 | interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>; | 553 | interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>; |
553 | dmas = <&dma0 1 0>; | 554 | dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(0)>; |
554 | dma-names = "rxtx"; | 555 | dma-names = "rxtx"; |
555 | #address-cells = <1>; | 556 | #address-cells = <1>; |
556 | #size-cells = <0>; | 557 | #size-cells = <0>; |
@@ -561,7 +562,7 @@ | |||
561 | compatible = "atmel,hsmci"; | 562 | compatible = "atmel,hsmci"; |
562 | reg = <0xf000c000 0x600>; | 563 | reg = <0xf000c000 0x600>; |
563 | interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>; | 564 | interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>; |
564 | dmas = <&dma1 1 0>; | 565 | dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(0)>; |
565 | dma-names = "rxtx"; | 566 | dma-names = "rxtx"; |
566 | #address-cells = <1>; | 567 | #address-cells = <1>; |
567 | #size-cells = <0>; | 568 | #size-cells = <0>; |
@@ -624,8 +625,8 @@ | |||
624 | compatible = "atmel,at91sam9x5-i2c"; | 625 | compatible = "atmel,at91sam9x5-i2c"; |
625 | reg = <0xf8010000 0x100>; | 626 | reg = <0xf8010000 0x100>; |
626 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 6>; | 627 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 6>; |
627 | dmas = <&dma0 1 7>, | 628 | dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(7)>, |
628 | <&dma0 1 8>; | 629 | <&dma0 1 AT91_DMA_CFG_PER_ID(8)>; |
629 | dma-names = "tx", "rx"; | 630 | dma-names = "tx", "rx"; |
630 | #address-cells = <1>; | 631 | #address-cells = <1>; |
631 | #size-cells = <0>; | 632 | #size-cells = <0>; |
@@ -638,8 +639,8 @@ | |||
638 | compatible = "atmel,at91sam9x5-i2c"; | 639 | compatible = "atmel,at91sam9x5-i2c"; |
639 | reg = <0xf8014000 0x100>; | 640 | reg = <0xf8014000 0x100>; |
640 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 6>; | 641 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 6>; |
641 | dmas = <&dma1 1 5>, | 642 | dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(5)>, |
642 | <&dma1 1 6>; | 643 | <&dma1 1 AT91_DMA_CFG_PER_ID(6)>; |
643 | dma-names = "tx", "rx"; | 644 | dma-names = "tx", "rx"; |
644 | #address-cells = <1>; | 645 | #address-cells = <1>; |
645 | #size-cells = <0>; | 646 | #size-cells = <0>; |
@@ -652,8 +653,8 @@ | |||
652 | compatible = "atmel,at91sam9x5-i2c"; | 653 | compatible = "atmel,at91sam9x5-i2c"; |
653 | reg = <0xf8018000 0x100>; | 654 | reg = <0xf8018000 0x100>; |
654 | interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>; | 655 | interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>; |
655 | dmas = <&dma0 1 9>, | 656 | dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(9)>, |
656 | <&dma0 1 10>; | 657 | <&dma0 1 AT91_DMA_CFG_PER_ID(10)>; |
657 | dma-names = "tx", "rx"; | 658 | dma-names = "tx", "rx"; |
658 | #address-cells = <1>; | 659 | #address-cells = <1>; |
659 | #size-cells = <0>; | 660 | #size-cells = <0>; |
@@ -727,6 +728,9 @@ | |||
727 | compatible = "atmel,at91rm9200-spi"; | 728 | compatible = "atmel,at91rm9200-spi"; |
728 | reg = <0xf0000000 0x100>; | 729 | reg = <0xf0000000 0x100>; |
729 | interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>; | 730 | interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>; |
731 | dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(1)>, | ||
732 | <&dma0 1 AT91_DMA_CFG_PER_ID(2)>; | ||
733 | dma-names = "tx", "rx"; | ||
730 | pinctrl-names = "default"; | 734 | pinctrl-names = "default"; |
731 | pinctrl-0 = <&pinctrl_spi0>; | 735 | pinctrl-0 = <&pinctrl_spi0>; |
732 | status = "disabled"; | 736 | status = "disabled"; |
@@ -738,11 +742,76 @@ | |||
738 | compatible = "atmel,at91rm9200-spi"; | 742 | compatible = "atmel,at91rm9200-spi"; |
739 | reg = <0xf0004000 0x100>; | 743 | reg = <0xf0004000 0x100>; |
740 | interrupts = <14 IRQ_TYPE_LEVEL_HIGH 3>; | 744 | interrupts = <14 IRQ_TYPE_LEVEL_HIGH 3>; |
745 | dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(1)>, | ||
746 | <&dma1 1 AT91_DMA_CFG_PER_ID(2)>; | ||
747 | dma-names = "tx", "rx"; | ||
741 | pinctrl-names = "default"; | 748 | pinctrl-names = "default"; |
742 | pinctrl-0 = <&pinctrl_spi1>; | 749 | pinctrl-0 = <&pinctrl_spi1>; |
743 | status = "disabled"; | 750 | status = "disabled"; |
744 | }; | 751 | }; |
745 | 752 | ||
753 | usb2: gadget@f803c000 { | ||
754 | #address-cells = <1>; | ||
755 | #size-cells = <0>; | ||
756 | compatible = "atmel,at91sam9rl-udc"; | ||
757 | reg = <0x00500000 0x80000 | ||
758 | 0xf803c000 0x400>; | ||
759 | interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>; | ||
760 | status = "disabled"; | ||
761 | |||
762 | ep0 { | ||
763 | reg = <0>; | ||
764 | atmel,fifo-size = <64>; | ||
765 | atmel,nb-banks = <1>; | ||
766 | }; | ||
767 | |||
768 | ep1 { | ||
769 | reg = <1>; | ||
770 | atmel,fifo-size = <1024>; | ||
771 | atmel,nb-banks = <2>; | ||
772 | atmel,can-dma; | ||
773 | atmel,can-isoc; | ||
774 | }; | ||
775 | |||
776 | ep2 { | ||
777 | reg = <2>; | ||
778 | atmel,fifo-size = <1024>; | ||
779 | atmel,nb-banks = <2>; | ||
780 | atmel,can-dma; | ||
781 | atmel,can-isoc; | ||
782 | }; | ||
783 | |||
784 | ep3 { | ||
785 | reg = <3>; | ||
786 | atmel,fifo-size = <1024>; | ||
787 | atmel,nb-banks = <3>; | ||
788 | atmel,can-dma; | ||
789 | }; | ||
790 | |||
791 | ep4 { | ||
792 | reg = <4>; | ||
793 | atmel,fifo-size = <1024>; | ||
794 | atmel,nb-banks = <3>; | ||
795 | atmel,can-dma; | ||
796 | }; | ||
797 | |||
798 | ep5 { | ||
799 | reg = <5>; | ||
800 | atmel,fifo-size = <1024>; | ||
801 | atmel,nb-banks = <3>; | ||
802 | atmel,can-dma; | ||
803 | atmel,can-isoc; | ||
804 | }; | ||
805 | |||
806 | ep6 { | ||
807 | reg = <6>; | ||
808 | atmel,fifo-size = <1024>; | ||
809 | atmel,nb-banks = <3>; | ||
810 | atmel,can-dma; | ||
811 | atmel,can-isoc; | ||
812 | }; | ||
813 | }; | ||
814 | |||
746 | watchdog@fffffe40 { | 815 | watchdog@fffffe40 { |
747 | compatible = "atmel,at91sam9260-wdt"; | 816 | compatible = "atmel,at91sam9260-wdt"; |
748 | reg = <0xfffffe40 0x10>; | 817 | reg = <0xfffffe40 0x10>; |
diff --git a/arch/arm/boot/dts/at91sam9x5ek.dtsi b/arch/arm/boot/dts/at91sam9x5ek.dtsi index 5930b0eb68a7..b753855b2058 100644 --- a/arch/arm/boot/dts/at91sam9x5ek.dtsi +++ b/arch/arm/boot/dts/at91sam9x5ek.dtsi | |||
@@ -52,6 +52,11 @@ | |||
52 | status = "okay"; | 52 | status = "okay"; |
53 | }; | 53 | }; |
54 | 54 | ||
55 | usb2: gadget@f803c000 { | ||
56 | atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; | ||
57 | status = "okay"; | ||
58 | }; | ||
59 | |||
55 | i2c0: i2c@f8010000 { | 60 | i2c0: i2c@f8010000 { |
56 | status = "okay"; | 61 | status = "okay"; |
57 | }; | 62 | }; |
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi index f57ffbc97432..bbf88d722956 100644 --- a/arch/arm/boot/dts/sama5d3.dtsi +++ b/arch/arm/boot/dts/sama5d3.dtsi | |||
@@ -9,6 +9,7 @@ | |||
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include "skeleton.dtsi" | 11 | #include "skeleton.dtsi" |
12 | #include <dt-bindings/dma/at91.h> | ||
12 | #include <dt-bindings/pinctrl/at91.h> | 13 | #include <dt-bindings/pinctrl/at91.h> |
13 | #include <dt-bindings/interrupt-controller/irq.h> | 14 | #include <dt-bindings/interrupt-controller/irq.h> |
14 | #include <dt-bindings/gpio/gpio.h> | 15 | #include <dt-bindings/gpio/gpio.h> |
@@ -67,7 +68,7 @@ | |||
67 | compatible = "atmel,hsmci"; | 68 | compatible = "atmel,hsmci"; |
68 | reg = <0xf0000000 0x600>; | 69 | reg = <0xf0000000 0x600>; |
69 | interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>; | 70 | interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>; |
70 | dmas = <&dma0 2 0>; | 71 | dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(0)>; |
71 | dma-names = "rxtx"; | 72 | dma-names = "rxtx"; |
72 | pinctrl-names = "default"; | 73 | pinctrl-names = "default"; |
73 | pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7>; | 74 | pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7>; |
@@ -115,8 +116,8 @@ | |||
115 | compatible = "atmel,at91sam9x5-i2c"; | 116 | compatible = "atmel,at91sam9x5-i2c"; |
116 | reg = <0xf0014000 0x4000>; | 117 | reg = <0xf0014000 0x4000>; |
117 | interrupts = <18 IRQ_TYPE_LEVEL_HIGH 6>; | 118 | interrupts = <18 IRQ_TYPE_LEVEL_HIGH 6>; |
118 | dmas = <&dma0 2 7>, | 119 | dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(7)>, |
119 | <&dma0 2 8>; | 120 | <&dma0 2 AT91_DMA_CFG_PER_ID(8)>; |
120 | dma-names = "tx", "rx"; | 121 | dma-names = "tx", "rx"; |
121 | pinctrl-names = "default"; | 122 | pinctrl-names = "default"; |
122 | pinctrl-0 = <&pinctrl_i2c0>; | 123 | pinctrl-0 = <&pinctrl_i2c0>; |
@@ -129,8 +130,8 @@ | |||
129 | compatible = "atmel,at91sam9x5-i2c"; | 130 | compatible = "atmel,at91sam9x5-i2c"; |
130 | reg = <0xf0018000 0x4000>; | 131 | reg = <0xf0018000 0x4000>; |
131 | interrupts = <19 IRQ_TYPE_LEVEL_HIGH 6>; | 132 | interrupts = <19 IRQ_TYPE_LEVEL_HIGH 6>; |
132 | dmas = <&dma0 2 9>, | 133 | dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(9)>, |
133 | <&dma0 2 10>; | 134 | <&dma0 2 AT91_DMA_CFG_PER_ID(10)>; |
134 | dma-names = "tx", "rx"; | 135 | dma-names = "tx", "rx"; |
135 | pinctrl-names = "default"; | 136 | pinctrl-names = "default"; |
136 | pinctrl-0 = <&pinctrl_i2c1>; | 137 | pinctrl-0 = <&pinctrl_i2c1>; |
@@ -177,7 +178,7 @@ | |||
177 | compatible = "atmel,hsmci"; | 178 | compatible = "atmel,hsmci"; |
178 | reg = <0xf8000000 0x600>; | 179 | reg = <0xf8000000 0x600>; |
179 | interrupts = <22 IRQ_TYPE_LEVEL_HIGH 0>; | 180 | interrupts = <22 IRQ_TYPE_LEVEL_HIGH 0>; |
180 | dmas = <&dma1 2 0>; | 181 | dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(0)>; |
181 | dma-names = "rxtx"; | 182 | dma-names = "rxtx"; |
182 | pinctrl-names = "default"; | 183 | pinctrl-names = "default"; |
183 | pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3>; | 184 | pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3>; |
@@ -190,7 +191,7 @@ | |||
190 | compatible = "atmel,hsmci"; | 191 | compatible = "atmel,hsmci"; |
191 | reg = <0xf8004000 0x600>; | 192 | reg = <0xf8004000 0x600>; |
192 | interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>; | 193 | interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>; |
193 | dmas = <&dma1 2 1>; | 194 | dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(1)>; |
194 | dma-names = "rxtx"; | 195 | dma-names = "rxtx"; |
195 | pinctrl-names = "default"; | 196 | pinctrl-names = "default"; |
196 | pinctrl-0 = <&pinctrl_mmc2_clk_cmd_dat0 &pinctrl_mmc2_dat1_3>; | 197 | pinctrl-0 = <&pinctrl_mmc2_clk_cmd_dat0 &pinctrl_mmc2_dat1_3>; |
@@ -303,8 +304,8 @@ | |||
303 | compatible = "atmel,at91sam9x5-i2c"; | 304 | compatible = "atmel,at91sam9x5-i2c"; |
304 | reg = <0xf801c000 0x4000>; | 305 | reg = <0xf801c000 0x4000>; |
305 | interrupts = <20 IRQ_TYPE_LEVEL_HIGH 6>; | 306 | interrupts = <20 IRQ_TYPE_LEVEL_HIGH 6>; |
306 | dmas = <&dma1 2 11>, | 307 | dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(11)>, |
307 | <&dma1 2 12>; | 308 | <&dma1 2 AT91_DMA_CFG_PER_ID(12)>; |
308 | dma-names = "tx", "rx"; | 309 | dma-names = "tx", "rx"; |
309 | #address-cells = <1>; | 310 | #address-cells = <1>; |
310 | #size-cells = <0>; | 311 | #size-cells = <0>; |
diff --git a/arch/arm/mach-at91/at91sam9g45.c b/arch/arm/mach-at91/at91sam9g45.c index 8b7fce067652..95a418a7aabe 100644 --- a/arch/arm/mach-at91/at91sam9g45.c +++ b/arch/arm/mach-at91/at91sam9g45.c | |||
@@ -266,6 +266,8 @@ static struct clk_lookup periph_clocks_lookups[] = { | |||
266 | CLKDEV_CON_DEV_ID(NULL, "fff88000.i2c", &twi1_clk), | 266 | CLKDEV_CON_DEV_ID(NULL, "fff88000.i2c", &twi1_clk), |
267 | CLKDEV_CON_DEV_ID("spi_clk", "fffa4000.spi", &spi0_clk), | 267 | CLKDEV_CON_DEV_ID("spi_clk", "fffa4000.spi", &spi0_clk), |
268 | CLKDEV_CON_DEV_ID("spi_clk", "fffa8000.spi", &spi1_clk), | 268 | CLKDEV_CON_DEV_ID("spi_clk", "fffa8000.spi", &spi1_clk), |
269 | CLKDEV_CON_DEV_ID("hclk", "600000.gadget", &utmi_clk), | ||
270 | CLKDEV_CON_DEV_ID("pclk", "600000.gadget", &udphs_clk), | ||
269 | /* fake hclk clock */ | 271 | /* fake hclk clock */ |
270 | CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &uhphs_clk), | 272 | CLKDEV_CON_DEV_ID("hclk", "at91_ohci", &uhphs_clk), |
271 | CLKDEV_CON_DEV_ID(NULL, "fffff200.gpio", &pioA_clk), | 273 | CLKDEV_CON_DEV_ID(NULL, "fffff200.gpio", &pioA_clk), |
diff --git a/arch/arm/mach-at91/at91sam9x5.c b/arch/arm/mach-at91/at91sam9x5.c index e631fec040ce..2abee6626aac 100644 --- a/arch/arm/mach-at91/at91sam9x5.c +++ b/arch/arm/mach-at91/at91sam9x5.c | |||
@@ -249,6 +249,8 @@ static struct clk_lookup periph_clocks_lookups[] = { | |||
249 | CLKDEV_CON_DEV_ID("hclk", "600000.ohci", &uhphs_clk), | 249 | CLKDEV_CON_DEV_ID("hclk", "600000.ohci", &uhphs_clk), |
250 | CLKDEV_CON_DEV_ID("ohci_clk", "600000.ohci", &uhphs_clk), | 250 | CLKDEV_CON_DEV_ID("ohci_clk", "600000.ohci", &uhphs_clk), |
251 | CLKDEV_CON_DEV_ID("ehci_clk", "700000.ehci", &uhphs_clk), | 251 | CLKDEV_CON_DEV_ID("ehci_clk", "700000.ehci", &uhphs_clk), |
252 | CLKDEV_CON_DEV_ID("hclk", "500000.gadget", &utmi_clk), | ||
253 | CLKDEV_CON_DEV_ID("pclk", "500000.gadget", &udphs_clk), | ||
252 | }; | 254 | }; |
253 | 255 | ||
254 | /* | 256 | /* |
diff --git a/include/dt-bindings/dma/at91.h b/include/dt-bindings/dma/at91.h new file mode 100644 index 000000000000..e835037a77b4 --- /dev/null +++ b/include/dt-bindings/dma/at91.h | |||
@@ -0,0 +1,27 @@ | |||
1 | /* | ||
2 | * This header provides macros for at91 dma bindings. | ||
3 | * | ||
4 | * Copyright (C) 2013 Ludovic Desroches <ludovic.desroches@atmel.com> | ||
5 | * | ||
6 | * GPLv2 only | ||
7 | */ | ||
8 | |||
9 | #ifndef __DT_BINDINGS_AT91_DMA_H__ | ||
10 | #define __DT_BINDINGS_AT91_DMA_H__ | ||
11 | |||
12 | /* | ||
13 | * Source and/or destination peripheral ID | ||
14 | */ | ||
15 | #define AT91_DMA_CFG_PER_ID_MASK (0xff) | ||
16 | #define AT91_DMA_CFG_PER_ID(id) (id & AT91_DMA_CFG_PER_ID_MASK) | ||
17 | |||
18 | /* | ||
19 | * FIFO configuration: it defines when a request is serviced. | ||
20 | */ | ||
21 | #define AT91_DMA_CFG_FIFOCFG_OFFSET (8) | ||
22 | #define AT91_DMA_CFG_FIFOCFG_MASK (0xf << AT91_DMA_CFG_FIFOCFG_OFFSET) | ||
23 | #define AT91_DMA_CFG_FIFOCFG_HALF (0x0 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* half FIFO (default behavior) */ | ||
24 | #define AT91_DMA_CFG_FIFOCFG_ALAP (0x1 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* largest defined AHB burst */ | ||
25 | #define AT91_DMA_CFG_FIFOCFG_ASAP (0x2 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* single AHB access */ | ||
26 | |||
27 | #endif /* __DT_BINDINGS_AT91_DMA_H__ */ | ||