1/* 2 * acme-acqua.dts - Device Tree file for Acqua A5 Board 3 * 4 * Copyright (C) 2014 Atmel, 5 * 2014 Nicolas Ferre <nicolas.ferre@atmel.com> 6 * 7 * 2020 Sergio Tanzilli <tanzilli@acmesystems.it> 8 * 9 * Licensed under GPLv2 or later. 10 */ 11/dts-v1/; 12#include "sama5d31.dtsi" 13 14/ { 15 model = "Acme Systems Acqua SOM"; 16 compatible = "acme,acqua", "atmel,sama5d3", "atmel,sama5"; 17 18 chosen { 19 stdout-path = "serial0:115200n8"; 20 bootargs = "mem=256M console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rw rootwait consoleblank=0"; 21 }; 22 23 memory { 24 reg = <0x20000000 0x10000000>; 25 }; 26 27 clocks { 28 slow_xtal { 29 clock-frequency = <32768>; 30 }; 31 32 main_xtal { 33 clock-frequency = <12000000>; 34 }; 35 }; 36 37 ahb { 38 apb { 39 hlcdc: hlcdc@f0030000 { 40 status = "disabled"; 41 hlcdc-display-controller { 42 pinctrl-names = "default"; 43 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888_alt>; 44 port@0 { 45 hlcdc_panel_output: endpoint@0 { 46 remote-endpoint = <&panel_input>; 47 }; 48 }; 49 }; 50 }; 51 52 /* MicroSD mounted on the SOM */ 53 54 mmc0: mmc@f0000000 { 55 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_cd>; 56 status = "okay"; 57 slot@0 { 58 reg = <0>; 59 bus-width = <4>; 60 }; 61 }; 62 63 /* Optional MicroSD to mount on the carrier board */ 64 65 mmc1: mmc@f8000000 { 66 pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>; 67 status = "disabled"; 68 slot@0 { 69 reg = <0>; 70 bus-width = <4>; 71 cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>; 72 }; 73 }; 74 75 spi0: spi@f0004000 { 76 cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>; 77 status = "disabled"; 78 }; 79 80 can0: can@f000c000 { 81 status = "disabled"; 82 }; 83 84 tcb0: timer@f0010000 { 85 timer0: timer@0 { 86 compatible = "atmel,tcb-timer"; 87 reg = <0>; 88 }; 89 90 timer1: timer@1 { 91 compatible = "atmel,tcb-timer"; 92 reg = <1>; 93 }; 94 }; 95 96 i2c0: i2c@f0014000 { 97 pinctrl-0 = <&pinctrl_i2c0_pu>; 98 status = "disabled"; 99 }; 100 101 i2c1: i2c@f0018000 { 102 status = "disabled"; 103 }; 104 105 macb1: ethernet@f802c000 { 106 compatible = "atmel,sama5d3-macb", "cdns,at91sam9260-macb", "cdns,macb"; 107 108 status = "okay"; 109 phy-mode = "rmii"; 110 #address-cells = <1>; 111 #size-cells = <0>; 112 113 nvmem-cells = <ð0_addr>; 114 nvmem-cell-names = "mac-address"; 115 116 phy0: ethernet-phy@1 { 117 interrupt-parent = <&pioE>; 118 interrupts = <30 IRQ_TYPE_EDGE_FALLING>; 119 reg = <1>; 120 }; 121 122 /*ethernet-phy@1 { 123 reg = <0x1>; 124 };*/ 125 }; 126 127 /* Bit banging internal I2C to manage the AT24MAC402 chip */ 128 129 i2c3@ { 130 compatible = "i2c-gpio"; 131 gpios = <&pioE 1 0 /* SDA */ 132 &pioE 2 0 /* SCK */ 133 >; 134 i2c-gpio,delay-us = <4>; /* ~178 kHz */ 135 #address-cells = <1>; 136 #size-cells = <0>; 137 138 /* EEPROM contains the eth0 MAC address */ 139 140 eeprom@58 { 141 compatible = "atmel,24mac402"; 142 pagesize = <256>; 143 read-only; 144 reg = <0x58>; 145 #address-cells = <1>; 146 #size-cells = <1>; 147 148 eth0_addr: eth-mac-addr@9A { 149 reg = <0x0 0x06>; 150 }; 151 }; 152 }; 153 154 pwm0: pwm@f002c000 { 155 pinctrl-names = "default"; 156 pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>; 157 status = "disabled"; 158 }; 159 160 usart0: serial@f001c000 { 161 status = "okay"; 162 }; 163 164 usart1: serial@f0020000 { 165 pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>; 166 status = "disabled"; 167 }; 168 169 uart0: serial@f0024000 { 170 status = "disabled"; 171 }; 172 173 174 spi1: spi@f8008000 { 175 cs-gpios = <&pioC 25 0>; 176 status = "disabled"; 177 }; 178 179 adc0: adc@f8018000 { 180 atmel,adc-vref = <3300>; 181 atmel,adc-channels-used = <0xfe>; 182 pinctrl-0 = < 183 &pinctrl_adc0_adtrg 184 &pinctrl_adc0_ad1 185 &pinctrl_adc0_ad2 186 &pinctrl_adc0_ad3 187 &pinctrl_adc0_ad4 188 &pinctrl_adc0_ad5 189 &pinctrl_adc0_ad6 190 &pinctrl_adc0_ad7 191 >; 192 status = "disabled"; 193 }; 194 195 i2c2: i2c@f801c000 { 196 dmas = <0>, <0>; /* Do not use DMA for i2c2 */ 197 pinctrl-0 = <&pinctrl_i2c2_pu>; 198 status = "disabled"; 199 }; 200 201 202 dbgu: serial@ffffee00 { 203 status = "okay"; 204 }; 205 206 pinctrl@fffff200 { 207 board { 208 pinctrl_i2c0_pu: i2c0_pu { 209 atmel,pins = 210 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>, 211 <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; 212 }; 213 214 pinctrl_i2c2_pu: i2c2_pu { 215 atmel,pins = 216 <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>, 217 <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; 218 }; 219 220 pinctrl_key_gpio: key_gpio_0 { 221 atmel,pins = 222 <AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 223 }; 224 225 pinctrl_mmc0_cd: mmc0_cd { 226 atmel,pins = 227 <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 228 }; 229 230 pinctrl_mmc1_cd: mmc1_cd { 231 atmel,pins = 232 <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 233 }; 234 235 pinctrl_usba_vbus: usba_vbus { 236 atmel,pins = 237 <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PE9, conflicts with A9 */ 238 }; 239 }; 240 }; 241 }; 242 243 usb0: gadget@500000 { 244 status = "okay"; 245 }; 246 247 usb1: ohci@600000 { 248 status = "okay"; 249 }; 250 251 usb2: ehci@700000 { 252 status = "okay"; 253 }; 254 255 }; 256 257 258 panel: panel { 259 /* compatible = "acme,43inch", "simple-panel"; */ 260 compatible = "acme,50inch", "simple-panel"; 261 /* compatible = "acme,70inch", "simple-panel"; */ 262 263 status = "disable"; 264 265 port@0 { 266 panel_input: endpoint@0 { 267 remote-endpoint = <&hlcdc_panel_output>; 268 }; 269 }; 270 }; 271 272 273 leds { 274 compatible = "gpio-leds"; 275 276 led0 { 277 label = "led0"; 278 gpios = <&pioE 3 GPIO_ACTIVE_LOW>; 279 default-state = "off"; 280 }; 281 282 led1 { 283 label = "led1"; 284 gpios = <&pioE 4 GPIO_ACTIVE_LOW>; 285 default-state = "off"; 286 }; 287 288 led2 { 289 label = "led2"; 290 gpios = <&pioE 5 GPIO_ACTIVE_LOW>; 291 linux,default-trigger = "heartbeat"; 292 }; 293 294 led3 { 295 label = "led3"; 296 gpios = <&pioE 6 GPIO_ACTIVE_LOW>; 297 linux,default-trigger = "mmc0"; 298 default-state = "off"; 299 }; 300 }; 301}; 302