diff mbox

ARM: dts: mxs: add i.MX28 DNET01 board

Message ID 3a9ab6d0-6387-a16f-78f3-51b17c8cd0e4@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

gcembed Jan. 16, 2018, 4:48 p.m. UTC
Hi,
The patch adds support of mx28 DNET01 board
diff mbox

Patch

--- /dev/null	2018-01-16 10:53:53.532519575 +0100
+++ arch/arm/boot/dts/imx28-dnet01.dts	2018-01-16 16:14:49.695120814 +0100
@@ -0,0 +1,184 @@ 
+/*
+ * Copyright (C) 2018 Gaetan Carlier <gcembed@gmail.com>
+ *
+ * based on imx28-m28evk.dts
+ * Copyright (C) 2012 Marek Vasut <marex@denx.de>
+ *
+ * The code contained herein is licensed under the GNU General Public
+ * License. You may obtain a copy of the GNU General Public License
+ * Version 2 or later at the following locations:
+ *
+ * http://www.opensource.org/licenses/gpl-license.html
+ * http://www.gnu.org/copyleft/gpl.html
+ */
+
+/dts-v1/;
+#include "imx28.dtsi"
+
+/ {
+	model = "Domintell DNET01";
+	compatible = "domintell,dnet01", "fsl,imx28";
+
+	memory {
+		reg = <0x40000000 0x08000000>;
+	};
+
+	apb@80000000 {
+		apbh@80000000 {
+
+			dcp: dcp@80028000 {
+				/*
+				 * Driver is not fully implemented.
+				 * [PATCH] crypto: mxs-dcp - Initialize .statesize fields
+				 * https://www.mail-archive.com/linux-crypto@vger.kernel.org/msg17078.html
+				 */
+				status = "disable";
+			};
+
+			ssp0: ssp@80010000 {
+				compatible = "fsl,imx28-mmc";
+				pinctrl-names = "default";
+				pinctrl-0 = <&mmc0_8bit_pins_a
+					     &mmc0_sck_cfg>;
+				bus-width = <8>;
+				vmmc-supply = <&reg_3p3v>;
+				broken-cd;
+				disable-wp;
+				cap-mmc-highspeed;
+				non-removable;
+				status = "okay";
+			};
+
+			ssp2: ssp@80014000 {
+				#address-cells = <1>;
+				#size-cells = <0>;
+				compatible = "fsl,imx28-spi";
+				pinctrl-names = "default";
+				pinctrl-0 = <&spi2_pins_a>;
+				status = "disable";
+			};
+		};
+
+		apbx@80040000 {
+			mxs_rtc: rtc@80056000 {
+				/*
+				 * Overrides default state from imx28.dtsi
+				 * Internal RTC must be disable as a high
+				 * precision I2C is connected.
+				 */
+				status = "disabled";
+			};
+
+			i2c0: i2c@80058000 {
+				pinctrl-names = "default";
+				pinctrl-0 = <&i2c0_pins_a>;
+				status = "okay";
+
+				eeprom: eeprom@57 {
+					compatible = "atmel,24c01";
+					reg = <0x57>;
+					pagesize = <8>;
+					readonly = <1>;
+				};
+
+				mcp7941x_rtc: rtc@6f {
+					compatible = "dallas,mcp7941x";
+					reg = <0x6f>;
+					ds_type = "mcp7941x";
+				};
+			};
+
+			duart: serial@80074000 {
+				pinctrl-names = "default";
+				pinctrl-0 = <&duart_pins_a>;
+				status = "okay";
+			};
+
+			auart4: serial@80072000 {
+				pinctrl-names = "default";
+				pinctrl-0 = <&auart4_2pins_a>;
+				status = "okay";
+			};
+		};
+	};
+
+	ahb@80080000 {
+		mac0: ethernet@800f0000 {
+			phy-mode = "rmii";
+			pinctrl-names = "default";
+			pinctrl-0 = <&mac0_pins_a>;
+			phy-supply = <&reg_3p3v>;
+			phy-reset-gpios = <&gpio4 13 0>;
+			phy-reset-duration = <100>;
+			status = "okay";
+		};
+	};
+
+	regulators {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		reg_3p3v: regulator@0 {
+			compatible = "regulator-fixed";
+			reg = <0>;
+			regulator-name = "3P3V";
+			regulator-min-microvolt = <3300000>;
+			regulator-max-microvolt = <3300000>;
+			regulator-always-on;
+		};
+	};
+
+	leds {
+		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_leds>;
+
+		stm32rdyrx {
+			/* Used to indicate that i.MX is ready to receive data from STM32 */
+			label = "stm32rdyrx";
+			gpios = <&gpio2 27 0>;
+			linux,default-trigger = "none";
+		};
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_gpio>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		stm32err {
+			/* SPI_ERR : Used by STM32 that RS485 bus is busy or if sending of data has failed */
+			label = "STM32 error-busy";
+			gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
+			/* KEY_F23 0xC1 = 193 */
+			linux,code = <193>;
+			debounce-interval = <0>;
+		};
+	};
+};
+
+&pinctrl {
+	pinctrl_gpio: gpiokeygrp {
+		reg = <0>;
+		fsl,pinmux-ids = <
+			MX28_PAD_GPMI_RDN__GPIO_0_24
+		>;
+		fsl,drive-strength = <MXS_DRIVE_4mA>;
+		fsl,voltage = <MXS_VOLTAGE_HIGH>;
+		fsl,pull-up = <MXS_PULL_ENABLE>;
+	};
+
+	pinctrl_leds: ledsgrp {
+		reg = <0>;
+		fsl,pinmux-ids = <
+			MX28_PAD_GPMI_CE0N__GPIO_0_16
+			MX28_PAD_SSP3_SS0__GPIO_2_27
+		>;
+		fsl,drive-strength = <MXS_DRIVE_4mA>;
+		fsl,voltage = <MXS_VOLTAGE_HIGH>;
+		fsl,pull-up = <MXS_PULL_DISABLE>;
+       };
+};