diff options
| author | Kevin Hilman <khilman@linaro.org> | 2014-02-10 13:39:27 -0500 |
|---|---|---|
| committer | Kevin Hilman <khilman@linaro.org> | 2014-02-10 13:45:26 -0500 |
| commit | 8760f7990a2dc202bb41278bc45c9c5c93e1da5c (patch) | |
| tree | 2a970b40a29c3bd28e119229bcdbbf58ef44bfab | |
| parent | 5db1dabc562b27c356376fbb527a746dcf7c9572 (diff) | |
| parent | b7c2b6157079811586180d13c44a1095b57c2d47 (diff) | |
Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into fixes
From Nicolas Ferre:
First series of AT91 fixes for 3.14.
All of them are DT-related.
- fixes for typos in i2c and ohci clocks
- addition of a USB host node for at91sam9n12ek
- 2 DT documentation updates that have been sent a long time ago
- a new board based on the sama5d36 SoC
* tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
ARM: at91: add Atmel's SAMA5D3 Xplained board
spi/atmel: document clock properties
mmc: atmel-mci: document clock properties
ARM: at91: enable USB host on at91sam9n12ek board
ARM: at91/dt: fix sama5d3 ohci hclk clock reference
ARM: at91/dt: sam9263: fix compatibility string for the I2C
Signed-off-by: Kevin Hilman <khilman@linaro.org>
| -rw-r--r-- | Documentation/devicetree/bindings/mmc/atmel-hsmci.txt | 5 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/spi/spi_atmel.txt | 5 | ||||
| -rw-r--r-- | arch/arm/boot/dts/Makefile | 1 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91-sama5d3_xplained.dts | 229 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91sam9263.dtsi | 2 | ||||
| -rw-r--r-- | arch/arm/boot/dts/at91sam9n12ek.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/sama5d3.dtsi | 2 |
7 files changed, 246 insertions, 2 deletions
diff --git a/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt index 0a85c70cd30a..07ad02075a93 100644 --- a/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt +++ b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt | |||
| @@ -13,6 +13,9 @@ Required properties: | |||
| 13 | - #address-cells: should be one. The cell is the slot id. | 13 | - #address-cells: should be one. The cell is the slot id. |
| 14 | - #size-cells: should be zero. | 14 | - #size-cells: should be zero. |
| 15 | - at least one slot node | 15 | - at least one slot node |
| 16 | - clock-names: tuple listing input clock names. | ||
| 17 | Required elements: "mci_clk" | ||
| 18 | - clocks: phandles to input clocks. | ||
| 16 | 19 | ||
| 17 | The node contains child nodes for each slot that the platform uses | 20 | The node contains child nodes for each slot that the platform uses |
| 18 | 21 | ||
| @@ -24,6 +27,8 @@ mmc0: mmc@f0008000 { | |||
| 24 | interrupts = <12 4>; | 27 | interrupts = <12 4>; |
| 25 | #address-cells = <1>; | 28 | #address-cells = <1>; |
| 26 | #size-cells = <0>; | 29 | #size-cells = <0>; |
| 30 | clock-names = "mci_clk"; | ||
| 31 | clocks = <&mci0_clk>; | ||
| 27 | 32 | ||
| 28 | [ child node definitions...] | 33 | [ child node definitions...] |
| 29 | }; | 34 | }; |
diff --git a/Documentation/devicetree/bindings/spi/spi_atmel.txt b/Documentation/devicetree/bindings/spi/spi_atmel.txt index 07e04cdc0c9e..4f8184d069cb 100644 --- a/Documentation/devicetree/bindings/spi/spi_atmel.txt +++ b/Documentation/devicetree/bindings/spi/spi_atmel.txt | |||
| @@ -5,6 +5,9 @@ Required properties: | |||
| 5 | - reg: Address and length of the register set for the device | 5 | - reg: Address and length of the register set for the device |
| 6 | - interrupts: Should contain spi interrupt | 6 | - interrupts: Should contain spi interrupt |
| 7 | - cs-gpios: chipselects | 7 | - cs-gpios: chipselects |
| 8 | - clock-names: tuple listing input clock names. | ||
| 9 | Required elements: "spi_clk" | ||
| 10 | - clocks: phandles to input clocks. | ||
| 8 | 11 | ||
| 9 | Example: | 12 | Example: |
| 10 | 13 | ||
| @@ -14,6 +17,8 @@ spi1: spi@fffcc000 { | |||
| 14 | interrupts = <13 4 5>; | 17 | interrupts = <13 4 5>; |
| 15 | #address-cells = <1>; | 18 | #address-cells = <1>; |
| 16 | #size-cells = <0>; | 19 | #size-cells = <0>; |
| 20 | clocks = <&spi1_clk>; | ||
| 21 | clock-names = "spi_clk"; | ||
| 17 | cs-gpios = <&pioB 3 0>; | 22 | cs-gpios = <&pioB 3 0>; |
| 18 | status = "okay"; | 23 | status = "okay"; |
| 19 | 24 | ||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index b9d6a8b485e0..6d1e43d46187 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
| @@ -38,6 +38,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91sam9g35ek.dtb | |||
| 38 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb | 38 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x25ek.dtb |
| 39 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb | 39 | dtb-$(CONFIG_ARCH_AT91) += at91sam9x35ek.dtb |
| 40 | # sama5d3 | 40 | # sama5d3 |
| 41 | dtb-$(CONFIG_ARCH_AT91) += at91-sama5d3_xplained.dtb | ||
| 41 | dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb | 42 | dtb-$(CONFIG_ARCH_AT91) += sama5d31ek.dtb |
| 42 | dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb | 43 | dtb-$(CONFIG_ARCH_AT91) += sama5d33ek.dtb |
| 43 | dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb | 44 | dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb |
diff --git a/arch/arm/boot/dts/at91-sama5d3_xplained.dts b/arch/arm/boot/dts/at91-sama5d3_xplained.dts new file mode 100644 index 000000000000..ce1375595e5f --- /dev/null +++ b/arch/arm/boot/dts/at91-sama5d3_xplained.dts | |||
| @@ -0,0 +1,229 @@ | |||
| 1 | /* | ||
| 2 | * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board | ||
| 3 | * | ||
| 4 | * Copyright (C) 2014 Atmel, | ||
| 5 | * 2014 Nicolas Ferre <nicolas.ferre@atmel.com> | ||
| 6 | * | ||
| 7 | * Licensed under GPLv2 or later. | ||
| 8 | */ | ||
| 9 | /dts-v1/; | ||
| 10 | #include "sama5d36.dtsi" | ||
| 11 | |||
| 12 | / { | ||
| 13 | model = "SAMA5D3 Xplained"; | ||
| 14 | compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5"; | ||
| 15 | |||
| 16 | chosen { | ||
| 17 | bootargs = "console=ttyS0,115200"; | ||
| 18 | }; | ||
| 19 | |||
| 20 | memory { | ||
| 21 | reg = <0x20000000 0x10000000>; | ||
| 22 | }; | ||
| 23 | |||
| 24 | ahb { | ||
| 25 | apb { | ||
| 26 | mmc0: mmc@f0000000 { | ||
| 27 | pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>; | ||
| 28 | status = "okay"; | ||
| 29 | slot@0 { | ||
| 30 | reg = <0>; | ||
| 31 | bus-width = <8>; | ||
| 32 | cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>; | ||
| 33 | }; | ||
| 34 | }; | ||
| 35 | |||
| 36 | spi0: spi@f0004000 { | ||
| 37 | cs-gpios = <&pioD 13 0>; | ||
| 38 | status = "okay"; | ||
| 39 | }; | ||
| 40 | |||
| 41 | can0: can@f000c000 { | ||
| 42 | status = "okay"; | ||
| 43 | }; | ||
| 44 | |||
| 45 | i2c0: i2c@f0014000 { | ||
| 46 | status = "okay"; | ||
| 47 | }; | ||
| 48 | |||
| 49 | i2c1: i2c@f0018000 { | ||
| 50 | status = "okay"; | ||
| 51 | }; | ||
| 52 | |||
| 53 | macb0: ethernet@f0028000 { | ||
| 54 | phy-mode = "rgmii"; | ||
| 55 | status = "okay"; | ||
| 56 | }; | ||
| 57 | |||
| 58 | usart0: serial@f001c000 { | ||
| 59 | status = "okay"; | ||
| 60 | }; | ||
| 61 | |||
| 62 | usart1: serial@f0020000 { | ||
| 63 | pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>; | ||
| 64 | status = "okay"; | ||
| 65 | }; | ||
| 66 | |||
| 67 | uart0: serial@f0024000 { | ||
| 68 | status = "okay"; | ||
| 69 | }; | ||
| 70 | |||
| 71 | mmc1: mmc@f8000000 { | ||
| 72 | pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>; | ||
| 73 | status = "okay"; | ||
| 74 | slot@0 { | ||
| 75 | reg = <0>; | ||
| 76 | bus-width = <4>; | ||
| 77 | cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>; | ||
| 78 | }; | ||
| 79 | }; | ||
| 80 | |||
| 81 | spi1: spi@f8008000 { | ||
| 82 | cs-gpios = <&pioC 25 0>, <0>, <0>, <&pioD 16 0>; | ||
| 83 | status = "okay"; | ||
| 84 | }; | ||
| 85 | |||
| 86 | adc0: adc@f8018000 { | ||
| 87 | pinctrl-0 = < | ||
| 88 | &pinctrl_adc0_adtrg | ||
| 89 | &pinctrl_adc0_ad0 | ||
| 90 | &pinctrl_adc0_ad1 | ||
| 91 | &pinctrl_adc0_ad2 | ||
| 92 | &pinctrl_adc0_ad3 | ||
| 93 | &pinctrl_adc0_ad4 | ||
| 94 | &pinctrl_adc0_ad5 | ||
| 95 | &pinctrl_adc0_ad6 | ||
| 96 | &pinctrl_adc0_ad7 | ||
| 97 | &pinctrl_adc0_ad8 | ||
| 98 | &pinctrl_adc0_ad9 | ||
| 99 | >; | ||
| 100 | status = "okay"; | ||
| 101 | }; | ||
| 102 | |||
| 103 | i2c2: i2c@f801c000 { | ||
| 104 | dmas = <0>, <0>; /* Do not use DMA for i2c2 */ | ||
| 105 | status = "okay"; | ||
| 106 | }; | ||
| 107 | |||
| 108 | macb1: ethernet@f802c000 { | ||
| 109 | phy-mode = "rmii"; | ||
| 110 | status = "okay"; | ||
| 111 | }; | ||
| 112 | |||
| 113 | dbgu: serial@ffffee00 { | ||
| 114 | status = "okay"; | ||
| 115 | }; | ||
| 116 | |||
| 117 | pinctrl@fffff200 { | ||
| 118 | board { | ||
| 119 | pinctrl_mmc0_cd: mmc0_cd { | ||
| 120 | atmel,pins = | ||
| 121 | <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | ||
| 122 | }; | ||
| 123 | |||
| 124 | pinctrl_mmc1_cd: mmc1_cd { | ||
| 125 | atmel,pins = | ||
| 126 | <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | ||
| 127 | }; | ||
| 128 | |||
| 129 | pinctrl_usba_vbus: usba_vbus { | ||
| 130 | atmel,pins = | ||
| 131 | <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PE9, conflicts with A9 */ | ||
| 132 | }; | ||
| 133 | }; | ||
| 134 | }; | ||
| 135 | |||
| 136 | pmc: pmc@fffffc00 { | ||
| 137 | main: mainck { | ||
| 138 | clock-frequency = <12000000>; | ||
| 139 | }; | ||
| 140 | }; | ||
| 141 | }; | ||
| 142 | |||
| 143 | nand0: nand@60000000 { | ||
| 144 | nand-bus-width = <8>; | ||
| 145 | nand-ecc-mode = "hw"; | ||
| 146 | atmel,has-pmecc; | ||
| 147 | atmel,pmecc-cap = <4>; | ||
| 148 | atmel,pmecc-sector-size = <512>; | ||
| 149 | nand-on-flash-bbt; | ||
| 150 | status = "okay"; | ||
| 151 | |||
| 152 | at91bootstrap@0 { | ||
| 153 | label = "at91bootstrap"; | ||
| 154 | reg = <0x0 0x40000>; | ||
| 155 | }; | ||
| 156 | |||
| 157 | bootloader@40000 { | ||
| 158 | label = "bootloader"; | ||
| 159 | reg = <0x40000 0x80000>; | ||
| 160 | }; | ||
| 161 | |||
| 162 | bootloaderenv@c0000 { | ||
| 163 | label = "bootloader env"; | ||
| 164 | reg = <0xc0000 0xc0000>; | ||
| 165 | }; | ||
| 166 | |||
| 167 | dtb@180000 { | ||
| 168 | label = "device tree"; | ||
| 169 | reg = <0x180000 0x80000>; | ||
| 170 | }; | ||
| 171 | |||
| 172 | kernel@200000 { | ||
| 173 | label = "kernel"; | ||
| 174 | reg = <0x200000 0x600000>; | ||
| 175 | }; | ||
| 176 | |||
| 177 | rootfs@800000 { | ||
| 178 | label = "rootfs"; | ||
| 179 | reg = <0x800000 0x0f800000>; | ||
| 180 | }; | ||
| 181 | }; | ||
| 182 | |||
| 183 | usb0: gadget@00500000 { | ||
| 184 | atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ | ||
| 185 | pinctrl-names = "default"; | ||
| 186 | pinctrl-0 = <&pinctrl_usba_vbus>; | ||
| 187 | status = "okay"; | ||
| 188 | }; | ||
| 189 | |||
| 190 | usb1: ohci@00600000 { | ||
| 191 | num-ports = <3>; | ||
| 192 | atmel,vbus-gpio = <0 | ||
| 193 | &pioE 3 GPIO_ACTIVE_LOW | ||
| 194 | &pioE 4 GPIO_ACTIVE_LOW | ||
| 195 | >; | ||
| 196 | status = "okay"; | ||
| 197 | }; | ||
| 198 | |||
| 199 | usb2: ehci@00700000 { | ||
| 200 | status = "okay"; | ||
| 201 | }; | ||
| 202 | }; | ||
| 203 | |||
| 204 | gpio_keys { | ||
| 205 | compatible = "gpio-keys"; | ||
| 206 | |||
| 207 | bp3 { | ||
| 208 | label = "PB_USER"; | ||
| 209 | gpios = <&pioE 29 GPIO_ACTIVE_LOW>; | ||
| 210 | linux,code = <0x104>; | ||
| 211 | gpio-key,wakeup; | ||
| 212 | }; | ||
| 213 | }; | ||
| 214 | |||
| 215 | leds { | ||
| 216 | compatible = "gpio-leds"; | ||
| 217 | |||
| 218 | d2 { | ||
| 219 | label = "d2"; | ||
| 220 | gpios = <&pioE 23 GPIO_ACTIVE_LOW>; /* PE23, conflicts with A23, CTS2 */ | ||
| 221 | linux,default-trigger = "heartbeat"; | ||
| 222 | }; | ||
| 223 | |||
| 224 | d3 { | ||
| 225 | label = "d3"; | ||
| 226 | gpios = <&pioE 24 GPIO_ACTIVE_HIGH>; | ||
| 227 | }; | ||
| 228 | }; | ||
| 229 | }; | ||
diff --git a/arch/arm/boot/dts/at91sam9263.dtsi b/arch/arm/boot/dts/at91sam9263.dtsi index 0042f73068b0..fece8665fb63 100644 --- a/arch/arm/boot/dts/at91sam9263.dtsi +++ b/arch/arm/boot/dts/at91sam9263.dtsi | |||
| @@ -523,7 +523,7 @@ | |||
| 523 | }; | 523 | }; |
| 524 | 524 | ||
| 525 | i2c0: i2c@fff88000 { | 525 | i2c0: i2c@fff88000 { |
| 526 | compatible = "atmel,at91sam9263-i2c"; | 526 | compatible = "atmel,at91sam9260-i2c"; |
| 527 | reg = <0xfff88000 0x100>; | 527 | reg = <0xfff88000 0x100>; |
| 528 | interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>; | 528 | interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>; |
| 529 | #address-cells = <1>; | 529 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts index e9487f6f0166..924a6a6ffd0f 100644 --- a/arch/arm/boot/dts/at91sam9n12ek.dts +++ b/arch/arm/boot/dts/at91sam9n12ek.dts | |||
| @@ -124,6 +124,10 @@ | |||
| 124 | nand-on-flash-bbt; | 124 | nand-on-flash-bbt; |
| 125 | status = "okay"; | 125 | status = "okay"; |
| 126 | }; | 126 | }; |
| 127 | |||
| 128 | usb0: ohci@00500000 { | ||
| 129 | status = "okay"; | ||
| 130 | }; | ||
| 127 | }; | 131 | }; |
| 128 | 132 | ||
| 129 | leds { | 133 | leds { |
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi index 52447c17537a..3d5faf85f51b 100644 --- a/arch/arm/boot/dts/sama5d3.dtsi +++ b/arch/arm/boot/dts/sama5d3.dtsi | |||
| @@ -1228,7 +1228,7 @@ | |||
| 1228 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; | 1228 | compatible = "atmel,at91rm9200-ohci", "usb-ohci"; |
| 1229 | reg = <0x00600000 0x100000>; | 1229 | reg = <0x00600000 0x100000>; |
| 1230 | interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>; | 1230 | interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>; |
| 1231 | clocks = <&usb>, <&uhphs_clk>, <&udphs_clk>, | 1231 | clocks = <&usb>, <&uhphs_clk>, <&uhphs_clk>, |
| 1232 | <&uhpck>; | 1232 | <&uhpck>; |
| 1233 | clock-names = "usb_clk", "ohci_clk", "hclk", "uhpck"; | 1233 | clock-names = "usb_clk", "ohci_clk", "hclk", "uhpck"; |
| 1234 | status = "disabled"; | 1234 | status = "disabled"; |
