1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 /* 2 /* 3 * at91-sama5d29_curiosity.dts - Device Tree f 3 * at91-sama5d29_curiosity.dts - Device Tree file for SAMA5D29 Curiosity board 4 * 4 * 5 * Copyright (C) 2023 Microchip Technology Inc 5 * Copyright (C) 2023 Microchip Technology Inc. and its subsidiaries 6 * 6 * 7 * Author: Mihai Sain <mihai.sain@microchip.com 7 * Author: Mihai Sain <mihai.sain@microchip.com> 8 * 8 * 9 */ 9 */ 10 /dts-v1/; 10 /dts-v1/; 11 #include "sama5d29.dtsi" 11 #include "sama5d29.dtsi" 12 #include "sama5d2-pinfunc.h" 12 #include "sama5d2-pinfunc.h" 13 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/input/input.h> 14 #include <dt-bindings/input/input.h> 15 #include <dt-bindings/mfd/atmel-flexcom.h> 15 #include <dt-bindings/mfd/atmel-flexcom.h> 16 16 17 / { 17 / { 18 model = "Microchip SAMA5D29 Curiosity" 18 model = "Microchip SAMA5D29 Curiosity"; 19 compatible = "microchip,sama5d29-curio 19 compatible = "microchip,sama5d29-curiosity", "atmel,sama5d29", "atmel,sama5d2", "atmel,sama5"; 20 20 21 aliases { 21 aliases { 22 serial0 = &uart0; // deb 22 serial0 = &uart0; // debug 23 serial1 = &uart1; // RPi 23 serial1 = &uart1; // RPi 24 serial2 = &uart3; // mik 24 serial2 = &uart3; // mikro BUS 2 25 serial3 = &uart4; // mik 25 serial3 = &uart4; // mikro BUS 1 26 serial4 = &uart6; // flx 26 serial4 = &uart6; // flx1 Bluetooth 27 i2c0 = &i2c0; 27 i2c0 = &i2c0; 28 i2c1 = &i2c1; 28 i2c1 = &i2c1; 29 }; 29 }; 30 30 31 chosen { 31 chosen { 32 bootargs = "console=ttyS0,1152 32 bootargs = "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait"; 33 stdout-path = "serial0:115200n 33 stdout-path = "serial0:115200n8"; 34 }; 34 }; 35 35 36 clocks { 36 clocks { 37 slow_xtal { 37 slow_xtal { 38 clock-frequency = <327 38 clock-frequency = <32768>; 39 }; 39 }; 40 40 41 main_xtal { 41 main_xtal { 42 clock-frequency = <240 42 clock-frequency = <24000000>; 43 }; 43 }; 44 }; 44 }; 45 45 46 gpio-keys { 46 gpio-keys { 47 compatible = "gpio-keys"; 47 compatible = "gpio-keys"; 48 48 49 pinctrl-names = "default"; 49 pinctrl-names = "default"; 50 pinctrl-0 = <&pinctrl_key_gpio 50 pinctrl-0 = <&pinctrl_key_gpio_default>; 51 51 52 button-1 { 52 button-1 { 53 label = "USER BUTTON"; 53 label = "USER BUTTON"; 54 gpios = <&pioA PIN_PA1 54 gpios = <&pioA PIN_PA17 GPIO_ACTIVE_LOW>; 55 linux,code = <KEY_PROG 55 linux,code = <KEY_PROG1>; 56 wakeup-source; 56 wakeup-source; 57 }; 57 }; 58 }; 58 }; 59 59 60 leds { 60 leds { 61 compatible = "gpio-leds"; 61 compatible = "gpio-leds"; 62 pinctrl-names = "default"; 62 pinctrl-names = "default"; 63 pinctrl-0 = <&pinctrl_led_gpio 63 pinctrl-0 = <&pinctrl_led_gpio_default>; 64 status = "okay"; 64 status = "okay"; 65 65 66 led-red { 66 led-red { 67 label = "red"; 67 label = "red"; 68 gpios = <&pioA PIN_PA7 68 gpios = <&pioA PIN_PA7 GPIO_ACTIVE_HIGH>; 69 }; 69 }; 70 70 71 led-green { 71 led-green { 72 label = "green"; 72 label = "green"; 73 gpios = <&pioA PIN_PA8 73 gpios = <&pioA PIN_PA8 GPIO_ACTIVE_HIGH>; 74 }; 74 }; 75 75 76 led-blue { 76 led-blue { 77 label = "blue"; 77 label = "blue"; 78 gpios = <&pioA PIN_PA9 78 gpios = <&pioA PIN_PA9 GPIO_ACTIVE_HIGH>; 79 linux,default-trigger 79 linux,default-trigger = "heartbeat"; 80 }; 80 }; 81 }; 81 }; 82 82 83 memory@20000000 { 83 memory@20000000 { 84 device_type = "memory"; 84 device_type = "memory"; 85 reg = <0x20000000 0x20000000>; 85 reg = <0x20000000 0x20000000>; 86 }; 86 }; 87 87 88 reg_5v: regulator-5v { 88 reg_5v: regulator-5v { 89 compatible = "regulator-fixed" 89 compatible = "regulator-fixed"; 90 regulator-name = "5V_MAIN"; 90 regulator-name = "5V_MAIN"; 91 regulator-min-microvolt = <500 91 regulator-min-microvolt = <5000000>; 92 regulator-max-microvolt = <500 92 regulator-max-microvolt = <5000000>; 93 regulator-always-on; 93 regulator-always-on; 94 }; 94 }; 95 }; 95 }; 96 96 97 &adc { 97 &adc { 98 vddana-supply = <&vdd_3v3>; 98 vddana-supply = <&vdd_3v3>; 99 vref-supply = <&vdd_3v3>; 99 vref-supply = <&vdd_3v3>; 100 pinctrl-names = "default"; 100 pinctrl-names = "default"; 101 pinctrl-0 = <&pinctrl_adc_default &pin 101 pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>; 102 status = "okay"; 102 status = "okay"; 103 }; 103 }; 104 104 105 &can0 { 105 &can0 { 106 pinctrl-names = "default"; 106 pinctrl-names = "default"; 107 pinctrl-0 = <&pinctrl_can0_default>; 107 pinctrl-0 = <&pinctrl_can0_default>; 108 status = "okay"; 108 status = "okay"; 109 }; 109 }; 110 110 111 &can1 { 111 &can1 { 112 pinctrl-names = "default"; 112 pinctrl-names = "default"; 113 pinctrl-0 = <&pinctrl_can1_default>; 113 pinctrl-0 = <&pinctrl_can1_default>; 114 status = "okay"; 114 status = "okay"; 115 }; 115 }; 116 116 117 &flx1 { 117 &flx1 { 118 atmel,flexcom-mode = <ATMEL_FLEXCOM_MO 118 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; 119 status = "okay"; 119 status = "okay"; 120 120 121 uart6: serial@200 { 121 uart6: serial@200 { 122 pinctrl-0 = <&pinctrl_flx1_def 122 pinctrl-0 = <&pinctrl_flx1_default>; 123 pinctrl-names = "default"; 123 pinctrl-names = "default"; 124 atmel,use-dma-rx; 124 atmel,use-dma-rx; 125 atmel,use-dma-tx; 125 atmel,use-dma-tx; 126 status = "okay"; 126 status = "okay"; 127 }; 127 }; 128 }; 128 }; 129 129 130 &flx4 { 130 &flx4 { 131 atmel,flexcom-mode = <ATMEL_FLEXCOM_MO 131 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>; 132 status = "okay"; 132 status = "okay"; 133 133 134 spi6: spi@400 { 134 spi6: spi@400 { 135 dmas = <0>, <0>; 135 dmas = <0>, <0>; 136 pinctrl-names = "default"; 136 pinctrl-names = "default"; 137 pinctrl-0 = <&pinctrl_rpi_spi> 137 pinctrl-0 = <&pinctrl_rpi_spi>; 138 status = "okay"; 138 status = "okay"; 139 }; 139 }; 140 }; 140 }; 141 141 142 &i2c0 { 142 &i2c0 { 143 dmas = <0>, <0>; 143 dmas = <0>, <0>; 144 pinctrl-names = "default", "gpio"; 144 pinctrl-names = "default", "gpio"; 145 pinctrl-0 = <&pinctrl_i2c0_default>; 145 pinctrl-0 = <&pinctrl_i2c0_default>; 146 pinctrl-1 = <&pinctrl_i2c0_gpio>; 146 pinctrl-1 = <&pinctrl_i2c0_gpio>; 147 sda-gpios = <&pioA PIN_PB31 GPIO_ACTIV 147 sda-gpios = <&pioA PIN_PB31 GPIO_ACTIVE_HIGH>; 148 scl-gpios = <&pioA PIN_PC0 (GPIO_ACTIV 148 scl-gpios = <&pioA PIN_PC0 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 149 i2c-sda-hold-time-ns = <350>; 149 i2c-sda-hold-time-ns = <350>; 150 status = "okay"; 150 status = "okay"; 151 151 152 mcp16502@5b { 152 mcp16502@5b { 153 compatible = "microchip,mcp165 153 compatible = "microchip,mcp16502"; 154 reg = <0x5b>; 154 reg = <0x5b>; 155 lvin-supply = <®_5v>; 155 lvin-supply = <®_5v>; 156 pvin1-supply = <®_5v>; 156 pvin1-supply = <®_5v>; 157 pvin2-supply = <®_5v>; 157 pvin2-supply = <®_5v>; 158 pvin3-supply = <®_5v>; 158 pvin3-supply = <®_5v>; 159 pvin4-supply = <®_5v>; 159 pvin4-supply = <®_5v>; 160 status = "okay"; 160 status = "okay"; 161 lpm-gpios = <&pioBU 0 GPIO_ACT 161 lpm-gpios = <&pioBU 0 GPIO_ACTIVE_LOW>; 162 162 163 regulators { 163 regulators { 164 vdd_3v3: VDD_IO { 164 vdd_3v3: VDD_IO { 165 regulator-name 165 regulator-name = "VDD_IO"; 166 regulator-min- 166 regulator-min-microvolt = <3300000>; 167 regulator-max- 167 regulator-max-microvolt = <3300000>; 168 regulator-init 168 regulator-initial-mode = <2>; 169 regulator-allo 169 regulator-allowed-modes = <2>, <4>; 170 regulator-alwa 170 regulator-always-on; 171 171 172 regulator-stat 172 regulator-state-standby { 173 regula 173 regulator-on-in-suspend; 174 regula 174 regulator-mode = <4>; 175 }; 175 }; 176 176 177 regulator-stat 177 regulator-state-mem { 178 regula 178 regulator-off-in-suspend; 179 regula 179 regulator-mode = <4>; 180 }; 180 }; 181 }; 181 }; 182 182 183 vddio_ddr: VDD_DDR { 183 vddio_ddr: VDD_DDR { 184 regulator-name 184 regulator-name = "VDD_DDR"; 185 regulator-min- 185 regulator-min-microvolt = <1200000>; 186 regulator-max- 186 regulator-max-microvolt = <1200000>; 187 regulator-init 187 regulator-initial-mode = <2>; 188 regulator-allo 188 regulator-allowed-modes = <2>, <4>; 189 regulator-alwa 189 regulator-always-on; 190 190 191 regulator-stat 191 regulator-state-standby { 192 regula 192 regulator-on-in-suspend; 193 regula 193 regulator-suspend-microvolt = <1200000>; 194 regula 194 regulator-changeable-in-suspend; 195 regula 195 regulator-mode = <4>; 196 }; 196 }; 197 197 198 regulator-stat 198 regulator-state-mem { 199 regula 199 regulator-on-in-suspend; 200 regula 200 regulator-suspend-microvolt = <1200000>; 201 regula 201 regulator-changeable-in-suspend; 202 regula 202 regulator-mode = <4>; 203 }; 203 }; 204 }; 204 }; 205 205 206 vdd_core: VDD_CORE { 206 vdd_core: VDD_CORE { 207 regulator-name 207 regulator-name = "VDD_CORE"; 208 regulator-min- 208 regulator-min-microvolt = <1250000>; 209 regulator-max- 209 regulator-max-microvolt = <1250000>; 210 regulator-init 210 regulator-initial-mode = <2>; 211 regulator-allo 211 regulator-allowed-modes = <2>, <4>; 212 regulator-alwa 212 regulator-always-on; 213 213 214 regulator-stat 214 regulator-state-standby { 215 regula 215 regulator-on-in-suspend; 216 regula 216 regulator-mode = <4>; 217 }; 217 }; 218 218 219 regulator-stat 219 regulator-state-mem { 220 regula 220 regulator-off-in-suspend; 221 regula 221 regulator-mode = <4>; 222 }; 222 }; 223 }; 223 }; 224 224 225 vdd_ddr: VDD_OTHER { 225 vdd_ddr: VDD_OTHER { 226 regulator-name 226 regulator-name = "VDD_OTHER"; 227 regulator-min- 227 regulator-min-microvolt = <1800000>; 228 regulator-max- 228 regulator-max-microvolt = <1800000>; 229 regulator-init 229 regulator-initial-mode = <2>; 230 regulator-allo 230 regulator-allowed-modes = <2>, <4>; 231 regulator-alwa 231 regulator-always-on; 232 232 233 regulator-stat 233 regulator-state-standby { 234 regula 234 regulator-on-in-suspend; 235 regula 235 regulator-suspend-microvolt = <1800000>; 236 regula 236 regulator-changeable-in-suspend; 237 regula 237 regulator-mode = <4>; 238 }; 238 }; 239 239 240 regulator-stat 240 regulator-state-mem { 241 regula 241 regulator-on-in-suspend; 242 regula 242 regulator-suspend-microvolt = <1800000>; 243 regula 243 regulator-changeable-in-suspend; 244 regula 244 regulator-mode = <4>; 245 }; 245 }; 246 }; 246 }; 247 247 248 LDO1 { 248 LDO1 { 249 regulator-name 249 regulator-name = "LDO1"; 250 regulator-min- 250 regulator-min-microvolt = <2500000>; 251 regulator-max- 251 regulator-max-microvolt = <2500000>; 252 regulator-alwa 252 regulator-always-on; 253 253 254 regulator-stat 254 regulator-state-standby { 255 regula 255 regulator-on-in-suspend; 256 }; 256 }; 257 257 258 regulator-stat 258 regulator-state-mem { 259 regula 259 regulator-off-in-suspend; 260 }; 260 }; 261 }; 261 }; 262 262 263 LDO2 { 263 LDO2 { 264 regulator-name 264 regulator-name = "LDO2"; 265 regulator-min- 265 regulator-min-microvolt = <3300000>; 266 regulator-max- 266 regulator-max-microvolt = <3300000>; 267 regulator-alwa 267 regulator-always-on; 268 268 269 regulator-stat 269 regulator-state-standby { 270 regula 270 regulator-on-in-suspend; 271 }; 271 }; 272 272 273 regulator-stat 273 regulator-state-mem { 274 regula 274 regulator-off-in-suspend; 275 }; 275 }; 276 }; 276 }; 277 }; 277 }; 278 }; 278 }; 279 }; 279 }; 280 280 281 &i2c1 { 281 &i2c1 { 282 dmas = <0>, <0>; 282 dmas = <0>, <0>; 283 pinctrl-names = "default", "gpio"; 283 pinctrl-names = "default", "gpio"; 284 pinctrl-0 = <&pinctrl_i2c1_default>; 284 pinctrl-0 = <&pinctrl_i2c1_default>; 285 pinctrl-1 = <&pinctrl_i2c1_gpio>; 285 pinctrl-1 = <&pinctrl_i2c1_gpio>; 286 i2c-analog-filter; 286 i2c-analog-filter; 287 i2c-digital-filter; 287 i2c-digital-filter; 288 i2c-digital-filter-width-ns = <35>; 288 i2c-digital-filter-width-ns = <35>; 289 sda-gpios = <&pioA PIN_PD4 GPIO_ACTIVE 289 sda-gpios = <&pioA PIN_PD4 GPIO_ACTIVE_HIGH>; 290 scl-gpios = <&pioA PIN_PD5 (GPIO_ACTIV 290 scl-gpios = <&pioA PIN_PD5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 291 status = "okay"; 291 status = "okay"; 292 }; 292 }; 293 293 294 &pioA { 294 &pioA { 295 pinctrl_adc_default: adc-default { 295 pinctrl_adc_default: adc-default { 296 pinmux = <PIN_PD25__GPIO>, 296 pinmux = <PIN_PD25__GPIO>, 297 <PIN_PD26__GPIO>; 297 <PIN_PD26__GPIO>; 298 bias-disable; 298 bias-disable; 299 }; 299 }; 300 300 301 pinctrl_adtrg_default: adtrg-default { 301 pinctrl_adtrg_default: adtrg-default { 302 pinmux = <PIN_PD31__ADTRG>; 302 pinmux = <PIN_PD31__ADTRG>; 303 bias-pull-up; 303 bias-pull-up; 304 }; 304 }; 305 305 306 pinctrl_can0_default: can0-default { 306 pinctrl_can0_default: can0-default { 307 pinmux = <PIN_PC10__CANTX0>, 307 pinmux = <PIN_PC10__CANTX0>, 308 <PIN_PC11__CANRX0>; 308 <PIN_PC11__CANRX0>; 309 bias-disable; 309 bias-disable; 310 }; 310 }; 311 311 312 pinctrl_can1_default: can1-default { 312 pinctrl_can1_default: can1-default { 313 pinmux = <PIN_PC26__CANTX1>, 313 pinmux = <PIN_PC26__CANTX1>, 314 <PIN_PC27__CANRX1>; 314 <PIN_PC27__CANRX1>; 315 bias-disable; 315 bias-disable; 316 }; 316 }; 317 317 318 pinctrl_debug_uart: debug-uart { 318 pinctrl_debug_uart: debug-uart { 319 pinmux = <PIN_PB26__URXD0>, 319 pinmux = <PIN_PB26__URXD0>, 320 <PIN_PB27__UTXD0>; 320 <PIN_PB27__UTXD0>; 321 bias-disable; 321 bias-disable; 322 }; 322 }; 323 323 324 pinctrl_flx1_default: flx1-default { 324 pinctrl_flx1_default: flx1-default { 325 pinmux = <PIN_PA24__FLEXCOM1_I 325 pinmux = <PIN_PA24__FLEXCOM1_IO0>, 326 <PIN_PA23__FLEXCOM1_I 326 <PIN_PA23__FLEXCOM1_IO1>, 327 <PIN_PA25__FLEXCOM1_I 327 <PIN_PA25__FLEXCOM1_IO3>, 328 <PIN_PA26__FLEXCOM1_I 328 <PIN_PA26__FLEXCOM1_IO4>; 329 bias-disable; 329 bias-disable; 330 }; 330 }; 331 331 332 pinctrl_i2c0_default: i2c0-default { 332 pinctrl_i2c0_default: i2c0-default { 333 pinmux = <PIN_PB31__TWD0>, 333 pinmux = <PIN_PB31__TWD0>, 334 <PIN_PC0__TWCK0>; 334 <PIN_PC0__TWCK0>; 335 bias-disable; 335 bias-disable; 336 }; 336 }; 337 337 338 pinctrl_i2c0_gpio: i2c0-gpio-default { 338 pinctrl_i2c0_gpio: i2c0-gpio-default { 339 pinmux = <PIN_PB31__GPIO>, 339 pinmux = <PIN_PB31__GPIO>, 340 <PIN_PC0__GPIO>; 340 <PIN_PC0__GPIO>; 341 bias-disable; 341 bias-disable; 342 }; 342 }; 343 343 344 pinctrl_i2c1_default: i2c1-default { 344 pinctrl_i2c1_default: i2c1-default { 345 pinmux = <PIN_PD4__TWD1>, 345 pinmux = <PIN_PD4__TWD1>, 346 <PIN_PD5__TWCK1>; 346 <PIN_PD5__TWCK1>; 347 bias-disable; 347 bias-disable; 348 }; 348 }; 349 349 350 pinctrl_i2c1_gpio: i2c1-gpio-default { 350 pinctrl_i2c1_gpio: i2c1-gpio-default { 351 pinmux = <PIN_PD4__GPIO>, 351 pinmux = <PIN_PD4__GPIO>, 352 <PIN_PD5__GPIO>; 352 <PIN_PD5__GPIO>; 353 bias-disable; 353 bias-disable; 354 }; 354 }; 355 355 356 pinctrl_key_gpio_default: key-gpio-def 356 pinctrl_key_gpio_default: key-gpio-default { 357 pinmux = <PIN_PA17__GPIO>; 357 pinmux = <PIN_PA17__GPIO>; 358 bias-pull-up; 358 bias-pull-up; 359 }; 359 }; 360 360 361 pinctrl_led_gpio_default: led-gpio-def 361 pinctrl_led_gpio_default: led-gpio-default { 362 pinmux = <PIN_PA7__GPIO>, 362 pinmux = <PIN_PA7__GPIO>, 363 <PIN_PA8__GPIO>, 363 <PIN_PA8__GPIO>, 364 <PIN_PA9__GPIO>; 364 <PIN_PA9__GPIO>; 365 bias-pull-up; 365 bias-pull-up; 366 }; 366 }; 367 367 368 pinctrl_mikrobus1_pwm: mikrobus1-pwm { 368 pinctrl_mikrobus1_pwm: mikrobus1-pwm { 369 pinmux = <PIN_PA31__PWML0>; 369 pinmux = <PIN_PA31__PWML0>; 370 bias-disable; 370 bias-disable; 371 }; 371 }; 372 372 373 pinctrl_mikrobus2_pwm: mikrobus2-pwm { 373 pinctrl_mikrobus2_pwm: mikrobus2-pwm { 374 pinmux = <PIN_PB0__PWMH1>; 374 pinmux = <PIN_PB0__PWMH1>; 375 bias-disable; 375 bias-disable; 376 }; 376 }; 377 377 378 pinctrl_mikrobus1_uart: mikrobus1-uart 378 pinctrl_mikrobus1_uart: mikrobus1-uart { 379 pinmux = <PIN_PB3__URXD4>, 379 pinmux = <PIN_PB3__URXD4>, 380 <PIN_PB4__UTXD4>; 380 <PIN_PB4__UTXD4>; 381 bias-disable; 381 bias-disable; 382 }; 382 }; 383 383 384 pinctrl_mikrobus2_uart: mikrobus2-uart 384 pinctrl_mikrobus2_uart: mikrobus2-uart { 385 pinmux = <PIN_PB11__URXD3>, 385 pinmux = <PIN_PB11__URXD3>, 386 <PIN_PB12__UTXD3>; 386 <PIN_PB12__UTXD3>; 387 bias-disable; 387 bias-disable; 388 }; 388 }; 389 389 390 pinctrl_qspi1_default: qspi1-default { 390 pinctrl_qspi1_default: qspi1-default { 391 pinmux = <PIN_PB5__QSPI1_SCK>, 391 pinmux = <PIN_PB5__QSPI1_SCK>, 392 <PIN_PB6__QSPI1_CS>, 392 <PIN_PB6__QSPI1_CS>, 393 <PIN_PB7__QSPI1_IO0>, 393 <PIN_PB7__QSPI1_IO0>, 394 <PIN_PB8__QSPI1_IO1>, 394 <PIN_PB8__QSPI1_IO1>, 395 <PIN_PB9__QSPI1_IO2>, 395 <PIN_PB9__QSPI1_IO2>, 396 <PIN_PB10__QSPI1_IO3> 396 <PIN_PB10__QSPI1_IO3>; 397 bias-disable; 397 bias-disable; 398 }; 398 }; 399 399 400 pinctrl_rpi_spi: rpi-spi { 400 pinctrl_rpi_spi: rpi-spi { 401 pinmux = <PIN_PD12__FLEXCOM4_I 401 pinmux = <PIN_PD12__FLEXCOM4_IO0>, 402 <PIN_PD13__FLEXCOM4_I 402 <PIN_PD13__FLEXCOM4_IO1>, 403 <PIN_PD14__FLEXCOM4_I 403 <PIN_PD14__FLEXCOM4_IO2>, 404 <PIN_PD15__FLEXCOM4_I 404 <PIN_PD15__FLEXCOM4_IO3>, 405 <PIN_PD16__FLEXCOM4_I 405 <PIN_PD16__FLEXCOM4_IO4>; 406 bias-disable; 406 bias-disable; 407 }; 407 }; 408 408 409 pinctrl_rpi_uart: rpi-uart { 409 pinctrl_rpi_uart: rpi-uart { 410 pinmux = <PIN_PD2__URXD1>, 410 pinmux = <PIN_PD2__URXD1>, 411 <PIN_PD3__UTXD1>; 411 <PIN_PD3__UTXD1>; 412 bias-disable; 412 bias-disable; 413 }; 413 }; 414 414 415 pinctrl_sdmmc0_default: sdmmc0-default 415 pinctrl_sdmmc0_default: sdmmc0-default { 416 pinmux = <PIN_PA0__SDMMC0_CK>, 416 pinmux = <PIN_PA0__SDMMC0_CK>, 417 <PIN_PA1__SDMMC0_CMD> 417 <PIN_PA1__SDMMC0_CMD>, 418 <PIN_PA2__SDMMC0_DAT0 418 <PIN_PA2__SDMMC0_DAT0>, 419 <PIN_PA3__SDMMC0_DAT1 419 <PIN_PA3__SDMMC0_DAT1>, 420 <PIN_PA4__SDMMC0_DAT2 420 <PIN_PA4__SDMMC0_DAT2>, 421 <PIN_PA5__SDMMC0_DAT3 421 <PIN_PA5__SDMMC0_DAT3>, 422 <PIN_PA11__SDMMC0_VDD 422 <PIN_PA11__SDMMC0_VDDSEL>, 423 <PIN_PA13__SDMMC0_CD> 423 <PIN_PA13__SDMMC0_CD>; 424 bias-disable; 424 bias-disable; 425 }; 425 }; 426 426 427 pinctrl_sdmmc1_default: sdmmc1-default 427 pinctrl_sdmmc1_default: sdmmc1-default { 428 pinmux = <PIN_PA18__SDMMC1_DAT 428 pinmux = <PIN_PA18__SDMMC1_DAT0>, 429 <PIN_PA19__SDMMC1_DAT 429 <PIN_PA19__SDMMC1_DAT1>, 430 <PIN_PA20__SDMMC1_DAT 430 <PIN_PA20__SDMMC1_DAT2>, 431 <PIN_PA21__SDMMC1_DAT 431 <PIN_PA21__SDMMC1_DAT3>, 432 <PIN_PA22__SDMMC1_CK> 432 <PIN_PA22__SDMMC1_CK>, 433 <PIN_PA28__SDMMC1_CMD 433 <PIN_PA28__SDMMC1_CMD>, 434 <PIN_PA30__SDMMC1_CD> 434 <PIN_PA30__SDMMC1_CD>; 435 bias-disable; 435 bias-disable; 436 }; 436 }; 437 437 438 pinctrl_spi1_default: spi1-default { 438 pinctrl_spi1_default: spi1-default { 439 pinmux = <PIN_PC1__SPI1_SPCK>, 439 pinmux = <PIN_PC1__SPI1_SPCK>, 440 <PIN_PC2__SPI1_MOSI>, 440 <PIN_PC2__SPI1_MOSI>, 441 <PIN_PC3__SPI1_MISO>, 441 <PIN_PC3__SPI1_MISO>, 442 <PIN_PC4__SPI1_NPCS0> 442 <PIN_PC4__SPI1_NPCS0>, 443 <PIN_PC5__SPI1_NPCS1> 443 <PIN_PC5__SPI1_NPCS1>, 444 <PIN_PC6__SPI1_NPCS2> 444 <PIN_PC6__SPI1_NPCS2>, 445 <PIN_PC7__SPI1_NPCS3> 445 <PIN_PC7__SPI1_NPCS3>; 446 bias-disable; 446 bias-disable; 447 }; 447 }; 448 448 449 pinctrl_usb_default: usb-default { 449 pinctrl_usb_default: usb-default { 450 pinmux = <PIN_PA6__GPIO>; 450 pinmux = <PIN_PA6__GPIO>; 451 bias-disable; 451 bias-disable; 452 }; 452 }; 453 453 454 pinctrl_usba_vbus: usba-vbus { 454 pinctrl_usba_vbus: usba-vbus { 455 pinmux = <PIN_PB13__GPIO>; 455 pinmux = <PIN_PB13__GPIO>; 456 bias-disable; 456 bias-disable; 457 }; 457 }; 458 }; 458 }; 459 459 460 &pwm0 { 460 &pwm0 { 461 pinctrl-names = "default"; 461 pinctrl-names = "default"; 462 pinctrl-0 = <&pinctrl_mikrobus1_pwm &p 462 pinctrl-0 = <&pinctrl_mikrobus1_pwm &pinctrl_mikrobus2_pwm>; 463 status = "okay"; 463 status = "okay"; 464 }; 464 }; 465 465 466 &qspi1 { 466 &qspi1 { 467 pinctrl-names = "default"; 467 pinctrl-names = "default"; 468 pinctrl-0 = <&pinctrl_qspi1_default>; 468 pinctrl-0 = <&pinctrl_qspi1_default>; 469 status = "okay"; 469 status = "okay"; 470 470 471 flash@0 { 471 flash@0 { 472 #address-cells = <1>; 472 #address-cells = <1>; 473 #size-cells = <1>; 473 #size-cells = <1>; 474 compatible = "jedec,spi-nor"; 474 compatible = "jedec,spi-nor"; 475 reg = <0>; 475 reg = <0>; 476 spi-max-frequency = <80000000> 476 spi-max-frequency = <80000000>; 477 spi-tx-bus-width = <4>; 477 spi-tx-bus-width = <4>; 478 spi-rx-bus-width = <4>; 478 spi-rx-bus-width = <4>; 479 m25p,fast-read; 479 m25p,fast-read; 480 label = "atmel_qspi1"; 480 label = "atmel_qspi1"; 481 status = "okay"; 481 status = "okay"; 482 482 483 at91bootstrap@0 { 483 at91bootstrap@0 { 484 label = "at91bootstrap 484 label = "at91bootstrap"; 485 reg = <0x0 0x40000>; 485 reg = <0x0 0x40000>; 486 }; 486 }; 487 487 488 bootloader@40000 { 488 bootloader@40000 { 489 label = "bootloader"; 489 label = "bootloader"; 490 reg = <0x40000 0xc0000 490 reg = <0x40000 0xc0000>; 491 }; 491 }; 492 492 493 bootloaderenvred@100000 { 493 bootloaderenvred@100000 { 494 label = "bootloader en 494 label = "bootloader env redundant"; 495 reg = <0x100000 0x4000 495 reg = <0x100000 0x40000>; 496 }; 496 }; 497 497 498 bootloaderenv@140000 { 498 bootloaderenv@140000 { 499 label = "bootloader en 499 label = "bootloader env"; 500 reg = <0x140000 0x4000 500 reg = <0x140000 0x40000>; 501 }; 501 }; 502 502 503 dtb@180000 { 503 dtb@180000 { 504 label = "device tree"; 504 label = "device tree"; 505 reg = <0x180000 0x8000 505 reg = <0x180000 0x80000>; 506 }; 506 }; 507 507 508 kernel@200000 { 508 kernel@200000 { 509 label = "kernel"; 509 label = "kernel"; 510 reg = <0x200000 0x6000 510 reg = <0x200000 0x600000>; 511 }; 511 }; 512 }; 512 }; 513 }; 513 }; 514 514 515 &sdmmc0 { 515 &sdmmc0 { 516 bus-width = <4>; 516 bus-width = <4>; 517 pinctrl-names = "default"; 517 pinctrl-names = "default"; 518 pinctrl-0 = <&pinctrl_sdmmc0_default>; 518 pinctrl-0 = <&pinctrl_sdmmc0_default>; 519 disable-wp; 519 disable-wp; 520 status = "okay"; 520 status = "okay"; 521 }; 521 }; 522 522 523 &sdmmc1 { 523 &sdmmc1 { 524 bus-width = <4>; 524 bus-width = <4>; 525 pinctrl-names = "default"; 525 pinctrl-names = "default"; 526 pinctrl-0 = <&pinctrl_sdmmc1_default>; 526 pinctrl-0 = <&pinctrl_sdmmc1_default>; 527 disable-wp; 527 disable-wp; 528 status = "okay"; 528 status = "okay"; 529 }; 529 }; 530 530 531 &shutdown_controller { 531 &shutdown_controller { 532 debounce-delay-us = <976>; 532 debounce-delay-us = <976>; 533 atmel,wakeup-rtc-timer; 533 atmel,wakeup-rtc-timer; 534 534 535 input@0 { 535 input@0 { 536 reg = <0>; 536 reg = <0>; 537 }; 537 }; 538 }; 538 }; 539 539 540 &spi1 { 540 &spi1 { 541 pinctrl-names = "default"; 541 pinctrl-names = "default"; 542 pinctrl-0 = <&pinctrl_spi1_default>; 542 pinctrl-0 = <&pinctrl_spi1_default>; 543 status = "okay"; 543 status = "okay"; 544 }; 544 }; 545 545 546 &tcb0 { 546 &tcb0 { 547 timer0: timer@0 { 547 timer0: timer@0 { 548 compatible = "atmel,tcb-timer" 548 compatible = "atmel,tcb-timer"; 549 reg = <0>; 549 reg = <0>; 550 }; 550 }; 551 551 552 timer1: timer@1 { 552 timer1: timer@1 { 553 compatible = "atmel,tcb-timer" 553 compatible = "atmel,tcb-timer"; 554 reg = <1>; 554 reg = <1>; 555 }; 555 }; 556 }; 556 }; 557 557 558 &uart0 { 558 &uart0 { 559 pinctrl-names = "default"; 559 pinctrl-names = "default"; 560 pinctrl-0 = <&pinctrl_debug_uart>; 560 pinctrl-0 = <&pinctrl_debug_uart>; 561 atmel,use-dma-rx; 561 atmel,use-dma-rx; 562 atmel,use-dma-tx; 562 atmel,use-dma-tx; 563 status = "okay"; 563 status = "okay"; 564 }; 564 }; 565 565 566 &uart1 { 566 &uart1 { 567 pinctrl-names = "default"; 567 pinctrl-names = "default"; 568 pinctrl-0 = <&pinctrl_rpi_uart>; 568 pinctrl-0 = <&pinctrl_rpi_uart>; 569 atmel,use-dma-rx; 569 atmel,use-dma-rx; 570 atmel,use-dma-tx; 570 atmel,use-dma-tx; 571 status = "okay"; 571 status = "okay"; 572 }; 572 }; 573 573 574 &uart3 { 574 &uart3 { 575 pinctrl-names = "default"; 575 pinctrl-names = "default"; 576 pinctrl-0 = <&pinctrl_mikrobus2_uart>; 576 pinctrl-0 = <&pinctrl_mikrobus2_uart>; 577 atmel,use-dma-rx; 577 atmel,use-dma-rx; 578 atmel,use-dma-tx; 578 atmel,use-dma-tx; 579 status = "okay"; 579 status = "okay"; 580 }; 580 }; 581 581 582 &uart4 { 582 &uart4 { 583 pinctrl-names = "default"; 583 pinctrl-names = "default"; 584 pinctrl-0 = <&pinctrl_mikrobus1_uart>; 584 pinctrl-0 = <&pinctrl_mikrobus1_uart>; 585 atmel,use-dma-rx; 585 atmel,use-dma-rx; 586 atmel,use-dma-tx; 586 atmel,use-dma-tx; 587 status = "okay"; 587 status = "okay"; 588 }; 588 }; 589 589 590 &usb0 { 590 &usb0 { 591 atmel,vbus-gpio = <&pioA PIN_PB13 GPIO 591 atmel,vbus-gpio = <&pioA PIN_PB13 GPIO_ACTIVE_HIGH>; 592 pinctrl-names = "default"; 592 pinctrl-names = "default"; 593 pinctrl-0 = <&pinctrl_usba_vbus>; 593 pinctrl-0 = <&pinctrl_usba_vbus>; 594 status = "okay"; 594 status = "okay"; 595 }; 595 }; 596 596 597 &usb1 { 597 &usb1 { 598 num-ports = <3>; 598 num-ports = <3>; 599 atmel,vbus-gpio = <0 599 atmel,vbus-gpio = <0 600 &pioA PIN_PA6 GPIO_ 600 &pioA PIN_PA6 GPIO_ACTIVE_HIGH 601 0>; 601 0>; 602 pinctrl-names = "default"; 602 pinctrl-names = "default"; 603 pinctrl-0 = <&pinctrl_usb_default>; 603 pinctrl-0 = <&pinctrl_usb_default>; 604 status = "okay"; 604 status = "okay"; 605 }; 605 }; 606 606 607 &usb2 { 607 &usb2 { 608 status = "okay"; 608 status = "okay"; 609 }; 609 }; 610 610 611 &watchdog { 611 &watchdog { 612 status = "okay"; 612 status = "okay"; 613 }; 613 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.