xref: /openbmc/u-boot/arch/arm/dts/at91sam9263ek.dts (revision 470135be)
16cb2a7feSWenyou Yang/*
26cb2a7feSWenyou Yang * at91sam9263ek.dts - Device Tree file for Atmel at91sam9263 reference board
36cb2a7feSWenyou Yang *
46cb2a7feSWenyou Yang *  Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
56cb2a7feSWenyou Yang *
66cb2a7feSWenyou Yang * Licensed under GPLv2 only
76cb2a7feSWenyou Yang */
86cb2a7feSWenyou Yang/dts-v1/;
96cb2a7feSWenyou Yang#include "at91sam9263.dtsi"
106cb2a7feSWenyou Yang
116cb2a7feSWenyou Yang/ {
126cb2a7feSWenyou Yang	model = "Atmel at91sam9263ek";
136cb2a7feSWenyou Yang	compatible = "atmel,at91sam9263ek", "atmel,at91sam9263", "atmel,at91sam9";
146cb2a7feSWenyou Yang
156cb2a7feSWenyou Yang	chosen {
166cb2a7feSWenyou Yang		bootargs = "mem=64M root=/dev/mtdblock5 rw rootfstype=ubifs";
176cb2a7feSWenyou Yang		stdout-path = "serial0:115200n8";
186cb2a7feSWenyou Yang		u-boot,dm-pre-reloc;
196cb2a7feSWenyou Yang	};
206cb2a7feSWenyou Yang
216cb2a7feSWenyou Yang	memory {
226cb2a7feSWenyou Yang		reg = <0x20000000 0x4000000>;
236cb2a7feSWenyou Yang	};
246cb2a7feSWenyou Yang
256cb2a7feSWenyou Yang	clocks {
266cb2a7feSWenyou Yang		slow_xtal {
276cb2a7feSWenyou Yang			clock-frequency = <32768>;
286cb2a7feSWenyou Yang		};
296cb2a7feSWenyou Yang
306cb2a7feSWenyou Yang		main_xtal {
316cb2a7feSWenyou Yang			clock-frequency = <16367660>;
326cb2a7feSWenyou Yang		};
336cb2a7feSWenyou Yang	};
346cb2a7feSWenyou Yang
356cb2a7feSWenyou Yang	ahb {
366cb2a7feSWenyou Yang		apb {
376cb2a7feSWenyou Yang			dbgu: serial@ffffee00 {
386cb2a7feSWenyou Yang				u-boot,dm-pre-reloc;
396cb2a7feSWenyou Yang				status = "okay";
406cb2a7feSWenyou Yang			};
416cb2a7feSWenyou Yang
426cb2a7feSWenyou Yang			usart0: serial@fff8c000 {
436cb2a7feSWenyou Yang				pinctrl-0 = <
446cb2a7feSWenyou Yang					&pinctrl_usart0
456cb2a7feSWenyou Yang					&pinctrl_usart0_rts
466cb2a7feSWenyou Yang					&pinctrl_usart0_cts>;
476cb2a7feSWenyou Yang				status = "okay";
486cb2a7feSWenyou Yang			};
496cb2a7feSWenyou Yang
506cb2a7feSWenyou Yang			macb0: ethernet@fffbc000 {
516cb2a7feSWenyou Yang				phy-mode = "rmii";
526cb2a7feSWenyou Yang				status = "okay";
536cb2a7feSWenyou Yang			};
546cb2a7feSWenyou Yang
556cb2a7feSWenyou Yang			usb1: gadget@fff78000 {
566cb2a7feSWenyou Yang				atmel,vbus-gpio = <&pioA 25 GPIO_ACTIVE_HIGH>;
576cb2a7feSWenyou Yang				status = "okay";
586cb2a7feSWenyou Yang			};
596cb2a7feSWenyou Yang
606cb2a7feSWenyou Yang			mmc0: mmc@fff80000 {
616cb2a7feSWenyou Yang				pinctrl-0 = <
626cb2a7feSWenyou Yang					&pinctrl_board_mmc0
636cb2a7feSWenyou Yang					&pinctrl_mmc0_clk
646cb2a7feSWenyou Yang					&pinctrl_mmc0_slot0_cmd_dat0
656cb2a7feSWenyou Yang					&pinctrl_mmc0_slot0_dat1_3>;
666cb2a7feSWenyou Yang				status = "okay";
676cb2a7feSWenyou Yang				slot@0 {
686cb2a7feSWenyou Yang					reg = <0>;
696cb2a7feSWenyou Yang					bus-width = <4>;
706cb2a7feSWenyou Yang					cd-gpios = <&pioE 18 GPIO_ACTIVE_HIGH>;
716cb2a7feSWenyou Yang					wp-gpios = <&pioE 19 GPIO_ACTIVE_HIGH>;
726cb2a7feSWenyou Yang				};
736cb2a7feSWenyou Yang			};
746cb2a7feSWenyou Yang
756cb2a7feSWenyou Yang			pinctrl@fffff200 {
766cb2a7feSWenyou Yang				mmc0 {
776cb2a7feSWenyou Yang					pinctrl_board_mmc0: mmc0-board {
786cb2a7feSWenyou Yang						atmel,pins =
796cb2a7feSWenyou Yang							<AT91_PIOE 18 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH 	/* PE18 gpio CD pin pull up and deglitch */
806cb2a7feSWenyou Yang							 AT91_PIOE 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;	/* PE19 gpio WP pin pull up */
816cb2a7feSWenyou Yang					};
826cb2a7feSWenyou Yang				};
836cb2a7feSWenyou Yang			};
846cb2a7feSWenyou Yang
856cb2a7feSWenyou Yang			spi0: spi@fffa4000 {
866cb2a7feSWenyou Yang				status = "okay";
876cb2a7feSWenyou Yang				cs-gpios = <&pioA 5 0>, <0>, <0>, <0>;
886cb2a7feSWenyou Yang				mtd_dataflash@0 {
896cb2a7feSWenyou Yang					compatible = "atmel,at45", "atmel,dataflash";
90*eab36f6dSWenyou.Yang@microchip.com					spi-max-frequency = <15000000>;
916cb2a7feSWenyou Yang					reg = <0>;
926cb2a7feSWenyou Yang				};
936cb2a7feSWenyou Yang			};
946cb2a7feSWenyou Yang
956cb2a7feSWenyou Yang			watchdog@fffffd40 {
966cb2a7feSWenyou Yang				status = "okay";
976cb2a7feSWenyou Yang			};
986cb2a7feSWenyou Yang		};
996cb2a7feSWenyou Yang
1006cb2a7feSWenyou Yang		fb0: fb@0x00700000 {
1016cb2a7feSWenyou Yang			display = <&display0>;
1026cb2a7feSWenyou Yang			status = "okay";
1036cb2a7feSWenyou Yang
1046cb2a7feSWenyou Yang			display0: display {
1056cb2a7feSWenyou Yang				bits-per-pixel = <16>;
1066cb2a7feSWenyou Yang				atmel,lcdcon-backlight;
1076cb2a7feSWenyou Yang				atmel,dmacon = <0x1>;
1086cb2a7feSWenyou Yang				atmel,lcdcon2 = <0x80008002>;
1096cb2a7feSWenyou Yang				atmel,guard-time = <1>;
1106cb2a7feSWenyou Yang
1116cb2a7feSWenyou Yang				display-timings {
1126cb2a7feSWenyou Yang					native-mode = <&timing0>;
1136cb2a7feSWenyou Yang					timing0: timing0 {
1146cb2a7feSWenyou Yang						clock-frequency = <4965000>;
1156cb2a7feSWenyou Yang						hactive = <240>;
1166cb2a7feSWenyou Yang						vactive = <320>;
1176cb2a7feSWenyou Yang						hback-porch = <1>;
1186cb2a7feSWenyou Yang						hfront-porch = <33>;
1196cb2a7feSWenyou Yang						vback-porch = <1>;
1206cb2a7feSWenyou Yang						vfront-porch = <0>;
1216cb2a7feSWenyou Yang						hsync-len = <5>;
1226cb2a7feSWenyou Yang						vsync-len = <1>;
1236cb2a7feSWenyou Yang						hsync-active = <1>;
1246cb2a7feSWenyou Yang						vsync-active = <1>;
1256cb2a7feSWenyou Yang					};
1266cb2a7feSWenyou Yang				};
1276cb2a7feSWenyou Yang			};
1286cb2a7feSWenyou Yang		};
1296cb2a7feSWenyou Yang
1306cb2a7feSWenyou Yang		nand0: nand@40000000 {
1316cb2a7feSWenyou Yang			nand-bus-width = <8>;
1326cb2a7feSWenyou Yang			nand-ecc-mode = "soft";
1336cb2a7feSWenyou Yang			nand-on-flash-bbt = <1>;
1346cb2a7feSWenyou Yang			status = "okay";
1356cb2a7feSWenyou Yang
1366cb2a7feSWenyou Yang			at91bootstrap@0 {
1376cb2a7feSWenyou Yang				label = "at91bootstrap";
1386cb2a7feSWenyou Yang				reg = <0x0 0x20000>;
1396cb2a7feSWenyou Yang			};
1406cb2a7feSWenyou Yang
1416cb2a7feSWenyou Yang			barebox@20000 {
1426cb2a7feSWenyou Yang				label = "barebox";
1436cb2a7feSWenyou Yang				reg = <0x20000 0x40000>;
1446cb2a7feSWenyou Yang			};
1456cb2a7feSWenyou Yang
1466cb2a7feSWenyou Yang			bareboxenv@60000 {
1476cb2a7feSWenyou Yang				label = "bareboxenv";
1486cb2a7feSWenyou Yang				reg = <0x60000 0x20000>;
1496cb2a7feSWenyou Yang			};
1506cb2a7feSWenyou Yang
1516cb2a7feSWenyou Yang			bareboxenv2@80000 {
1526cb2a7feSWenyou Yang				label = "bareboxenv2";
1536cb2a7feSWenyou Yang				reg = <0x80000 0x20000>;
1546cb2a7feSWenyou Yang			};
1556cb2a7feSWenyou Yang
1566cb2a7feSWenyou Yang			oftree@80000 {
1576cb2a7feSWenyou Yang				label = "oftree";
1586cb2a7feSWenyou Yang				reg = <0xa0000 0x20000>;
1596cb2a7feSWenyou Yang			};
1606cb2a7feSWenyou Yang
1616cb2a7feSWenyou Yang			kernel@a0000 {
1626cb2a7feSWenyou Yang				label = "kernel";
1636cb2a7feSWenyou Yang				reg = <0xc0000 0x400000>;
1646cb2a7feSWenyou Yang			};
1656cb2a7feSWenyou Yang
1666cb2a7feSWenyou Yang			rootfs@4a0000 {
1676cb2a7feSWenyou Yang				label = "rootfs";
1686cb2a7feSWenyou Yang				reg = <0x4c0000 0x7800000>;
1696cb2a7feSWenyou Yang			};
1706cb2a7feSWenyou Yang
1716cb2a7feSWenyou Yang			data@7ca0000 {
1726cb2a7feSWenyou Yang				label = "data";
1736cb2a7feSWenyou Yang				reg = <0x7cc0000 0x8340000>;
1746cb2a7feSWenyou Yang			};
1756cb2a7feSWenyou Yang		};
1766cb2a7feSWenyou Yang
1776cb2a7feSWenyou Yang		usb0: ohci@00a00000 {
1786cb2a7feSWenyou Yang			num-ports = <2>;
1796cb2a7feSWenyou Yang			status = "okay";
1806cb2a7feSWenyou Yang			atmel,vbus-gpio = <&pioA 24 GPIO_ACTIVE_HIGH
1816cb2a7feSWenyou Yang					   &pioA 21 GPIO_ACTIVE_HIGH
1826cb2a7feSWenyou Yang					  >;
1836cb2a7feSWenyou Yang		};
1846cb2a7feSWenyou Yang	};
1856cb2a7feSWenyou Yang
1866cb2a7feSWenyou Yang	leds {
1876cb2a7feSWenyou Yang		compatible = "gpio-leds";
1886cb2a7feSWenyou Yang
1896cb2a7feSWenyou Yang		d3 {
1906cb2a7feSWenyou Yang			label = "d3";
1916cb2a7feSWenyou Yang			gpios = <&pioB 7 GPIO_ACTIVE_HIGH>;
1926cb2a7feSWenyou Yang			linux,default-trigger = "heartbeat";
1936cb2a7feSWenyou Yang		};
1946cb2a7feSWenyou Yang
1956cb2a7feSWenyou Yang		d2 {
1966cb2a7feSWenyou Yang			label = "d2";
1976cb2a7feSWenyou Yang			gpios = <&pioC 29 GPIO_ACTIVE_LOW>;
1986cb2a7feSWenyou Yang			linux,default-trigger = "nand-disk";
1996cb2a7feSWenyou Yang		};
2006cb2a7feSWenyou Yang	};
2016cb2a7feSWenyou Yang
2026cb2a7feSWenyou Yang	gpio_keys {
2036cb2a7feSWenyou Yang		compatible = "gpio-keys";
2046cb2a7feSWenyou Yang
2056cb2a7feSWenyou Yang		left_click {
2066cb2a7feSWenyou Yang			label = "left_click";
2076cb2a7feSWenyou Yang			gpios = <&pioC 5 GPIO_ACTIVE_LOW>;
2086cb2a7feSWenyou Yang			linux,code = <272>;
2096cb2a7feSWenyou Yang			wakeup-source;
2106cb2a7feSWenyou Yang		};
2116cb2a7feSWenyou Yang
2126cb2a7feSWenyou Yang		right_click {
2136cb2a7feSWenyou Yang			label = "right_click";
2146cb2a7feSWenyou Yang			gpios = <&pioC 4 GPIO_ACTIVE_LOW>;
2156cb2a7feSWenyou Yang			linux,code = <273>;
2166cb2a7feSWenyou Yang			wakeup-source;
2176cb2a7feSWenyou Yang		};
2186cb2a7feSWenyou Yang	};
2196cb2a7feSWenyou Yang
2206cb2a7feSWenyou Yang	i2c-gpio-0 {
2216cb2a7feSWenyou Yang		status = "okay";
2226cb2a7feSWenyou Yang
2236cb2a7feSWenyou Yang		24c512@50 {
2246cb2a7feSWenyou Yang			compatible = "24c512";
2256cb2a7feSWenyou Yang			reg = <0x50>;
2266cb2a7feSWenyou Yang			pagesize = <128>;
2276cb2a7feSWenyou Yang		};
2286cb2a7feSWenyou Yang	};
2296cb2a7feSWenyou Yang};
230