183d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+
2da63df7cSMarek Vasut/*
3da63df7cSMarek Vasut * Copyright (C) 2012 Altera Corporation <www.altera.com>
4da63df7cSMarek Vasut */
5da63df7cSMarek Vasut
6da63df7cSMarek Vasut#include "socfpga_cyclone5.dtsi"
7da63df7cSMarek Vasut
8da63df7cSMarek Vasut/ {
9da63df7cSMarek Vasut	model = "Altera SOCFPGA Cyclone V SoC Development Kit";
10*c402e817SSimon Goldschmidt	compatible = "altr,socfpga-cyclone5-socdk", "altr,socfpga-cyclone5", "altr,socfpga";
11da63df7cSMarek Vasut
12da63df7cSMarek Vasut	chosen {
13*c402e817SSimon Goldschmidt		bootargs = "earlyprintk";
1479a436d5SSimon Goldschmidt		stdout-path = "serial0:115200n8";
15da63df7cSMarek Vasut	};
16da63df7cSMarek Vasut
17*c402e817SSimon Goldschmidt	memory@0 {
18da63df7cSMarek Vasut		name = "memory";
19da63df7cSMarek Vasut		device_type = "memory";
20da63df7cSMarek Vasut		reg = <0x0 0x40000000>; /* 1GB */
21da63df7cSMarek Vasut	};
22da63df7cSMarek Vasut
23da63df7cSMarek Vasut	aliases {
24*c402e817SSimon Goldschmidt		/* this allow the ethaddr uboot environmnet variable contents
25da63df7cSMarek Vasut		 * to be added to the gmac1 device tree blob.
26da63df7cSMarek Vasut		 */
27da63df7cSMarek Vasut		ethernet0 = &gmac1;
28*c402e817SSimon Goldschmidt	};
29*c402e817SSimon Goldschmidt
30*c402e817SSimon Goldschmidt	leds {
31*c402e817SSimon Goldschmidt		compatible = "gpio-leds";
32*c402e817SSimon Goldschmidt		hps0 {
33*c402e817SSimon Goldschmidt			label = "hps_led0";
34*c402e817SSimon Goldschmidt			gpios = <&portb 15 1>;
35*c402e817SSimon Goldschmidt		};
36*c402e817SSimon Goldschmidt
37*c402e817SSimon Goldschmidt		hps1 {
38*c402e817SSimon Goldschmidt			label = "hps_led1";
39*c402e817SSimon Goldschmidt			gpios = <&portb 14 1>;
40*c402e817SSimon Goldschmidt		};
41*c402e817SSimon Goldschmidt
42*c402e817SSimon Goldschmidt		hps2 {
43*c402e817SSimon Goldschmidt			label = "hps_led2";
44*c402e817SSimon Goldschmidt			gpios = <&portb 13 1>;
45*c402e817SSimon Goldschmidt		};
46*c402e817SSimon Goldschmidt
47*c402e817SSimon Goldschmidt		hps3 {
48*c402e817SSimon Goldschmidt			label = "hps_led3";
49*c402e817SSimon Goldschmidt			gpios = <&portb 12 1>;
50*c402e817SSimon Goldschmidt		};
51da63df7cSMarek Vasut	};
52da63df7cSMarek Vasut
53da63df7cSMarek Vasut	regulator_3_3v: 3-3-v-regulator {
54da63df7cSMarek Vasut		compatible = "regulator-fixed";
55da63df7cSMarek Vasut		regulator-name = "3.3V";
56da63df7cSMarek Vasut		regulator-min-microvolt = <3300000>;
57da63df7cSMarek Vasut		regulator-max-microvolt = <3300000>;
58da63df7cSMarek Vasut	};
5968909e82SMarek Vasut};
60*c402e817SSimon Goldschmidt
61*c402e817SSimon Goldschmidt&can0 {
62*c402e817SSimon Goldschmidt	status = "okay";
63da63df7cSMarek Vasut};
64da63df7cSMarek Vasut
65da63df7cSMarek Vasut&gmac1 {
66da63df7cSMarek Vasut	status = "okay";
67da63df7cSMarek Vasut	phy-mode = "rgmii";
68da63df7cSMarek Vasut
69da63df7cSMarek Vasut	rxd0-skew-ps = <0>;
70da63df7cSMarek Vasut	rxd1-skew-ps = <0>;
71da63df7cSMarek Vasut	rxd2-skew-ps = <0>;
72da63df7cSMarek Vasut	rxd3-skew-ps = <0>;
73da63df7cSMarek Vasut	txen-skew-ps = <0>;
74da63df7cSMarek Vasut	txc-skew-ps = <2600>;
75da63df7cSMarek Vasut	rxdv-skew-ps = <0>;
76da63df7cSMarek Vasut	rxc-skew-ps = <2000>;
77da63df7cSMarek Vasut};
78da63df7cSMarek Vasut
7945fa6f1dSGeorges Savoundararadj&gpio0 {
8045fa6f1dSGeorges Savoundararadj	status = "okay";
8145fa6f1dSGeorges Savoundararadj};
8245fa6f1dSGeorges Savoundararadj
83da63df7cSMarek Vasut&gpio1 {
84da63df7cSMarek Vasut	status = "okay";
85da63df7cSMarek Vasut};
86da63df7cSMarek Vasut
8745fa6f1dSGeorges Savoundararadj&gpio2 {
8845fa6f1dSGeorges Savoundararadj	status = "okay";
8945fa6f1dSGeorges Savoundararadj};
9045fa6f1dSGeorges Savoundararadj
91da63df7cSMarek Vasut&i2c0 {
92da63df7cSMarek Vasut	status = "okay";
93*c402e817SSimon Goldschmidt	clock-frequency = <100000>;
94*c402e817SSimon Goldschmidt
95*c402e817SSimon Goldschmidt	/*
96*c402e817SSimon Goldschmidt	 * adjust the falling times to decrease the i2c frequency to 50Khz
97*c402e817SSimon Goldschmidt	 * because the LCD module does not work at the standard 100Khz
98*c402e817SSimon Goldschmidt	 */
99*c402e817SSimon Goldschmidt	i2c-sda-falling-time-ns = <5000>;
100*c402e817SSimon Goldschmidt	i2c-scl-falling-time-ns = <5000>;
101da63df7cSMarek Vasut
102da63df7cSMarek Vasut	eeprom@51 {
103da63df7cSMarek Vasut		compatible = "atmel,24c32";
104da63df7cSMarek Vasut		reg = <0x51>;
105da63df7cSMarek Vasut		pagesize = <32>;
106da63df7cSMarek Vasut	};
107da63df7cSMarek Vasut
108da63df7cSMarek Vasut	rtc@68 {
109da63df7cSMarek Vasut		compatible = "dallas,ds1339";
110da63df7cSMarek Vasut		reg = <0x68>;
111da63df7cSMarek Vasut	};
112da63df7cSMarek Vasut};
113da63df7cSMarek Vasut
114da63df7cSMarek Vasut&mmc0 {
115da63df7cSMarek Vasut	cd-gpios = <&portb 18 0>;
116da63df7cSMarek Vasut	vmmc-supply = <&regulator_3_3v>;
117da63df7cSMarek Vasut	vqmmc-supply = <&regulator_3_3v>;
118*c402e817SSimon Goldschmidt	status = "okay";
119da63df7cSMarek Vasut};
120da63df7cSMarek Vasut
121daa23f51SPavel Machek&qspi {
122daa23f51SPavel Machek	status = "okay";
123daa23f51SPavel Machek
124daa23f51SPavel Machek	flash0: n25q00@0 {
125daa23f51SPavel Machek		#address-cells = <1>;
126daa23f51SPavel Machek		#size-cells = <1>;
127*c402e817SSimon Goldschmidt		compatible = "n25q00";
128daa23f51SPavel Machek		reg = <0>;	/* chip select */
129a55f2862SChin Liang See		spi-max-frequency = <100000000>;
130*c402e817SSimon Goldschmidt
131daa23f51SPavel Machek		m25p,fast-read;
132*c402e817SSimon Goldschmidt		cdns,page-size = <256>;
133*c402e817SSimon Goldschmidt		cdns,block-size = <16>;
134*c402e817SSimon Goldschmidt		cdns,read-delay = <4>;
1356e62b178SJason Rush		cdns,tshsl-ns = <50>;
1366e62b178SJason Rush		cdns,tsd2d-ns = <50>;
1376e62b178SJason Rush		cdns,tchsh-ns = <4>;
1386e62b178SJason Rush		cdns,tslch-ns = <4>;
139*c402e817SSimon Goldschmidt
140*c402e817SSimon Goldschmidt		partition@qspi-boot {
141*c402e817SSimon Goldschmidt			/* 8MB for raw data. */
142*c402e817SSimon Goldschmidt			label = "Flash 0 Raw Data";
143*c402e817SSimon Goldschmidt			reg = <0x0 0x800000>;
144*c402e817SSimon Goldschmidt		};
145*c402e817SSimon Goldschmidt
146*c402e817SSimon Goldschmidt		partition@qspi-rootfs {
147*c402e817SSimon Goldschmidt			/* 120MB for jffs2 data. */
148*c402e817SSimon Goldschmidt			label = "Flash 0 jffs2 Filesystem";
149*c402e817SSimon Goldschmidt			reg = <0x800000 0x7800000>;
150*c402e817SSimon Goldschmidt		};
151*c402e817SSimon Goldschmidt	};
152*c402e817SSimon Goldschmidt};
153*c402e817SSimon Goldschmidt
154*c402e817SSimon Goldschmidt&spi0 {
155*c402e817SSimon Goldschmidt	status = "okay";
156*c402e817SSimon Goldschmidt
157*c402e817SSimon Goldschmidt	spidev@0 {
158*c402e817SSimon Goldschmidt		compatible = "rohm,dh2228fv";
159*c402e817SSimon Goldschmidt		reg = <0>;
160*c402e817SSimon Goldschmidt		spi-max-frequency = <1000000>;
161daa23f51SPavel Machek	};
162daa23f51SPavel Machek};
163c90ada94SMarek Vasut
164c90ada94SMarek Vasut&usb1 {
165c90ada94SMarek Vasut	status = "okay";
166c90ada94SMarek Vasut};
167