Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 160d5f27 authored by Marek Vasut's avatar Marek Vasut Committed by Shawn Guo
Browse files

ARM: mxs: Add SchulerControl SPS1 DTS file



Add DTS file for this custom board.

Signed-off-by: default avatarMarek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
parent a0487864
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \
	imx28-cfa10049.dtb \
	imx28-evk.dtb \
	imx28-m28evk.dtb \
	imx28-sps1.dtb \
	imx28-tx28.dtb
dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
	omap3-beagle-xm.dtb \
+169 −0
Original line number Diff line number Diff line
/*
 * 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 = "SchulerControl GmbH, SC SPS 1";
	compatible = "schulercontrol,imx28-sps1", "fsl,imx28";

	memory {
		reg = <0x40000000 0x08000000>;
	};

	apb@80000000 {
		apbh@80000000 {
			pinctrl@80018000 {
				pinctrl-names = "default";
				pinctrl-0 = <&hog_pins_a>;

				hog_pins_a: hog-gpios@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x0003 /* MX28_PAD_GPMI_D00__GPIO_0_0 */
						0x0033 /* MX28_PAD_GPMI_D03__GPIO_0_3 */
						0x0063 /* MX28_PAD_GPMI_D06__GPIO_0_6 */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};

			};

			ssp0: ssp@80010000 {
				compatible = "fsl,imx28-mmc";
				pinctrl-names = "default";
				pinctrl-0 = <&mmc0_4bit_pins_a>;
				bus-width = <4>;
				status = "okay";
			};

			ssp2: ssp@80014000 {
				#address-cells = <1>;
				#size-cells = <0>;
				compatible = "fsl,imx28-spi";
				pinctrl-names = "default";
				pinctrl-0 = <&spi2_pins_a>;
				status = "okay";

				flash: m25p80@0 {
					#address-cells = <1>;
					#size-cells = <1>;
					compatible = "everspin,mr25h256", "mr25h256";
					spi-max-frequency = <40000000>;
					reg = <0>;
				};
			};
		};

		apbx@80040000 {
			i2c0: i2c@80058000 {
				pinctrl-names = "default";
				pinctrl-0 = <&i2c0_pins_a>;
				clock-frequency = <400000>;
				status = "okay";

				rtc: rtc@51 {
					compatible = "nxp,pcf8563";
					reg = <0x51>;
				};

				eeprom: eeprom@52 {
					compatible = "atmel,24c64";
					reg = <0x52>;
					pagesize = <32>;
				};
			};

			duart: serial@80074000 {
				pinctrl-names = "default";
				pinctrl-0 = <&duart_pins_a>;
				status = "okay";
			};

			usbphy0: usbphy@8007c000 {
				status = "okay";
			};

			auart0: serial@8006a000 {
				pinctrl-names = "default";
				pinctrl-0 = <&auart0_pins_a>;
				status = "okay";
			};
		};
	};

	ahb@80080000 {
		usb0: usb@80080000 {
			vbus-supply = <&reg_usb0_vbus>;
			pinctrl-names = "default";
			pinctrl-0 = <&usbphy0_pins_b>;
			status = "okay";
		};

		mac0: ethernet@800f0000 {
			phy-mode = "rmii";
			pinctrl-names = "default";
			pinctrl-0 = <&mac0_pins_a>;
			status = "okay";
		};

		mac1: ethernet@800f4000 {
			phy-mode = "rmii";
			pinctrl-names = "default";
			pinctrl-0 = <&mac1_pins_a>;
			status = "okay";
		};
	};

	regulators {
		compatible = "simple-bus";

		reg_usb0_vbus: usb0_vbus {
			compatible = "regulator-fixed";
			regulator-name = "usb0_vbus";
			regulator-min-microvolt = <5000000>;
			regulator-max-microvolt = <5000000>;
			gpio = <&gpio3 9 0>;
		};
	};

	leds {
		#address-cells = <1>;
		#size-cells = <0>;
		compatible = "gpio-leds";
		status = "okay";

		led@1 {
			label = "sps1-1:yellow:user";
			gpios = <&gpio0 6 0>;
			linux,default-trigger = "heartbeat";
			reg = <0>;
		};

		led@2 {
			label = "sps1-2:red:user";
			gpios = <&gpio0 3 0>;
			linux,default-trigger = "heartbeat";
			reg = <1>;
		};

		led@3 {
			label = "sps1-3:red:user";
			gpios = <&gpio0 0 0>;
			default-trigger = "heartbeat";
			reg = <2>;
		};

	};
};
+7 −0
Original line number Diff line number Diff line
@@ -290,6 +290,11 @@ static void __init m28evk_init(void)
	mxsfb_pdata.ld_intf_width = STMLCDIF_18BIT;
}

static void __init sc_sps1_init(void)
{
	enable_clk_enet_out();
}

static int apx4devkit_phy_fixup(struct phy_device *phy)
{
	phy->dev_flags |= MICREL_PHY_50MHZ_CLK;
@@ -414,6 +419,8 @@ static void __init mxs_machine_init(void)
		cfa10049_init();
	else if (of_machine_is_compatible("armadeus,imx28-apf28"))
		apf28_init();
	else if (of_machine_is_compatible("schulercontrol,imx28-sps1"))
		sc_sps1_init();

	of_platform_populate(NULL, of_default_bus_match_table,
			     mxs_auxdata_lookup, NULL);