]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - arch/arm/boot/dts/sama5d4.dtsi
ARM: at91/dt: sama5d4: fix broken arithmetic expression in dmas property of i2c1
[karo-tx-linux.git] / arch / arm / boot / dts / sama5d4.dtsi
index 6b1bb58f9c0b609fdb3622a02c89d2d394750c81..7e829b7ba754c7f84807dd39d99431a83bab9f01 100644 (file)
@@ -72,6 +72,8 @@
                i2c0 = &i2c0;
                i2c1 = &i2c1;
                i2c2 = &i2c2;
+               spi0 = &spi0;
+               spi1 = &spi1;
        };
        cpus {
                #address-cells = <1>;
                                status = "disabled";
                        };
 
+                       spi1: spi@fc018000 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               compatible = "atmel,at91rm9200-spi";
+                               reg = <0xfc018000 0x100>;
+                               interrupts = <38 IRQ_TYPE_LEVEL_HIGH 3>;
+                               dmas = <&dma1
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
+                                       | AT91_XDMAC_DT_PERID(12))>,
+                                      <&dma1
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
+                                       | AT91_XDMAC_DT_PERID(13))>;
+                               dma-names = "tx", "rx";
+                               pinctrl-names = "default";
+                               pinctrl-0 = <&pinctrl_spi1>;
+                               clocks = <&spi1_clk>;
+                               clock-names = "spi_clk";
+                               status = "disabled";
+                       };
+
                        i2c0: i2c@f8014000 {
                                compatible = "atmel,at91sam9x5-i2c";
                                reg = <0xf8014000 0x4000>;
                                reg = <0xf8018000 0x4000>;
                                interrupts = <33 IRQ_TYPE_LEVEL_HIGH 6>;
                                dmas = <&dma1
-                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1))
-                                       AT91_XDMAC_DT_PERID(4)>,
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
+                                       | AT91_XDMAC_DT_PERID(4))>,
                                       <&dma1
-                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1))
-                                       AT91_XDMAC_DT_PERID(5)>;
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
+                                       | AT91_XDMAC_DT_PERID(5))>;
                                dma-names = "tx", "rx";
                                pinctrl-names = "default";
                                pinctrl-0 = <&pinctrl_i2c1>;
                                reg = <0xf8028000 0x60>;
                        };
 
+                       usart0: serial@f802c000 {
+                               compatible = "atmel,at91sam9260-usart";
+                               reg = <0xf802c000 0x100>;
+                               interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>;
+                               dmas = <&dma1
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
+                                        AT91_XDMAC_DT_PERID(36))>,
+                                      <&dma1
+                                       (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
+                                        AT91_XDMAC_DT_PERID(37))>;
+                               dma-names = "tx", "rx";
+                               pinctrl-names = "default";
+                               pinctrl-0 = <&pinctrl_usart0 &pinctrl_usart0_rts &pinctrl_usart0_cts>;
+                               clocks = <&usart0_clk>;
+                               clock-names = "usart";
+                               status = "disabled";
+                       };
+
+                       usart1: serial@f8030000 {
+                               compatible = "atmel,at91sam9260-usart";
+                               reg = <0xf8030000 0x100>;
+                               interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
+                               dmas = <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
+                                       AT91_XDMAC_DT_PERID(38))>,
+                                      <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
+                                       AT91_XDMAC_DT_PERID(39))>;
+                               dma-names = "tx", "rx";
+                               pinctrl-names = "default";
+                               pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts &pinctrl_usart1_cts>;
+                               clocks = <&usart1_clk>;
+                               clock-names = "usart";
+                               status = "disabled";
+                       };
+
                        mmc1: mmc@fc000000 {
                                compatible = "atmel,hsmci";
                                reg = <0xfc000000 0x600>;
                        };
 
 
-                       pinctrl@fc06a000 {
+                       pinctrl: pinctrl@fc06a000 {
                                #address-cells = <1>;
                                #size-cells = <1>;
                                compatible = "atmel,at91sam9x5-pinctrl", "atmel,at91rm9200-pinctrl", "simple-bus";
-                               ranges = <0xfc06a000 0xfc06a000 0x4000>;
+                               ranges = <0xfc06a000 0xfc06a000 0x4000 0xfc068000 0xfc068000 0x200>;
                                /* WARNING: revisit as pin spec has changed */
                                atmel,mux-mask = <
                                        /*   A          B          C  */
                                        0xffffffff 0x3ffcfe7c 0x1c010101        /* pioA */
                                        0x7fffffff 0xfffccc3a 0x3f00cc3a        /* pioB */
                                        0xffffffff 0x3ff83fff 0xff00ffff        /* pioC */
-                                       0x00000000 0x00000000 0x00000000        /* pioD */
+                                       0xb003ff00 0x8002a800 0x00000000        /* pioD */
                                        0xffffffff 0x7fffffff 0x76fff1bf        /* pioE */
                                        >;
 
                                                atmel,pins =
                                                        <AT91_PIOE 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* conflicts with USBA_VBUS */
                                        };
+
                                        pinctrl_adc0_ad0: adc0_ad0 {
                                                atmel,pins =
                                                        <AT91_PIOC 27 AT91_PERIPH_A AT91_PINCTRL_NONE>;
                                        };
+
                                        pinctrl_adc0_ad1: adc0_ad1 {
                                                atmel,pins =
                                                        <AT91_PIOC 28 AT91_PERIPH_A AT91_PINCTRL_NONE>;
                                        };
+
                                        pinctrl_adc0_ad2: adc0_ad2 {
                                                atmel,pins =
                                                        <AT91_PIOC 29 AT91_PERIPH_A AT91_PINCTRL_NONE>;
                                        };
+
                                        pinctrl_adc0_ad3: adc0_ad3 {
                                                atmel,pins =
                                                        <AT91_PIOC 30 AT91_PERIPH_A AT91_PINCTRL_NONE>;
                                        };
+
                                        pinctrl_adc0_ad4: adc0_ad4 {
                                                atmel,pins =
                                                        <AT91_PIOC 31 AT91_PERIPH_A AT91_PINCTRL_NONE>;
                                                         AT91_PIOB  3 AT91_PERIPH_C AT91_PINCTRL_NONE   /* ISI_VSYNC */
                                                         AT91_PIOB  4 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* ISI_HSYNC */
                                        };
+
                                        pinctrl_isi_data_8_9: isi-0-data-8-9 {
                                                atmel,pins =
                                                        <AT91_PIOC 0 AT91_PERIPH_C AT91_PINCTRL_NONE    /* ISI_D8, conflicts with SPI0_MISO, PWMH2 */
                                                         AT91_PIOC 1 AT91_PERIPH_C AT91_PINCTRL_NONE>;  /* ISI_D9, conflicts with SPI0_MOSI, PWML2 */
                                        };
+
                                        pinctrl_isi_data_10_11: isi-0-data-10-11 {
                                                atmel,pins =
                                                        <AT91_PIOC 2 AT91_PERIPH_C AT91_PINCTRL_NONE    /* ISI_D10, conflicts with SPI0_SPCK, PWMH3 */
                                                         AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_NONE   /* LCDDEN */
                                                         AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* LCDPCK */
                                        };
+
                                        pinctrl_lcd_pwm: lcd-pwm-0 {
                                                atmel,pins = <AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_NONE>;    /* LCDPWM */
                                        };
+
                                        pinctrl_lcd_rgb444: lcd-rgb-0 {
                                                atmel,pins =
                                                        <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE    /* LCDD0 pin */
                                                         AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE   /* LCDD10 pin */
                                                         AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* LCDD11 pin */
                                        };
+
                                        pinctrl_lcd_rgb565: lcd-rgb-1 {
                                                atmel,pins =
                                                        <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE    /* LCDD0 pin */
                                                         AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE   /* LCDD14 pin */
                                                         AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* LCDD15 pin */
                                        };
+
                                        pinctrl_lcd_rgb666: lcd-rgb-2 {
                                                atmel,pins =
                                                        <AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE    /* LCDD2 pin */
                                                         AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_NONE   /* LCDD22 pin */
                                                         AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* LCDD23 pin */
                                        };
+
                                        pinctrl_lcd_rgb777: lcd-rgb-3 {
                                                atmel,pins =
                                                         /* LCDDAT0 conflicts with TMS */
                                                         AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_NONE   /* LCDD22 pin */
                                                         AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* LCDD23 pin */
                                        };
+
                                        pinctrl_lcd_rgb888: lcd-rgb-4 {
                                                atmel,pins =
                                                        <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE    /* LCDD0 pin */
                                                         AT91_PIOC 6 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* MCI0_DB0, conflict with NAND_D1 */
                                                        >;
                                        };
+
                                        pinctrl_mmc0_dat1_3: mmc0_dat1_3 {
                                                atmel,pins =
                                                        <AT91_PIOC 7 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* MCI0_DB1, conflict with NAND_D2 */
                                                         AT91_PIOE 20 AT91_PERIPH_C AT91_PINCTRL_PULL_UP        /* MCI1_DA0 */
                                                        >;
                                        };
+
                                        pinctrl_mmc1_dat1_3: mmc1_dat1_3 {
                                                atmel,pins =
                                                        <AT91_PIOE 21 AT91_PERIPH_C AT91_PINCTRL_PULL_UP        /* MCI1_DA1 */
                                        };
                                };
 
+                               spi1 {
+                                       pinctrl_spi1: spi1-0 {
+                                               atmel,pins = <
+                                                       AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE    /* SPI0_MISO */
+                                                       AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_NONE    /* SPI0_MOSI */
+                                                       AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE    /* SPI0_SPCK */
+                                               >;
+                                       };
+                               };
+
                                ssc0 {
                                        pinctrl_ssc0_tx: ssc0_tx {
                                                atmel,pins =
                                                         AT91_PIOB 5 AT91_PERIPH_B AT91_PINCTRL_PULL_UP         /* TXD - conflicts with G0_COL, PCK2 */
                                                        >;
                                        };
+
                                        pinctrl_usart2_rts: usart2_rts-0 {
                                                atmel,pins = <AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;    /* conflicts with G0_RX3, PWMH1 */
                                        };
+
                                        pinctrl_usart2_cts: usart2_cts-0 {
                                                atmel,pins = <AT91_PIOB 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;     /* conflicts with G0_TXER, ISI_VSYNC */
                                        };
                                };
 
+                               usart0 {
+                                       pinctrl_usart0: usart0-0 {
+                                               atmel,pins = <
+                                                       AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP         /* RXD */
+                                                       AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE            /* TXD */
+                                               >;
+                                       };
+
+                                       pinctrl_usart0_rts: usart0_rts-0 {
+                                               atmel,pins = <AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE>;
+                                       };
+
+                                       pinctrl_usart0_cts: usart0_cts-0 {
+                                               atmel,pins = <AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
+                                       };
+                               };
+
+                               usart1 {
+                                       pinctrl_usart1: usart1-0 {
+                                               atmel,pins = <
+                                                       AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_PULL_UP         /* RXD */
+                                                       AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE            /* TXD */
+                                               >;
+                                       };
+
+                                       pinctrl_usart1_rts: usart1_rts-0 {
+                                               atmel,pins = <AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
+                                       };
+
+                                       pinctrl_usart1_cts: usart1_cts-0 {
+                                               atmel,pins = <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE>;
+                                       };
+                               };
+
                                usart3 {
                                        pinctrl_usart3: usart3-0 {
                                                atmel,pins =
                                                         AT91_PIOE 27 AT91_PERIPH_B AT91_PINCTRL_PULL_UP        /* TXD */
                                                        >;
                                        };
+
                                        pinctrl_usart4_rts: usart4_rts-0 {
                                                atmel,pins = <AT91_PIOE 28 AT91_PERIPH_B AT91_PINCTRL_NONE>;    /* conflicts with NWAIT, A19 */
                                        };
+
                                        pinctrl_usart4_cts: usart4_cts-0 {
                                                atmel,pins = <AT91_PIOE 0 AT91_PERIPH_C AT91_PINCTRL_NONE>;     /* conflicts with A0/NBS0, MCI0_CDB */
                                        };