1// SPDX-License-Identifier: GPL-2.0+
2//
3// Copyright (C) 2016-2018 Vladimir Zapolskiy <vz@mleia.com>
4
5/dts-v1/;
6
7#include "imx31.dtsi"
8
9#include <dt-bindings/gpio/gpio.h>
10#include <dt-bindings/interrupt-controller/irq.h>
11
12/ {
13	model = "LogicPD i.MX31 Lite";
14	compatible = "logicpd,imx31-lite", "fsl,imx31";
15
16	chosen {
17		stdout-path = &uart1;
18	};
19
20	memory@80000000 {
21		device_type = "memory";
22		reg = <0x80000000 0x8000000>;
23	};
24
25	leds {
26		compatible = "gpio-leds";
27
28		led0 {
29			gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
30		};
31
32		led1 {
33			gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
34		};
35	};
36};
37
38&ata {
39	status = "okay";
40};
41
42&nfc {
43	nand-bus-width = <8>;
44	nand-ecc-mode = "hw";
45	nand-on-flash-bbt;
46	status = "okay";
47};
48
49&sdhci1 {
50	bus-width = <4>;
51	cd-gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
52	wp-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
53	status = "okay";
54};
55
56&spi2 {
57	status = "okay";
58
59	pmic@0 {
60		compatible = "fsl,mc13783";
61		reg = <0>;
62		spi-cs-high;
63		spi-max-frequency = <1000000>;
64		interrupt-parent = <&gpio1>;
65		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
66
67		fsl,mc13xxx-uses-adc;
68		fsl,mc13xxx-uses-rtc;
69
70		regulators {
71			sw1a {		/* QVCC */
72				regulator-min-microvolt = <1200000>;
73				regulator-max-microvolt = <1500000>;
74				regulator-always-on;
75				regulator-boot-on;
76			};
77
78			sw1b {		/* QVCC */
79				regulator-min-microvolt = <1200000>;
80				regulator-max-microvolt = <1500000>;
81				regulator-always-on;
82				regulator-boot-on;
83			};
84
85			sw2a {		/* 1.8V_DDR, NVCC2, NVCC21 and NVCC22 */
86				regulator-min-microvolt = <1800000>;
87				regulator-max-microvolt = <1800000>;
88				regulator-always-on;
89				regulator-boot-on;
90			};
91
92			sw2b {		/* NVCC10 */
93				regulator-min-microvolt = <1800000>;
94				regulator-max-microvolt = <1800000>;
95				regulator-always-on;
96				regulator-boot-on;
97			};
98
99			violo {		/* NVCC1 and NVCC7 */
100				regulator-min-microvolt = <1800000>;
101				regulator-max-microvolt = <1800000>;
102				regulator-always-on;
103				regulator-boot-on;
104			};
105
106			viohi {		/* VIOHI */
107				regulator-min-microvolt = <2775000>;
108				regulator-max-microvolt = <2775000>;
109				regulator-always-on;
110				regulator-boot-on;
111			};
112
113			vaudio {	/* VAUDIO */
114				regulator-min-microvolt = <2775000>;
115				regulator-max-microvolt = <2775000>;
116			};
117
118			vcam {		/* NVCC4 */
119				regulator-min-microvolt = <2800000>;
120				regulator-max-microvolt = <2800000>;
121			};
122
123			vgen {		/* NVCC5 / NVCC8 and NVCC6 / NVCC9 */
124				regulator-min-microvolt = <2775000>;
125				regulator-max-microvolt = <2775000>;
126				regulator-always-on;
127				regulator-boot-on;
128			};
129
130			vmmc2 {		/* NVCC3 */
131				regulator-min-microvolt = <1600000>;
132				regulator-max-microvolt = <3000000>;
133				regulator-always-on;
134				regulator-boot-on;
135			};
136		};
137	};
138};
139
140&uart1 {
141	uart-has-rtscts;
142	status = "okay";
143};
144
145/* Routed to the extension board */
146&uart2 {
147	uart-has-rtscts;
148	status = "okay";
149};
150
151/* Routed to the extension board */
152&uart3 {
153	uart-has-rtscts;
154	status = "okay";
155};
156
157&weim {
158	status = "okay";
159
160	nor@0,0 {
161		compatible = "cfi-flash";
162		reg = <0 0x0 0x200000>;
163		bank-width = <2>;
164		linux,mtd-name = "physmap-flash.0";
165		fsl,weim-cs-timing = <0x0000cf03 0xa0330d01 0x00220800>;
166	};
167
168	ethernet@4,0 {
169		compatible = "smsc,lan9117", "smsc,lan9115";
170		reg = <4 0x0 0x100>;
171		interrupt-parent = <&gpio1>;
172		interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
173		phy-mode = "mii";
174		reg-io-width = <2>;
175		smsc,irq-push-pull;
176		fsl,weim-cs-timing = <0x00008701 0x04000541 0x00010000>;
177	};
178};
179