Home | History | Annotate | Line # | Download | only in dts
      1 // SPDX-License-Identifier: GPL-2.0-only
      2 /*
      3  * at91sam9261ek.dts - Device Tree file for Atmel at91sam9261 reference board
      4  *
      5  *  Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot (a] traphandler.com>
      6  */
      7 /dts-v1/;
      8 #include "at91sam9261.dtsi"
      9 
     10 / {
     11 	model = "Atmel at91sam9261ek";
     12 	compatible = "atmel,at91sam9261ek", "atmel,at91sam9261", "atmel,at91sam9";
     13 
     14 	chosen {
     15 		bootargs = "rootfstype=ubifs ubi.mtd=5 root=ubi0:rootfs rw";
     16 		stdout-path = "serial0:115200n8";
     17 	};
     18 
     19 	memory@20000000 {
     20 		reg = <0x20000000 0x4000000>;
     21 	};
     22 
     23 	clocks {
     24 		slow_xtal {
     25 			clock-frequency = <32768>;
     26 		};
     27 
     28 		main_xtal {
     29 			clock-frequency = <18432000>;
     30 		};
     31 	};
     32 
     33 	ahb {
     34 		usb0: ohci@500000 {
     35 			status = "okay";
     36 		};
     37 
     38 		fb0: fb@600000 {
     39 			display = <&display0>;
     40 			atmel,power-control-gpio = <&pioA 12 GPIO_ACTIVE_LOW>;
     41 			status = "okay";
     42 
     43 			display0: panel {
     44 				bits-per-pixel = <16>;
     45 				atmel,lcdcon-backlight;
     46 				atmel,dmacon = <0x1>;
     47 				atmel,lcdcon2 = <0x80008002>;
     48 				atmel,guard-time = <1>;
     49 				atmel,lcd-wiring-mode = "BRG";
     50 
     51 				display-timings {
     52 					native-mode = <&timing0>;
     53 					timing0: timing0 {
     54 						clock-frequency = <4965000>;
     55 						hactive = <240>;
     56 						vactive = <320>;
     57 						hback-porch = <1>;
     58 						hfront-porch = <33>;
     59 						vback-porch = <1>;
     60 						vfront-porch = <0>;
     61 						hsync-len = <5>;
     62 						vsync-len = <1>;
     63 						hsync-active = <1>;
     64 						vsync-active = <1>;
     65 					};
     66 				};
     67 			};
     68 		};
     69 
     70 		ebi: ebi@10000000 {
     71 			status = "okay";
     72 
     73 			nand_controller: nand-controller {
     74 				status = "okay";
     75 				pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
     76 				pinctrl-names = "default";
     77 
     78 				nand@3 {
     79 					reg = <0x3 0x0 0x800000>;
     80 					rb-gpios = <&pioC 15 GPIO_ACTIVE_HIGH>;
     81 					cs-gpios = <&pioC 14 GPIO_ACTIVE_HIGH>;
     82 					nand-bus-width = <8>;
     83 					nand-ecc-mode = "soft";
     84 					nand-on-flash-bbt;
     85 					label = "atmel_nand";
     86 
     87 					partitions {
     88 						compatible = "fixed-partitions";
     89 						#address-cells = <1>;
     90 						#size-cells = <1>;
     91 
     92 						at91bootstrap@0 {
     93 							label = "at91bootstrap";
     94 							reg = <0x0 0x40000>;
     95 						};
     96 
     97 						bootloader@40000 {
     98 							label = "bootloader";
     99 							reg = <0x40000 0x80000>;
    100 						};
    101 
    102 						bootloaderenv@c0000 {
    103 							label = "bootloader env";
    104 							reg = <0xc0000 0xc0000>;
    105 						};
    106 
    107 						dtb@180000 {
    108 							label = "device tree";
    109 							reg = <0x180000 0x80000>;
    110 						};
    111 
    112 						kernel@200000 {
    113 							label = "kernel";
    114 							reg = <0x200000 0x600000>;
    115 						};
    116 
    117 						rootfs@800000 {
    118 							label = "rootfs";
    119 							reg = <0x800000 0x0f800000>;
    120 						};
    121 					};
    122 				};
    123 			};
    124 		};
    125 
    126 		apb {
    127 			tcb0: timer@fffa0000 {
    128 				timer0: timer@0 {
    129 					compatible = "atmel,tcb-timer";
    130 					reg = <0>, <1>;
    131 				};
    132 
    133 				timer1: timer@2 {
    134 					compatible = "atmel,tcb-timer";
    135 					reg = <2>;
    136 				};
    137 			};
    138 
    139 			usb1: gadget@fffa4000 {
    140 				atmel,vbus-gpio = <&pioB 29 GPIO_ACTIVE_HIGH>;
    141 				status = "okay";
    142 			};
    143 
    144 			spi0: spi@fffc8000 {
    145 				cs-gpios = <&pioA 3 0>, <0>, <&pioA 28 0>, <0>;
    146 				status = "okay";
    147 
    148 				mtd_dataflash@0 {
    149 					compatible = "atmel,at45", "atmel,dataflash";
    150 					reg = <0>;
    151 					spi-max-frequency = <15000000>;
    152 				};
    153 
    154 				tsc2046@2 {
    155 					reg = <2>;
    156 					compatible = "ti,ads7843";
    157 					interrupts-extended = <&pioC 2 IRQ_TYPE_EDGE_BOTH>;
    158 					spi-max-frequency = <3000000>;
    159 					pendown-gpio = <&pioC 2 GPIO_ACTIVE_HIGH>;
    160 
    161 					ti,x-min = /bits/ 16 <150>;
    162 					ti,x-max = /bits/ 16 <3830>;
    163 					ti,y-min = /bits/ 16 <190>;
    164 					ti,y-max = /bits/ 16 <3830>;
    165 					ti,vref-delay-usecs = /bits/ 16 <450>;
    166 					ti,x-plate-ohms = /bits/ 16 <450>;
    167 					ti,y-plate-ohms = /bits/ 16 <250>;
    168 					ti,pressure-max = /bits/ 16 <15000>;
    169 					ti,debounce-rep = /bits/ 16 <0>;
    170 					ti,debounce-tol = /bits/ 16 <65535>;
    171 					ti,debounce-max = /bits/ 16 <1>;
    172 
    173 					wakeup-source;
    174 				};
    175 			};
    176 
    177 			dbgu: serial@fffff200 {
    178 				status = "okay";
    179 			};
    180 
    181 			watchdog@fffffd40 {
    182 				status = "okay";
    183 			};
    184 
    185 		};
    186 	};
    187 
    188 	leds {
    189 		compatible = "gpio-leds";
    190 
    191 		ds8 {
    192 			label = "ds8";
    193 			gpios = <&pioA 13 GPIO_ACTIVE_LOW>;
    194 			linux,default-trigger = "none";
    195 		};
    196 
    197 		ds7 {
    198 			label = "ds7";
    199 			gpios = <&pioA 14 GPIO_ACTIVE_LOW>;
    200 			linux,default-trigger = "nand-disk";
    201 		};
    202 
    203 		ds1 {
    204 			label = "ds1";
    205 			gpios = <&pioA 23 GPIO_ACTIVE_LOW>;
    206 			linux,default-trigger = "heartbeat";
    207 		};
    208 	};
    209 
    210 	gpio_keys {
    211 		compatible = "gpio-keys";
    212 
    213 		button_0 {
    214 			label = "button_0";
    215 			gpios = <&pioA 27 GPIO_ACTIVE_LOW>;
    216 			linux,code = <256>;
    217 			wakeup-source;
    218 		};
    219 
    220 		button_1 {
    221 			label = "button_1";
    222 			gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
    223 			linux,code = <257>;
    224 			wakeup-source;
    225 		};
    226 
    227 		button_2 {
    228 			label = "button_2";
    229 			gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
    230 			linux,code = <258>;
    231 			wakeup-source;
    232 		};
    233 
    234 		button_3 {
    235 			label = "button_3";
    236 			gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
    237 			linux,code = <259>;
    238 			wakeup-source;
    239 		};
    240 	};
    241 };
    242