18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * at91sam9263ek.dts - Device Tree file for Atmel at91sam9263 reference board
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci *  Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci/dts-v1/;
88c2ecf20Sopenharmony_ci#include "at91sam9263.dtsi"
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci/ {
118c2ecf20Sopenharmony_ci	model = "Atmel at91sam9263ek";
128c2ecf20Sopenharmony_ci	compatible = "atmel,at91sam9263ek", "atmel,at91sam9263", "atmel,at91sam9";
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci	chosen {
158c2ecf20Sopenharmony_ci		bootargs = "mem=64M root=/dev/mtdblock5 rw rootfstype=ubifs";
168c2ecf20Sopenharmony_ci		stdout-path = "serial0:115200n8";
178c2ecf20Sopenharmony_ci	};
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci	memory@20000000 {
208c2ecf20Sopenharmony_ci		reg = <0x20000000 0x4000000>;
218c2ecf20Sopenharmony_ci	};
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci	clocks {
248c2ecf20Sopenharmony_ci		slow_xtal {
258c2ecf20Sopenharmony_ci			clock-frequency = <32768>;
268c2ecf20Sopenharmony_ci		};
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci		main_xtal {
298c2ecf20Sopenharmony_ci			clock-frequency = <16367660>;
308c2ecf20Sopenharmony_ci		};
318c2ecf20Sopenharmony_ci	};
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci	ahb {
348c2ecf20Sopenharmony_ci		apb {
358c2ecf20Sopenharmony_ci			dbgu: serial@ffffee00 {
368c2ecf20Sopenharmony_ci				status = "okay";
378c2ecf20Sopenharmony_ci			};
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci			tcb0: timer@fff7c000 {
408c2ecf20Sopenharmony_ci				timer@0 {
418c2ecf20Sopenharmony_ci					compatible = "atmel,tcb-timer";
428c2ecf20Sopenharmony_ci					reg = <0>, <1>;
438c2ecf20Sopenharmony_ci				};
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci				timer@2 {
468c2ecf20Sopenharmony_ci					compatible = "atmel,tcb-timer";
478c2ecf20Sopenharmony_ci					reg = <2>;
488c2ecf20Sopenharmony_ci				};
498c2ecf20Sopenharmony_ci			};
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci			usart0: serial@fff8c000 {
528c2ecf20Sopenharmony_ci				pinctrl-0 = <
538c2ecf20Sopenharmony_ci					&pinctrl_usart0
548c2ecf20Sopenharmony_ci					&pinctrl_usart0_rts
558c2ecf20Sopenharmony_ci					&pinctrl_usart0_cts>;
568c2ecf20Sopenharmony_ci				status = "okay";
578c2ecf20Sopenharmony_ci			};
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci			macb0: ethernet@fffbc000 {
608c2ecf20Sopenharmony_ci				phy-mode = "rmii";
618c2ecf20Sopenharmony_ci				status = "okay";
628c2ecf20Sopenharmony_ci			};
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci			usb1: gadget@fff78000 {
658c2ecf20Sopenharmony_ci				atmel,vbus-gpio = <&pioA 25 GPIO_ACTIVE_HIGH>;
668c2ecf20Sopenharmony_ci				status = "okay";
678c2ecf20Sopenharmony_ci			};
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci			mmc0: mmc@fff80000 {
708c2ecf20Sopenharmony_ci				pinctrl-0 = <
718c2ecf20Sopenharmony_ci					&pinctrl_board_mmc0
728c2ecf20Sopenharmony_ci					&pinctrl_mmc0_clk
738c2ecf20Sopenharmony_ci					&pinctrl_mmc0_slot0_cmd_dat0
748c2ecf20Sopenharmony_ci					&pinctrl_mmc0_slot0_dat1_3>;
758c2ecf20Sopenharmony_ci				pinctrl-names = "default";
768c2ecf20Sopenharmony_ci				status = "okay";
778c2ecf20Sopenharmony_ci				slot@0 {
788c2ecf20Sopenharmony_ci					reg = <0>;
798c2ecf20Sopenharmony_ci					bus-width = <4>;
808c2ecf20Sopenharmony_ci					cd-gpios = <&pioE 18 GPIO_ACTIVE_HIGH>;
818c2ecf20Sopenharmony_ci					wp-gpios = <&pioE 19 GPIO_ACTIVE_HIGH>;
828c2ecf20Sopenharmony_ci				};
838c2ecf20Sopenharmony_ci			};
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci			pinctrl@fffff200 {
868c2ecf20Sopenharmony_ci				mmc0 {
878c2ecf20Sopenharmony_ci					pinctrl_board_mmc0: mmc0-board {
888c2ecf20Sopenharmony_ci						atmel,pins =
898c2ecf20Sopenharmony_ci							<AT91_PIOE 18 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH 	/* PE18 gpio CD pin pull up and deglitch */
908c2ecf20Sopenharmony_ci							 AT91_PIOE 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;	/* PE19 gpio WP pin pull up */
918c2ecf20Sopenharmony_ci					};
928c2ecf20Sopenharmony_ci				};
938c2ecf20Sopenharmony_ci			};
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci			spi0: spi@fffa4000 {
968c2ecf20Sopenharmony_ci				status = "okay";
978c2ecf20Sopenharmony_ci				cs-gpios = <&pioA 5 0>, <0>, <0>, <0>;
988c2ecf20Sopenharmony_ci				mtd_dataflash@0 {
998c2ecf20Sopenharmony_ci					compatible = "atmel,at45", "atmel,dataflash";
1008c2ecf20Sopenharmony_ci					spi-max-frequency = <50000000>;
1018c2ecf20Sopenharmony_ci					reg = <0>;
1028c2ecf20Sopenharmony_ci				};
1038c2ecf20Sopenharmony_ci			};
1048c2ecf20Sopenharmony_ci
1058c2ecf20Sopenharmony_ci			watchdog@fffffd40 {
1068c2ecf20Sopenharmony_ci				status = "okay";
1078c2ecf20Sopenharmony_ci			};
1088c2ecf20Sopenharmony_ci		};
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_ci		fb0: fb@700000 {
1118c2ecf20Sopenharmony_ci			display = <&display0>;
1128c2ecf20Sopenharmony_ci			status = "okay";
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci			display0: panel {
1158c2ecf20Sopenharmony_ci				bits-per-pixel = <16>;
1168c2ecf20Sopenharmony_ci				atmel,lcdcon-backlight;
1178c2ecf20Sopenharmony_ci				atmel,dmacon = <0x1>;
1188c2ecf20Sopenharmony_ci				atmel,lcdcon2 = <0x80008002>;
1198c2ecf20Sopenharmony_ci				atmel,guard-time = <1>;
1208c2ecf20Sopenharmony_ci
1218c2ecf20Sopenharmony_ci				display-timings {
1228c2ecf20Sopenharmony_ci					native-mode = <&timing0>;
1238c2ecf20Sopenharmony_ci					timing0: timing0 {
1248c2ecf20Sopenharmony_ci						clock-frequency = <4965000>;
1258c2ecf20Sopenharmony_ci						hactive = <240>;
1268c2ecf20Sopenharmony_ci						vactive = <320>;
1278c2ecf20Sopenharmony_ci						hback-porch = <1>;
1288c2ecf20Sopenharmony_ci						hfront-porch = <33>;
1298c2ecf20Sopenharmony_ci						vback-porch = <1>;
1308c2ecf20Sopenharmony_ci						vfront-porch = <0>;
1318c2ecf20Sopenharmony_ci						hsync-len = <5>;
1328c2ecf20Sopenharmony_ci						vsync-len = <1>;
1338c2ecf20Sopenharmony_ci						hsync-active = <1>;
1348c2ecf20Sopenharmony_ci						vsync-active = <1>;
1358c2ecf20Sopenharmony_ci					};
1368c2ecf20Sopenharmony_ci				};
1378c2ecf20Sopenharmony_ci			};
1388c2ecf20Sopenharmony_ci		};
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci		ebi0: ebi@10000000 {
1418c2ecf20Sopenharmony_ci			status = "okay";
1428c2ecf20Sopenharmony_ci
1438c2ecf20Sopenharmony_ci			nand_controller: nand-controller {
1448c2ecf20Sopenharmony_ci				status = "okay";
1458c2ecf20Sopenharmony_ci				pinctrl-0 = <&pinctrl_nand_cs &pinctrl_nand_rb>;
1468c2ecf20Sopenharmony_ci				pinctrl-names = "default";
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ci				nand@3 {
1498c2ecf20Sopenharmony_ci					reg = <0x3 0x0 0x800000>;
1508c2ecf20Sopenharmony_ci					rb-gpios = <&pioA 22 GPIO_ACTIVE_HIGH>;
1518c2ecf20Sopenharmony_ci					cs-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
1528c2ecf20Sopenharmony_ci					nand-bus-width = <8>;
1538c2ecf20Sopenharmony_ci					nand-ecc-mode = "soft";
1548c2ecf20Sopenharmony_ci					nand-on-flash-bbt;
1558c2ecf20Sopenharmony_ci					label = "atmel_nand";
1568c2ecf20Sopenharmony_ci
1578c2ecf20Sopenharmony_ci					partitions {
1588c2ecf20Sopenharmony_ci						compatible = "fixed-partitions";
1598c2ecf20Sopenharmony_ci						#address-cells = <1>;
1608c2ecf20Sopenharmony_ci						#size-cells = <1>;
1618c2ecf20Sopenharmony_ci
1628c2ecf20Sopenharmony_ci						at91bootstrap@0 {
1638c2ecf20Sopenharmony_ci							label = "at91bootstrap";
1648c2ecf20Sopenharmony_ci							reg = <0x0 0x20000>;
1658c2ecf20Sopenharmony_ci						};
1668c2ecf20Sopenharmony_ci
1678c2ecf20Sopenharmony_ci						barebox@20000 {
1688c2ecf20Sopenharmony_ci							label = "barebox";
1698c2ecf20Sopenharmony_ci							reg = <0x20000 0x40000>;
1708c2ecf20Sopenharmony_ci						};
1718c2ecf20Sopenharmony_ci
1728c2ecf20Sopenharmony_ci						bareboxenv@60000 {
1738c2ecf20Sopenharmony_ci							label = "bareboxenv";
1748c2ecf20Sopenharmony_ci							reg = <0x60000 0x20000>;
1758c2ecf20Sopenharmony_ci						};
1768c2ecf20Sopenharmony_ci
1778c2ecf20Sopenharmony_ci						bareboxenv2@80000 {
1788c2ecf20Sopenharmony_ci							label = "bareboxenv2";
1798c2ecf20Sopenharmony_ci							reg = <0x80000 0x20000>;
1808c2ecf20Sopenharmony_ci						};
1818c2ecf20Sopenharmony_ci
1828c2ecf20Sopenharmony_ci						oftree@80000 {
1838c2ecf20Sopenharmony_ci							label = "oftree";
1848c2ecf20Sopenharmony_ci							reg = <0xa0000 0x20000>;
1858c2ecf20Sopenharmony_ci						};
1868c2ecf20Sopenharmony_ci
1878c2ecf20Sopenharmony_ci						kernel@a0000 {
1888c2ecf20Sopenharmony_ci							label = "kernel";
1898c2ecf20Sopenharmony_ci							reg = <0xc0000 0x400000>;
1908c2ecf20Sopenharmony_ci						};
1918c2ecf20Sopenharmony_ci
1928c2ecf20Sopenharmony_ci						rootfs@4a0000 {
1938c2ecf20Sopenharmony_ci							label = "rootfs";
1948c2ecf20Sopenharmony_ci							reg = <0x4c0000 0x7800000>;
1958c2ecf20Sopenharmony_ci						};
1968c2ecf20Sopenharmony_ci
1978c2ecf20Sopenharmony_ci						data@7ca0000 {
1988c2ecf20Sopenharmony_ci							label = "data";
1998c2ecf20Sopenharmony_ci							reg = <0x7cc0000 0x8340000>;
2008c2ecf20Sopenharmony_ci						};
2018c2ecf20Sopenharmony_ci					};
2028c2ecf20Sopenharmony_ci				};
2038c2ecf20Sopenharmony_ci			};
2048c2ecf20Sopenharmony_ci		};
2058c2ecf20Sopenharmony_ci
2068c2ecf20Sopenharmony_ci		usb0: ohci@a00000 {
2078c2ecf20Sopenharmony_ci			num-ports = <2>;
2088c2ecf20Sopenharmony_ci			status = "okay";
2098c2ecf20Sopenharmony_ci			atmel,vbus-gpio = <&pioA 24 GPIO_ACTIVE_HIGH
2108c2ecf20Sopenharmony_ci					   &pioA 21 GPIO_ACTIVE_HIGH
2118c2ecf20Sopenharmony_ci					  >;
2128c2ecf20Sopenharmony_ci		};
2138c2ecf20Sopenharmony_ci	};
2148c2ecf20Sopenharmony_ci
2158c2ecf20Sopenharmony_ci	leds {
2168c2ecf20Sopenharmony_ci		compatible = "gpio-leds";
2178c2ecf20Sopenharmony_ci
2188c2ecf20Sopenharmony_ci		d3 {
2198c2ecf20Sopenharmony_ci			label = "d3";
2208c2ecf20Sopenharmony_ci			gpios = <&pioB 7 GPIO_ACTIVE_HIGH>;
2218c2ecf20Sopenharmony_ci			linux,default-trigger = "heartbeat";
2228c2ecf20Sopenharmony_ci		};
2238c2ecf20Sopenharmony_ci
2248c2ecf20Sopenharmony_ci		d2 {
2258c2ecf20Sopenharmony_ci			label = "d2";
2268c2ecf20Sopenharmony_ci			gpios = <&pioC 29 GPIO_ACTIVE_LOW>;
2278c2ecf20Sopenharmony_ci			linux,default-trigger = "nand-disk";
2288c2ecf20Sopenharmony_ci		};
2298c2ecf20Sopenharmony_ci	};
2308c2ecf20Sopenharmony_ci
2318c2ecf20Sopenharmony_ci	gpio_keys {
2328c2ecf20Sopenharmony_ci		compatible = "gpio-keys";
2338c2ecf20Sopenharmony_ci
2348c2ecf20Sopenharmony_ci		left_click {
2358c2ecf20Sopenharmony_ci			label = "left_click";
2368c2ecf20Sopenharmony_ci			gpios = <&pioC 5 GPIO_ACTIVE_LOW>;
2378c2ecf20Sopenharmony_ci			linux,code = <272>;
2388c2ecf20Sopenharmony_ci			wakeup-source;
2398c2ecf20Sopenharmony_ci		};
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ci		right_click {
2428c2ecf20Sopenharmony_ci			label = "right_click";
2438c2ecf20Sopenharmony_ci			gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
2448c2ecf20Sopenharmony_ci			linux,code = <273>;
2458c2ecf20Sopenharmony_ci			wakeup-source;
2468c2ecf20Sopenharmony_ci		};
2478c2ecf20Sopenharmony_ci	};
2488c2ecf20Sopenharmony_ci
2498c2ecf20Sopenharmony_ci	i2c-gpio-0 {
2508c2ecf20Sopenharmony_ci		status = "okay";
2518c2ecf20Sopenharmony_ci
2528c2ecf20Sopenharmony_ci		24c512@50 {
2538c2ecf20Sopenharmony_ci			compatible = "atmel,24c512";
2548c2ecf20Sopenharmony_ci			reg = <0x50>;
2558c2ecf20Sopenharmony_ci			pagesize = <128>;
2568c2ecf20Sopenharmony_ci		};
2578c2ecf20Sopenharmony_ci	};
2588c2ecf20Sopenharmony_ci};
259