Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * at91-sama5d4ek.dts - Device Tree file for SAMA5D4 Evaluation Kit
0004  *
0005  *  Copyright (C) 2014 Atmel,
0006  *                2014 Nicolas Ferre <nicolas.ferre@atmel.com>
0007  */
0008 /dts-v1/;
0009 #include "sama5d4.dtsi"
0010 
0011 / {
0012         model = "Atmel SAMA5D4-EK";
0013         compatible = "atmel,sama5d4ek", "atmel,sama5d4", "atmel,sama5";
0014 
0015         chosen {
0016                 stdout-path = "serial0:115200n8";
0017         };
0018 
0019         memory@20000000 {
0020                 reg = <0x20000000 0x20000000>;
0021         };
0022 
0023         clocks {
0024                 slow_xtal {
0025                         clock-frequency = <32768>;
0026                 };
0027 
0028                 main_xtal {
0029                         clock-frequency = <12000000>;
0030                 };
0031         };
0032 
0033         ahb {
0034                 apb {
0035                         adc0: adc@fc034000 {
0036                                 pinctrl-names = "default";
0037                                 pinctrl-0 = <
0038                                         /* external trigger conflicts with USBA_VBUS */
0039                                         &pinctrl_adc0_ad0
0040                                         &pinctrl_adc0_ad1
0041                                         &pinctrl_adc0_ad2
0042                                         &pinctrl_adc0_ad3
0043                                         &pinctrl_adc0_ad4
0044                                         >;
0045                                 /* The vref depends on JP22 of EK. If connect 1-2 then use 3.3V. connect 2-3 use 3.0V */
0046                                 atmel,adc-vref = <3300>;
0047                                 /*atmel,adc-ts-wires = <4>;*/   /* Set up ADC touch screen */
0048                                 status = "okay";                /* Enable ADC IIO support */
0049                         };
0050 
0051                         mmc0: mmc@f8000000 {
0052                                 pinctrl-names = "default";
0053                                 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_cd>;
0054                                 slot@0 {
0055                                         reg = <0>;
0056                                         bus-width = <4>;
0057                                         cd-gpios = <&pioE 5 0>;
0058                                 };
0059                         };
0060 
0061                         ssc0: ssc@f8008000 {
0062                                 status = "okay";
0063                         };
0064 
0065                         spi0: spi@f8010000 {
0066                                 cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
0067                                 status = "okay";
0068                                 flash@0 {
0069                                         compatible = "atmel,at25df321a";
0070                                         spi-max-frequency = <50000000>;
0071                                         reg = <0>;
0072                                 };
0073                         };
0074 
0075                         i2c0: i2c@f8014000 {
0076                                 status = "okay";
0077 
0078                                 wm8904: codec@1a {
0079                                         compatible = "wlf,wm8904";
0080                                         reg = <0x1a>;
0081                                         clocks = <&pmc PMC_TYPE_SYSTEM 10>;
0082                                         clock-names = "mclk";
0083                                 };
0084 
0085                                 qt1070:keyboard@1b {
0086                                         compatible = "qt1070";
0087                                         reg = <0x1b>;
0088                                         interrupt-parent = <&pioE>;
0089                                         interrupts = <25 0x0>;
0090                                         pinctrl-names = "default";
0091                                         pinctrl-0 = <&pinctrl_qt1070_irq>;
0092                                         wakeup-source;
0093                                 };
0094 
0095                                 touchscreen@4c {
0096                                         compatible = "atmel,maxtouch";
0097                                         reg = <0x4c>;
0098                                         interrupt-parent = <&pioE>;
0099                                         interrupts = <24 0x0>;
0100                                         pinctrl-names = "default";
0101                                         pinctrl-0 = <&pinctrl_mxt_ts>;
0102                                 };
0103                         };
0104 
0105                         macb0: ethernet@f8020000 {
0106                                 pinctrl-0 = <&pinctrl_macb0_rmii &pinctrl_macb0_phy_irq>;
0107                                 phy-mode = "rmii";
0108                                 status = "okay";
0109 
0110                                 ethernet-phy@1 {
0111                                         reg = <0x1>;
0112                                         interrupt-parent = <&pioE>;
0113                                         interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
0114                                 };
0115                         };
0116 
0117                         mmc1: mmc@fc000000 {
0118                                 pinctrl-names = "default";
0119                                 pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>;
0120                                 status = "okay";
0121                                 slot@0 {
0122                                         reg = <0>;
0123                                         bus-width = <4>;
0124                                         cd-gpios = <&pioE 6 0>;
0125                                 };
0126                         };
0127 
0128                         usart2: serial@fc008000 {
0129                                 status = "okay";
0130                         };
0131 
0132                         usart3: serial@fc00c000 {
0133                                 status = "okay";
0134                         };
0135 
0136                         usart4: serial@fc010000 {
0137                                 status = "okay";
0138                         };
0139 
0140                         tcb2: timer@fc024000 {
0141                                 timer@0 {
0142                                         compatible = "atmel,tcb-timer";
0143                                         reg = <0>;
0144                                 };
0145 
0146                                 timer@1 {
0147                                         compatible = "atmel,tcb-timer";
0148                                         reg = <1>;
0149                                 };
0150                         };
0151 
0152                         watchdog@fc068640 {
0153                                 status = "okay";
0154                         };
0155 
0156                         pinctrl@fc06a000 {
0157                                 board {
0158                                         pinctrl_macb0_phy_irq: macb0_phy_irq {
0159                                                 atmel,pins =
0160                                                         <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0161                                         };
0162                                         pinctrl_mmc0_cd: mmc0_cd {
0163                                                 atmel,pins =
0164                                                         <AT91_PIOE 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0165                                         };
0166                                         pinctrl_mmc1_cd: mmc1_cd {
0167                                                 atmel,pins =
0168                                                         <AT91_PIOE 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0169                                         };
0170                                         pinctrl_pck2_as_audio_mck: pck2_as_audio_mck {
0171                                                 atmel,pins =
0172                                                         <AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0173                                         };
0174                                         pinctrl_usba_vbus: usba_vbus {
0175                                                 atmel,pins =
0176                                                         <AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;
0177                                         };
0178                                         pinctrl_key_gpio: key_gpio_0 {
0179                                                 atmel,pins =
0180                                                         <AT91_PIOE 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PE13 gpio */
0181                                         };
0182                                         pinctrl_qt1070_irq: qt1070_irq {
0183                                                 atmel,pins =
0184                                                         <AT91_PIOE 25 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0185                                         };
0186                                         pinctrl_mxt_ts: mxt_irq {
0187                                                 atmel,pins =
0188                                                         <AT91_PIOE 24 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
0189                                         };
0190                                 };
0191                         };
0192                 };
0193 
0194                 usb0: gadget@400000 {
0195                         atmel,vbus-gpio = <&pioE 31 GPIO_ACTIVE_HIGH>;
0196                         pinctrl-names = "default";
0197                         pinctrl-0 = <&pinctrl_usba_vbus>;
0198                         status = "okay";
0199                 };
0200 
0201                 usb1: ohci@500000 {
0202                         num-ports = <3>;
0203                         atmel,vbus-gpio = <0 /* &pioE 10 GPIO_ACTIVE_LOW */
0204                                            &pioE 11 GPIO_ACTIVE_LOW
0205                                            &pioE 12 GPIO_ACTIVE_LOW
0206                                           >;
0207                         status = "okay";
0208                 };
0209 
0210                 usb2: ehci@600000 {
0211                         status = "okay";
0212                 };
0213 
0214                 ebi: ebi@10000000 {
0215                         pinctrl-0 = <&pinctrl_ebi_cs3 &pinctrl_ebi_nrd_nandoe
0216                                      &pinctrl_ebi_nwe_nandwe &pinctrl_ebi_nandrdy
0217                                      &pinctrl_ebi_data_0_7 &pinctrl_ebi_nand_addr>;
0218                         pinctrl-names = "default";
0219                         status = "okay";
0220 
0221                         nand_controller: nand-controller {
0222                                 status = "okay";
0223 
0224                                 nand@3 {
0225                                         reg = <0x3 0x0 0x2>;
0226                                         atmel,rb = <0>;
0227                                         nand-bus-width = <8>;
0228                                         nand-ecc-mode = "hw";
0229                                         nand-on-flash-bbt;
0230                                         label = "atmel_nand";
0231 
0232                                         partitions {
0233                                                 compatible = "fixed-partitions";
0234                                                 #address-cells = <1>;
0235                                                 #size-cells = <1>;
0236 
0237                                                 at91bootstrap@0 {
0238                                                         label = "at91bootstrap";
0239                                                         reg = <0x0 0x40000>;
0240                                                 };
0241 
0242                                                 bootloader@40000 {
0243                                                         label = "bootloader";
0244                                                         reg = <0x40000 0x80000>;
0245                                                 };
0246 
0247                                                 bootloaderenv@c0000 {
0248                                                         label = "bootloader env";
0249                                                         reg = <0xc0000 0xc0000>;
0250                                                 };
0251 
0252                                                 dtb@180000 {
0253                                                         label = "device tree";
0254                                                         reg = <0x180000 0x80000>;
0255                                                 };
0256 
0257                                                 kernel@200000 {
0258                                                         label = "kernel";
0259                                                         reg = <0x200000 0x600000>;
0260                                                 };
0261 
0262                                                 rootfs@800000 {
0263                                                         label = "rootfs";
0264                                                         reg = <0x800000 0x0f800000>;
0265                                                 };
0266                                         };
0267                                 };
0268                         };
0269                 };
0270         };
0271 
0272         gpio-keys {
0273                 compatible = "gpio-keys";
0274 
0275                 pinctrl-names = "default";
0276                 pinctrl-0 = <&pinctrl_key_gpio>;
0277 
0278                 button {
0279                         label = "pb_user1";
0280                         gpios = <&pioE 13 GPIO_ACTIVE_HIGH>;
0281                         linux,code = <0x100>;
0282                         wakeup-source;
0283                 };
0284         };
0285 
0286         leds {
0287                 compatible = "gpio-leds";
0288                 status = "okay";
0289 
0290                 d8 {
0291                         label = "d8";
0292                         /* PE28, conflicts with usart4 rts pin */
0293                         gpios = <&pioE 28 GPIO_ACTIVE_LOW>;
0294                 };
0295 
0296                 d9 {
0297                         label = "d9";
0298                         gpios = <&pioE 9 GPIO_ACTIVE_HIGH>;
0299                 };
0300 
0301                 d10 {
0302                         label = "d10";
0303                         gpios = <&pioE 8 GPIO_ACTIVE_LOW>;
0304                         linux,default-trigger = "heartbeat";
0305                 };
0306         };
0307 
0308         sound {
0309                 compatible = "atmel,asoc-wm8904";
0310                 pinctrl-names = "default";
0311                 pinctrl-0 = <&pinctrl_pck2_as_audio_mck>;
0312 
0313                 atmel,model = "wm8904 @ SAMA5D4EK";
0314                 atmel,audio-routing =
0315                         "Headphone Jack", "HPOUTL",
0316                         "Headphone Jack", "HPOUTR",
0317                         "IN1L", "Line In Jack",
0318                         "IN1R", "Line In Jack";
0319 
0320                 atmel,ssc-controller = <&ssc0>;
0321                 atmel,audio-codec = <&wm8904>;
0322         };
0323 };