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