162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+
262306a36Sopenharmony_ci//
362306a36Sopenharmony_ci// Copyright (C) 2016-2018 Vladimir Zapolskiy <vz@mleia.com>
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci/dts-v1/;
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include "imx31.dtsi"
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
1062306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci/ {
1362306a36Sopenharmony_ci	model = "LogicPD i.MX31 Lite";
1462306a36Sopenharmony_ci	compatible = "logicpd,imx31-lite", "fsl,imx31";
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci	chosen {
1762306a36Sopenharmony_ci		stdout-path = &uart1;
1862306a36Sopenharmony_ci	};
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	memory@80000000 {
2162306a36Sopenharmony_ci		device_type = "memory";
2262306a36Sopenharmony_ci		reg = <0x80000000 0x8000000>;
2362306a36Sopenharmony_ci	};
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci	leds {
2662306a36Sopenharmony_ci		compatible = "gpio-leds";
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci		led0 {
2962306a36Sopenharmony_ci			gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
3062306a36Sopenharmony_ci		};
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci		led1 {
3362306a36Sopenharmony_ci			gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
3462306a36Sopenharmony_ci		};
3562306a36Sopenharmony_ci	};
3662306a36Sopenharmony_ci};
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci&ata {
3962306a36Sopenharmony_ci	status = "okay";
4062306a36Sopenharmony_ci};
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci&nfc {
4362306a36Sopenharmony_ci	nand-bus-width = <8>;
4462306a36Sopenharmony_ci	nand-ecc-mode = "hw";
4562306a36Sopenharmony_ci	nand-on-flash-bbt;
4662306a36Sopenharmony_ci	status = "okay";
4762306a36Sopenharmony_ci};
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci&sdhci1 {
5062306a36Sopenharmony_ci	bus-width = <4>;
5162306a36Sopenharmony_ci	cd-gpios = <&gpio2 11 GPIO_ACTIVE_HIGH>;
5262306a36Sopenharmony_ci	wp-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
5362306a36Sopenharmony_ci	status = "okay";
5462306a36Sopenharmony_ci};
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci&spi2 {
5762306a36Sopenharmony_ci	status = "okay";
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci	pmic@0 {
6062306a36Sopenharmony_ci		compatible = "fsl,mc13783";
6162306a36Sopenharmony_ci		reg = <0>;
6262306a36Sopenharmony_ci		spi-cs-high;
6362306a36Sopenharmony_ci		spi-max-frequency = <1000000>;
6462306a36Sopenharmony_ci		interrupt-parent = <&gpio1>;
6562306a36Sopenharmony_ci		interrupts = <3 IRQ_TYPE_EDGE_RISING>;
6662306a36Sopenharmony_ci
6762306a36Sopenharmony_ci		fsl,mc13xxx-uses-adc;
6862306a36Sopenharmony_ci		fsl,mc13xxx-uses-rtc;
6962306a36Sopenharmony_ci
7062306a36Sopenharmony_ci		regulators {
7162306a36Sopenharmony_ci			sw1a {		/* QVCC */
7262306a36Sopenharmony_ci				regulator-min-microvolt = <1200000>;
7362306a36Sopenharmony_ci				regulator-max-microvolt = <1500000>;
7462306a36Sopenharmony_ci				regulator-always-on;
7562306a36Sopenharmony_ci				regulator-boot-on;
7662306a36Sopenharmony_ci			};
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci			sw1b {		/* QVCC */
7962306a36Sopenharmony_ci				regulator-min-microvolt = <1200000>;
8062306a36Sopenharmony_ci				regulator-max-microvolt = <1500000>;
8162306a36Sopenharmony_ci				regulator-always-on;
8262306a36Sopenharmony_ci				regulator-boot-on;
8362306a36Sopenharmony_ci			};
8462306a36Sopenharmony_ci
8562306a36Sopenharmony_ci			sw2a {		/* 1.8V_DDR, NVCC2, NVCC21 and NVCC22 */
8662306a36Sopenharmony_ci				regulator-min-microvolt = <1800000>;
8762306a36Sopenharmony_ci				regulator-max-microvolt = <1800000>;
8862306a36Sopenharmony_ci				regulator-always-on;
8962306a36Sopenharmony_ci				regulator-boot-on;
9062306a36Sopenharmony_ci			};
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_ci			sw2b {		/* NVCC10 */
9362306a36Sopenharmony_ci				regulator-min-microvolt = <1800000>;
9462306a36Sopenharmony_ci				regulator-max-microvolt = <1800000>;
9562306a36Sopenharmony_ci				regulator-always-on;
9662306a36Sopenharmony_ci				regulator-boot-on;
9762306a36Sopenharmony_ci			};
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci			violo {		/* NVCC1 and NVCC7 */
10062306a36Sopenharmony_ci				regulator-min-microvolt = <1800000>;
10162306a36Sopenharmony_ci				regulator-max-microvolt = <1800000>;
10262306a36Sopenharmony_ci				regulator-always-on;
10362306a36Sopenharmony_ci				regulator-boot-on;
10462306a36Sopenharmony_ci			};
10562306a36Sopenharmony_ci
10662306a36Sopenharmony_ci			viohi {		/* VIOHI */
10762306a36Sopenharmony_ci				regulator-min-microvolt = <2775000>;
10862306a36Sopenharmony_ci				regulator-max-microvolt = <2775000>;
10962306a36Sopenharmony_ci				regulator-always-on;
11062306a36Sopenharmony_ci				regulator-boot-on;
11162306a36Sopenharmony_ci			};
11262306a36Sopenharmony_ci
11362306a36Sopenharmony_ci			vaudio {	/* VAUDIO */
11462306a36Sopenharmony_ci				regulator-min-microvolt = <2775000>;
11562306a36Sopenharmony_ci				regulator-max-microvolt = <2775000>;
11662306a36Sopenharmony_ci			};
11762306a36Sopenharmony_ci
11862306a36Sopenharmony_ci			vcam {		/* NVCC4 */
11962306a36Sopenharmony_ci				regulator-min-microvolt = <2800000>;
12062306a36Sopenharmony_ci				regulator-max-microvolt = <2800000>;
12162306a36Sopenharmony_ci			};
12262306a36Sopenharmony_ci
12362306a36Sopenharmony_ci			vgen {		/* NVCC5 / NVCC8 and NVCC6 / NVCC9 */
12462306a36Sopenharmony_ci				regulator-min-microvolt = <2775000>;
12562306a36Sopenharmony_ci				regulator-max-microvolt = <2775000>;
12662306a36Sopenharmony_ci				regulator-always-on;
12762306a36Sopenharmony_ci				regulator-boot-on;
12862306a36Sopenharmony_ci			};
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci			vmmc2 {		/* NVCC3 */
13162306a36Sopenharmony_ci				regulator-min-microvolt = <1600000>;
13262306a36Sopenharmony_ci				regulator-max-microvolt = <3000000>;
13362306a36Sopenharmony_ci				regulator-always-on;
13462306a36Sopenharmony_ci				regulator-boot-on;
13562306a36Sopenharmony_ci			};
13662306a36Sopenharmony_ci		};
13762306a36Sopenharmony_ci	};
13862306a36Sopenharmony_ci};
13962306a36Sopenharmony_ci
14062306a36Sopenharmony_ci&uart1 {
14162306a36Sopenharmony_ci	uart-has-rtscts;
14262306a36Sopenharmony_ci	status = "okay";
14362306a36Sopenharmony_ci};
14462306a36Sopenharmony_ci
14562306a36Sopenharmony_ci/* Routed to the extension board */
14662306a36Sopenharmony_ci&uart2 {
14762306a36Sopenharmony_ci	uart-has-rtscts;
14862306a36Sopenharmony_ci	status = "okay";
14962306a36Sopenharmony_ci};
15062306a36Sopenharmony_ci
15162306a36Sopenharmony_ci/* Routed to the extension board */
15262306a36Sopenharmony_ci&uart3 {
15362306a36Sopenharmony_ci	uart-has-rtscts;
15462306a36Sopenharmony_ci	status = "okay";
15562306a36Sopenharmony_ci};
15662306a36Sopenharmony_ci
15762306a36Sopenharmony_ci&weim {
15862306a36Sopenharmony_ci	status = "okay";
15962306a36Sopenharmony_ci
16062306a36Sopenharmony_ci	nor@0,0 {
16162306a36Sopenharmony_ci		compatible = "cfi-flash";
16262306a36Sopenharmony_ci		reg = <0 0x0 0x200000>;
16362306a36Sopenharmony_ci		bank-width = <2>;
16462306a36Sopenharmony_ci		linux,mtd-name = "physmap-flash.0";
16562306a36Sopenharmony_ci		fsl,weim-cs-timing = <0x0000cf03 0xa0330d01 0x00220800>;
16662306a36Sopenharmony_ci	};
16762306a36Sopenharmony_ci
16862306a36Sopenharmony_ci	ethernet@4,0 {
16962306a36Sopenharmony_ci		compatible = "smsc,lan9117", "smsc,lan9115";
17062306a36Sopenharmony_ci		reg = <4 0x0 0x100>;
17162306a36Sopenharmony_ci		interrupt-parent = <&gpio1>;
17262306a36Sopenharmony_ci		interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
17362306a36Sopenharmony_ci		phy-mode = "mii";
17462306a36Sopenharmony_ci		reg-io-width = <2>;
17562306a36Sopenharmony_ci		smsc,irq-push-pull;
17662306a36Sopenharmony_ci		fsl,weim-cs-timing = <0x00008701 0x04000541 0x00010000>;
17762306a36Sopenharmony_ci	};
17862306a36Sopenharmony_ci};
179