Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board
0004  *
0005  *  Copyright (C) 2014 Atmel,
0006  *                2014 Nicolas Ferre <nicolas.ferre@atmel.com>
0007  */
0008 /dts-v1/;
0009 #include "sama5d36.dtsi"
0010 #include <dt-bindings/input/input.h>
0011 
0012 / {
0013         model = "SAMA5D3 Xplained";
0014         compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5";
0015 
0016         chosen {
0017                 stdout-path = "serial0:115200n8";
0018         };
0019 
0020         memory@20000000 {
0021                 reg = <0x20000000 0x10000000>;
0022         };
0023 
0024         clocks {
0025                 slow_xtal {
0026                         clock-frequency = <32768>;
0027                 };
0028 
0029                 main_xtal {
0030                         clock-frequency = <12000000>;
0031                 };
0032         };
0033 
0034         ahb {
0035                 apb {
0036                         mmc0: mmc@f0000000 {
0037                                 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>;
0038                                 vmmc-supply = <&vcc_mmc0_reg>;
0039                                 vqmmc-supply = <&vcc_3v3_reg>;
0040                                 status = "okay";
0041                                 slot@0 {
0042                                         reg = <0>;
0043                                         bus-width = <8>;
0044                                         cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>;
0045                                 };
0046                         };
0047 
0048                         mmc1: mmc@f8000000 {
0049                                 vmmc-supply = <&vcc_3v3_reg>;
0050                                 vqmmc-supply = <&vcc_3v3_reg>;
0051                                 status = "disabled";
0052                                 slot@0 {
0053                                         reg = <0>;
0054                                         bus-width = <4>;
0055                                         cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>;
0056                                 };
0057                         };
0058 
0059                         spi0: spi@f0004000 {
0060                                 pinctrl-names = "default", "cs";
0061                                 pinctrl-1 = <&pinctrl_spi0_cs>;
0062                                 cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>;
0063                                 status = "okay";
0064                         };
0065 
0066                         can0: can@f000c000 {
0067                                 status = "okay";
0068                         };
0069 
0070                         tcb0: timer@f0010000 {
0071                                 timer0: timer@0 {
0072                                         compatible = "atmel,tcb-timer";
0073                                         reg = <0>;
0074                                 };
0075 
0076                                 timer1: timer@1 {
0077                                         compatible = "atmel,tcb-timer";
0078                                         reg = <1>;
0079                                 };
0080                         };
0081 
0082                         i2c0: i2c@f0014000 {
0083                                 pinctrl-0 = <&pinctrl_i2c0_pu>;
0084                                 status = "okay";
0085                         };
0086 
0087                         i2c1: i2c@f0018000 {
0088                                 status = "okay";
0089 
0090                                 pmic: act8865@5b {
0091                                         compatible = "active-semi,act8865";
0092                                         reg = <0x5b>;
0093                                         status = "disabled";
0094 
0095                                         regulators {
0096                                                 vcc_1v8_reg: DCDC_REG1 {
0097                                                         regulator-name = "VCC_1V8";
0098                                                         regulator-min-microvolt = <1800000>;
0099                                                         regulator-max-microvolt = <1800000>;
0100                                                         regulator-always-on;
0101                                                 };
0102 
0103                                                 vcc_1v2_reg: DCDC_REG2 {
0104                                                         regulator-name = "VCC_1V2";
0105                                                         regulator-min-microvolt = <1200000>;
0106                                                         regulator-max-microvolt = <1200000>;
0107                                                         regulator-always-on;
0108                                                 };
0109 
0110                                                 vcc_3v3_reg: DCDC_REG3 {
0111                                                         regulator-name = "VCC_3V3";
0112                                                         regulator-min-microvolt = <3300000>;
0113                                                         regulator-max-microvolt = <3300000>;
0114                                                         regulator-always-on;
0115                                                 };
0116 
0117                                                 vddfuse_reg: LDO_REG1 {
0118                                                         regulator-name = "FUSE_2V5";
0119                                                         regulator-min-microvolt = <2500000>;
0120                                                         regulator-max-microvolt = <2500000>;
0121                                                 };
0122 
0123                                                 vddana_reg: LDO_REG2 {
0124                                                         regulator-name = "VDDANA";
0125                                                         regulator-min-microvolt = <3300000>;
0126                                                         regulator-max-microvolt = <3300000>;
0127                                                         regulator-always-on;
0128                                                 };
0129                                         };
0130                                 };
0131                         };
0132 
0133                         macb0: ethernet@f0028000 {
0134                                 phy-mode = "rgmii-rxid";
0135                                 #address-cells = <1>;
0136                                 #size-cells = <0>;
0137                                 status = "okay";
0138 
0139                                 ethernet-phy@7 {
0140                                         reg = <0x7>;
0141                                 };
0142                         };
0143 
0144                         pwm0: pwm@f002c000 {
0145                                 pinctrl-names = "default";
0146                                 pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>;
0147                                 status = "okay";
0148                         };
0149 
0150                         usart0: serial@f001c000 {
0151                                 status = "okay";
0152                         };
0153 
0154                         usart1: serial@f0020000 {
0155                                 pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>;
0156                                 status = "okay";
0157                         };
0158 
0159                         uart0: serial@f0024000 {
0160                                 status = "okay";
0161                         };
0162 
0163                         mmc1: mmc@f8000000 {
0164                                 pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
0165                                 status = "okay";
0166                                 slot@0 {
0167                                         reg = <0>;
0168                                         bus-width = <4>;
0169                                         cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>;
0170                                 };
0171                         };
0172 
0173                         spi1: spi@f8008000 {
0174                                 pinctrl-names = "default", "cs";
0175                                 pinctrl-1 = <&pinctrl_spi1_cs>;
0176                                 cs-gpios = <&pioC 25 0>;
0177                                 status = "okay";
0178                         };
0179 
0180                         adc0: adc@f8018000 {
0181                                 atmel,adc-vref = <3300>;
0182                                 atmel,adc-channels-used = <0xfe>;
0183                                 pinctrl-0 = <
0184                                         &pinctrl_adc0_adtrg
0185                                         &pinctrl_adc0_ad1
0186                                         &pinctrl_adc0_ad2
0187                                         &pinctrl_adc0_ad3
0188                                         &pinctrl_adc0_ad4
0189                                         &pinctrl_adc0_ad5
0190                                         &pinctrl_adc0_ad6
0191                                         &pinctrl_adc0_ad7
0192                                         >;
0193                                 status = "okay";
0194                         };
0195 
0196                         i2c2: i2c@f801c000 {
0197                                 dmas = <0>, <0>;        /* Do not use DMA for i2c2 */
0198                                 pinctrl-0 = <&pinctrl_i2c2_pu>;
0199                                 status = "okay";
0200                         };
0201 
0202                         macb1: ethernet@f802c000 {
0203                                 phy-mode = "rmii";
0204                                 #address-cells = <1>;
0205                                 #size-cells = <0>;
0206                                 status = "okay";
0207 
0208                                 ethernet-phy@1 {
0209                                         reg = <0x1>;
0210                                 };
0211                         };
0212 
0213                         dbgu: serial@ffffee00 {
0214                                 status = "okay";
0215                         };
0216 
0217                         pinctrl@fffff200 {
0218                                 board {
0219                                         pinctrl_i2c0_pu: i2c0_pu {
0220                                                 atmel,pins =
0221                                                         <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0222                                                         <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0223                                         };
0224 
0225                                         pinctrl_i2c2_pu: i2c2_pu {
0226                                                 atmel,pins =
0227                                                         <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
0228                                                         <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
0229                                         };
0230 
0231                                         pinctrl_key_gpio: key_gpio_0 {
0232                                                 atmel,pins =
0233                                                         <AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0234                                         };
0235 
0236                                         pinctrl_mmc0_cd: mmc0_cd {
0237                                                 atmel,pins =
0238                                                         <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0239                                         };
0240 
0241                                         pinctrl_mmc1_cd: mmc1_cd {
0242                                                 atmel,pins =
0243                                                         <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0244                                         };
0245 
0246                                         pinctrl_usba_vbus: usba_vbus {
0247                                                 atmel,pins =
0248                                                         <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;   /* PE9, conflicts with A9 */
0249                                         };
0250                                         pinctrl_usb_default: usb_default {
0251                                                 atmel,pins =
0252                                                         <AT91_PIOE 3 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
0253                                                          AT91_PIOE 4 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0254                                         };
0255 
0256                                         pinctrl_gpio_leds: gpio_leds_default {
0257                                                 atmel,pins =
0258                                                         <AT91_PIOE 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
0259                                                          AT91_PIOE 24 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0260                                         };
0261 
0262                                         pinctrl_spi0_cs: spi0_cs_default {
0263                                                 atmel,pins =
0264                                                         <AT91_PIOD 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
0265                                                          AT91_PIOD 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0266                                         };
0267 
0268                                         pinctrl_spi1_cs: spi1_cs_default {
0269                                                 atmel,pins = <AT91_PIOC 25 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0270                                         };
0271 
0272                                         pinctrl_vcc_mmc0_reg_gpio: vcc_mmc0_reg_gpio_default {
0273                                                 atmel,pins = <AT91_PIOE 2 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0274                                         };
0275                                 };
0276                         };
0277                 };
0278 
0279                 usb0: gadget@500000 {
0280                         atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>;   /* PE9, conflicts with A9 */
0281                         pinctrl-names = "default";
0282                         pinctrl-0 = <&pinctrl_usba_vbus>;
0283                         status = "okay";
0284                 };
0285 
0286                 usb1: ohci@600000 {
0287                         num-ports = <3>;
0288                         atmel,vbus-gpio = <0
0289                                            &pioE 3 GPIO_ACTIVE_LOW
0290                                            &pioE 4 GPIO_ACTIVE_LOW
0291                                           >;
0292                         pinctrl-names = "default";
0293                         pinctrl-0 = <&pinctrl_usb_default>;
0294                         status = "okay";
0295                 };
0296 
0297                 usb2: ehci@700000 {
0298                         status = "okay";
0299                 };
0300 
0301                 ebi: ebi@10000000 {
0302                         pinctrl-0 = <&pinctrl_ebi_nand_addr>;
0303                         pinctrl-names = "default";
0304                         status = "okay";
0305 
0306                         nand_controller: nand-controller {
0307                                 status = "okay";
0308 
0309                                 nand@3 {
0310                                         reg = <0x3 0x0 0x2>;
0311                                         atmel,rb = <0>;
0312                                         nand-bus-width = <8>;
0313                                         nand-ecc-mode = "hw";
0314                                         nand-ecc-strength = <4>;
0315                                         nand-ecc-step-size = <512>;
0316                                         nand-on-flash-bbt;
0317                                         label = "atmel_nand";
0318 
0319                                         partitions {
0320                                                 compatible = "fixed-partitions";
0321                                                 #address-cells = <1>;
0322                                                 #size-cells = <1>;
0323 
0324                                                 at91bootstrap@0 {
0325                                                         label = "at91bootstrap";
0326                                                         reg = <0x0 0x40000>;
0327                                                 };
0328 
0329                                                 bootloader@40000 {
0330                                                         label = "bootloader";
0331                                                         reg = <0x40000 0xc0000>;
0332                                                 };
0333 
0334                                                 bootloaderenvred@100000 {
0335                                                         label = "bootloader env redundant";
0336                                                         reg = <0x100000 0x40000>;
0337                                                 };
0338 
0339                                                 bootloaderenv@140000 {
0340                                                         label = "bootloader env";
0341                                                         reg = <0x140000 0x40000>;
0342                                                 };
0343 
0344                                                 dtb@180000 {
0345                                                         label = "device tree";
0346                                                         reg = <0x180000 0x80000>;
0347                                                 };
0348 
0349                                                 kernel@200000 {
0350                                                         label = "kernel";
0351                                                         reg = <0x200000 0x600000>;
0352                                                 };
0353 
0354                                                 rootfs@800000 {
0355                                                         label = "rootfs";
0356                                                         reg = <0x800000 0x0f800000>;
0357                                                 };
0358                                         };
0359                                 };
0360                         };
0361                 };
0362         };
0363 
0364         vcc_mmc0_reg: fixedregulator_mmc0 {
0365                 compatible = "regulator-fixed";
0366                 pinctrl-names = "default";
0367                 pinctrl-0 = <&pinctrl_vcc_mmc0_reg_gpio>;
0368                 gpio = <&pioE 2 GPIO_ACTIVE_LOW>;
0369                 regulator-name = "mmc0-card-supply";
0370                 regulator-min-microvolt = <3300000>;
0371                 regulator-max-microvolt = <3300000>;
0372                 regulator-always-on;
0373         };
0374 
0375         gpio-keys {
0376                 compatible = "gpio-keys";
0377 
0378                 pinctrl-names = "default";
0379                 pinctrl-0 = <&pinctrl_key_gpio>;
0380 
0381                 button {
0382                         label = "PB_USER";
0383                         gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
0384                         linux,code = <KEY_PROG1>;
0385                         wakeup-source;
0386                 };
0387         };
0388 
0389         leds {
0390                 compatible = "gpio-leds";
0391                 pinctrl-names = "default";
0392                 pinctrl-0 = <&pinctrl_gpio_leds>;
0393                 status = "okay";
0394 
0395                 d2 {
0396                         label = "d2";
0397                         gpios = <&pioE 23 GPIO_ACTIVE_LOW>;     /* PE23, conflicts with A23, CTS2 */
0398                         linux,default-trigger = "heartbeat";
0399                 };
0400 
0401                 d3 {
0402                         label = "d3"; /* Conflict with EBI CS0, USART2 CTS. */
0403                         gpios = <&pioE 24 GPIO_ACTIVE_HIGH>;
0404                 };
0405         };
0406 };