Commit e1a4d18f authored by Shawn Guo's avatar Shawn Guo
Browse files

ARM: mxs: convert tx28 board to device tree



FEC support is missing because we need to find a proper way to rewrite
tx28_add_fec0 for device tree boot.

Cc: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
parent 3143bbb4
Loading
Loading
Loading
Loading
+36 −0
Original line number Diff line number Diff line
@@ -186,6 +186,19 @@
					fsl,pull-up = <0>;
				};

				duart_4pins_a: duart-4pins@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x3022 /* MX28_PAD_AUART0_CTS__DUART_RX */
						0x3032 /* MX28_PAD_AUART0_RTS__DUART_TX */
						0x3002 /* MX28_PAD_AUART0_RX__DUART_CTS */
						0x3012 /* MX28_PAD_AUART0_TX__DUART_RTS */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};

				gpmi_pins_a: gpmi-nand@0 {
					reg = <0>;
					fsl,pinmux-ids = <
@@ -243,6 +256,19 @@
					fsl,pull-up = <0>;
				};

				auart1_pins_a: auart1@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x3040 /* MX28_PAD_AUART1_RX__AUART1_RX */
						0x3050 /* MX28_PAD_AUART1_TX__AUART1_TX */
						0x3060 /* MX28_PAD_AUART1_CTS__AUART1_CTS */
						0x3070 /* MX28_PAD_AUART1_RTS__AUART1_RTS */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};

				auart1_2pins_a: auart1-2pins@0 {
					reg = <0>;
					fsl,pinmux-ids = <
@@ -407,6 +433,16 @@
					fsl,pull-up = <1>;
				};

				pwm0_pins_a: pwm0@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x3100 /* MX28_PAD_PWM0__PWM_0 */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};

				pwm2_pins_a: pwm2@0 {
					reg = <0>;
					fsl,pinmux-ids = <
+97 −0
Original line number Diff line number Diff line
/dts-v1/;
/include/ "imx28.dtsi"

/ {
	model = "Ka-Ro electronics TX28 module";
	compatible = "karo,tx28", "fsl,imx28";

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

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

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

				hog_pins_a: hog-gpios@0 {
					reg = <0>;
					fsl,pinmux-ids = <
						0x40a3 /* MX28_PAD_ENET0_RXD3__GPIO_4_10 */
					>;
					fsl,drive-strength = <0>;
					fsl,voltage = <1>;
					fsl,pull-up = <0>;
				};
			};
		};

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

				ds1339: rtc@68 {
					compatible = "mxim,ds1339";
					reg = <0x68>;
				};
			};

			pwm: pwm@80064000 {
				pinctrl-names = "default";
				pinctrl-0 = <&pwm0_pins_a>;
				status = "okay";
			};

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

			auart1: serial@8006c000 {
				pinctrl-names = "default";
				pinctrl-0 = <&auart1_pins_a>;
				status = "okay";
			};
		};
	};

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

	leds {
		compatible = "gpio-leds";

		user {
			label = "Heartbeat";
			gpios = <&gpio4 10 0>;
			linux,default-trigger = "heartbeat";
		};
	};

	backlight {
		compatible = "pwm-backlight";
		pwms = <&pwm 0 5000000>;
		brightness-levels = <0 4 8 16 32 64 128 255>;
		default-brightness-level = <6>;
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -277,6 +277,7 @@ static const char *imx28_dt_compat[] __initdata = {
	"crystalfontz,cfa10036",
	"denx,m28evk",
	"fsl,imx28-evk",
	"karo,tx28",
	"fsl,imx28",
	NULL,
};