Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003  * at91sam9g20ek_common.dtsi - Device Tree file for Atmel at91sam9g20ek board
0004  *
0005  * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
0006  */
0007 #include "at91sam9g20.dtsi"
0008 #include <dt-bindings/input/input.h>
0009 
0010 / {
0011 
0012         chosen {
0013                 bootargs = "mem=64M root=/dev/mtdblock5 rw rootfstype=ubifs";
0014                 stdout-path = "serial0:115200n8";
0015         };
0016 
0017         memory@20000000 {
0018                 reg = <0x20000000 0x4000000>;
0019         };
0020 
0021         clocks {
0022                 slow_xtal {
0023                         clock-frequency = <32768>;
0024                 };
0025 
0026                 main_xtal {
0027                         clock-frequency = <18432000>;
0028                 };
0029         };
0030 
0031         ahb {
0032                 apb {
0033                         pinctrl@fffff400 {
0034                                 board {
0035                                         pinctrl_pck0_as_mck: pck0_as_mck {
0036                                                 atmel,pins =
0037                                                         <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;  /* PC1 periph B */
0038                                         };
0039 
0040                                 };
0041 
0042                                 mmc0_slot1 {
0043                                         pinctrl_board_mmc0_slot1: mmc0_slot1-board {
0044                                                 atmel,pins =
0045                                                         <AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;   /* PC9 gpio CD pin pull up and deglitch */
0046                                         };
0047                                 };
0048                         };
0049 
0050                         dbgu: serial@fffff200 {
0051                                 status = "okay";
0052                         };
0053 
0054                         tcb0: timer@fffa0000 {
0055                                 timer@0 {
0056                                         compatible = "atmel,tcb-timer";
0057                                         reg = <0>, <1>;
0058                                 };
0059 
0060                                 timer@2 {
0061                                         compatible = "atmel,tcb-timer";
0062                                         reg = <2>;
0063                                 };
0064                         };
0065 
0066                         usart0: serial@fffb0000 {
0067                                 pinctrl-0 =
0068                                         <&pinctrl_usart0
0069                                          &pinctrl_usart0_rts
0070                                          &pinctrl_usart0_cts
0071                                          &pinctrl_usart0_dtr_dsr
0072                                          &pinctrl_usart0_dcd
0073                                          &pinctrl_usart0_ri>;
0074                                 status = "okay";
0075                         };
0076 
0077                         usart1: serial@fffb4000 {
0078                                 status = "okay";
0079                         };
0080 
0081                         macb0: ethernet@fffc4000 {
0082                                 phy-mode = "rmii";
0083                                 status = "okay";
0084                         };
0085 
0086                         usb1: gadget@fffa4000 {
0087                                 atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>;
0088                                 status = "okay";
0089                         };
0090 
0091                         mmc0: mmc@fffa8000 {
0092                                 pinctrl-0 = <
0093                                         &pinctrl_board_mmc0_slot1
0094                                         &pinctrl_mmc0_clk
0095                                         &pinctrl_mmc0_slot1_cmd_dat0
0096                                         &pinctrl_mmc0_slot1_dat1_3>;
0097                                 pinctrl-names = "default";
0098                                 status = "okay";
0099                                 slot@1 {
0100                                         reg = <1>;
0101                                         bus-width = <4>;
0102                                         cd-gpios = <&pioC 9 GPIO_ACTIVE_HIGH>;
0103                                 };
0104                         };
0105 
0106                         ssc0: ssc@fffbc000 {
0107                                 status = "okay";
0108                                 pinctrl-0 = <&pinctrl_ssc0_tx>;
0109                         };
0110 
0111                         spi0: spi@fffc8000 {
0112                                 cs-gpios = <0>, <&pioC 11 0>, <0>, <0>;
0113                                 flash@1 {
0114                                         compatible = "atmel,at45", "atmel,dataflash";
0115                                         spi-max-frequency = <50000000>;
0116                                         reg = <1>;
0117                                 };
0118                         };
0119 
0120                         shdwc@fffffd10 {
0121                                 atmel,wakeup-counter = <10>;
0122                                 atmel,wakeup-rtt-timer;
0123                         };
0124 
0125                         rtc@fffffd20 {
0126                                 atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
0127                                 status = "okay";
0128                         };
0129 
0130                         watchdog@fffffd40 {
0131                                 status = "okay";
0132                         };
0133 
0134                         gpbr: syscon@fffffd50 {
0135                                 status = "okay";
0136                         };
0137                 };
0138 
0139                 ebi: ebi@10000000 {
0140                         status = "okay";
0141 
0142                         nand_controller: nand-controller {
0143                                 status = "okay";
0144                                 pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
0145                                 pinctrl-names = "default";
0146 
0147                                 nand@3 {
0148                                         reg = <0x3 0x0 0x800000>;
0149                                         rb-gpios = <&pioC 13 GPIO_ACTIVE_HIGH>;
0150                                         cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
0151                                         nand-bus-width = <8>;
0152                                         nand-ecc-mode = "soft";
0153                                         nand-on-flash-bbt;
0154                                         label = "atmel_nand";
0155 
0156                                         partitions {
0157                                                 compatible = "fixed-partitions";
0158                                                 #address-cells = <1>;
0159                                                 #size-cells = <1>;
0160 
0161                                                 at91bootstrap@0 {
0162                                                         label = "at91bootstrap";
0163                                                         reg = <0x0 0x20000>;
0164                                                 };
0165 
0166                                                 barebox@20000 {
0167                                                         label = "barebox";
0168                                                         reg = <0x20000 0x40000>;
0169                                                 };
0170 
0171                                                 bareboxenv@60000 {
0172                                                         label = "bareboxenv";
0173                                                         reg = <0x60000 0x20000>;
0174                                                 };
0175 
0176                                                 bareboxenv2@80000 {
0177                                                         label = "bareboxenv2";
0178                                                         reg = <0x80000 0x20000>;
0179                                                 };
0180 
0181                                                 oftree@80000 {
0182                                                         label = "oftree";
0183                                                         reg = <0xa0000 0x20000>;
0184                                                 };
0185 
0186                                                 kernel@a0000 {
0187                                                         label = "kernel";
0188                                                         reg = <0xc0000 0x400000>;
0189                                                 };
0190 
0191                                                 rootfs@4a0000 {
0192                                                         label = "rootfs";
0193                                                         reg = <0x4c0000 0x7800000>;
0194                                                 };
0195 
0196                                                 data@7ca0000 {
0197                                                         label = "data";
0198                                                         reg = <0x7cc0000 0x8340000>;
0199                                                 };
0200                                         };
0201                                 };
0202                         };
0203                 };
0204 
0205                 usb0: ohci@500000 {
0206                         num-ports = <2>;
0207                         status = "okay";
0208                 };
0209         };
0210 
0211         i2c-gpio-0 {
0212                 status = "okay";
0213 
0214                 24c512@50 {
0215                         compatible = "atmel,24c512";
0216                         reg = <0x50>;
0217                         vcc-supply = <&reg_3v3>;
0218                 };
0219 
0220                 wm8731: wm8731@1b {
0221                         compatible = "wm8731";
0222                         reg = <0x1b>;
0223 
0224                         /* PCK0 at 12MHz */
0225                         clocks = <&pmc PMC_TYPE_SYSTEM 8>;
0226                         clock-names = "mclk";
0227                         assigned-clocks = <&pmc PMC_TYPE_SYSTEM 8>;
0228                         assigned-clock-rates = <12000000>;
0229 
0230                         HPVDD-supply = <&vcc_dac>;
0231                         AVDD-supply = <&vcc_dac>;
0232                         DCVDD-supply = <&reg_3v3>;
0233                         DBVDD-supply = <&reg_3v3>;
0234                 };
0235         };
0236 
0237         gpio-keys {
0238                 compatible = "gpio-keys";
0239 
0240                 button-3 {
0241                         label = "Button 3";
0242                         gpios = <&pioA 30 GPIO_ACTIVE_LOW>;
0243                         linux,code = <0x103>;
0244                         wakeup-source;
0245                 };
0246 
0247                 button-4 {
0248                         label = "Button 4";
0249                         gpios = <&pioA 31 GPIO_ACTIVE_LOW>;
0250                         linux,code = <KEY_PROG1>;
0251                         wakeup-source;
0252                 };
0253         };
0254 
0255         sound {
0256                 compatible = "atmel,at91sam9g20ek-wm8731-audio";
0257                 pinctrl-names = "default";
0258                 pinctrl-0 = <&pinctrl_pck0_as_mck>;
0259 
0260                 atmel,model = "wm8731 @ AT91SAMG20EK";
0261 
0262                 atmel,audio-routing =
0263                         "Ext Spk", "LHPOUT",
0264                         "Int Mic", "MICIN";
0265 
0266                 atmel,ssc-controller = <&ssc0>;
0267                 atmel,audio-codec = <&wm8731>;
0268         };
0269 
0270         reg_5v: fixedregulator0 {
0271                 compatible = "regulator-fixed";
0272                 regulator-name = "5V";
0273                 regulator-min-microvolt = <5000000>;
0274                 regulator-max-microvolt = <5000000>;
0275         };
0276 
0277         reg_3v3: fixedregulator1 {
0278                 compatible = "regulator-fixed";
0279                 regulator-name = "3V3";
0280                 vin-supply = <&reg_5v>;
0281                 regulator-min-microvolt = <3300000>;
0282                 regulator-max-microvolt = <3300000>;
0283         };
0284 
0285         reg_1v: fixedregulator2 {
0286                 compatible = "regulator-fixed";
0287                 regulator-name = "1V";
0288                 vin-supply = <&reg_5v>;
0289                 regulator-min-microvolt = <1000000>;
0290                 regulator-max-microvolt = <1000000>;
0291         };
0292 
0293         vcc_dac: fixedregulator3 {
0294                 compatible = "regulator-fixed";
0295                 regulator-name = "VCC_DAC";
0296                 vin-supply = <&reg_3v3>;
0297                 regulator-min-microvolt = <3300000>;
0298                 regulator-max-microvolt = <3300000>;
0299         };
0300 };