162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright 2012 Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix
462306a36Sopenharmony_ci * Copyright 2012 Steffen Trumtrar <s.trumtrar@pengutronix.de>, Pengutronix
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci/dts-v1/;
862306a36Sopenharmony_ci#include "imx53-tqma53.dtsi"
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci/ {
1162306a36Sopenharmony_ci	model = "TQ MBa53 starter kit";
1262306a36Sopenharmony_ci	compatible = "tq,mba53", "tq,tqma53", "fsl,imx53";
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci	chosen {
1562306a36Sopenharmony_ci		stdout-path = &uart2;
1662306a36Sopenharmony_ci	};
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci	backlight {
1962306a36Sopenharmony_ci		compatible = "pwm-backlight";
2062306a36Sopenharmony_ci		pwms = <&pwm2 0 50000>;
2162306a36Sopenharmony_ci		brightness-levels = <0 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92 96 100>;
2262306a36Sopenharmony_ci		default-brightness-level = <10>;
2362306a36Sopenharmony_ci		enable-gpios = <&gpio7 7 0>;
2462306a36Sopenharmony_ci		power-supply = <&reg_backlight>;
2562306a36Sopenharmony_ci	};
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci	disp1: disp1 {
2862306a36Sopenharmony_ci		compatible = "fsl,imx-parallel-display";
2962306a36Sopenharmony_ci		pinctrl-names = "default";
3062306a36Sopenharmony_ci		pinctrl-0 = <&pinctrl_disp1_1>;
3162306a36Sopenharmony_ci		interface-pix-fmt = "rgb24";
3262306a36Sopenharmony_ci		status = "disabled";
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci		port {
3562306a36Sopenharmony_ci			display1_in: endpoint {
3662306a36Sopenharmony_ci				remote-endpoint = <&ipu_di1_disp1>;
3762306a36Sopenharmony_ci			};
3862306a36Sopenharmony_ci		};
3962306a36Sopenharmony_ci	};
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci	reg_backlight: regulator-backlight {
4262306a36Sopenharmony_ci		compatible = "regulator-fixed";
4362306a36Sopenharmony_ci		regulator-name = "lcd-supply";
4462306a36Sopenharmony_ci		gpio = <&gpio2 5 0>;
4562306a36Sopenharmony_ci		startup-delay-us = <5000>;
4662306a36Sopenharmony_ci	};
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci	reg_3p2v: regulator-3p2v {
4962306a36Sopenharmony_ci		compatible = "regulator-fixed";
5062306a36Sopenharmony_ci		regulator-name = "3P2V";
5162306a36Sopenharmony_ci		regulator-min-microvolt = <3200000>;
5262306a36Sopenharmony_ci		regulator-max-microvolt = <3200000>;
5362306a36Sopenharmony_ci		regulator-always-on;
5462306a36Sopenharmony_ci	};
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci	sound {
5762306a36Sopenharmony_ci		compatible = "tq,imx53-mba53-sgtl5000",
5862306a36Sopenharmony_ci			     "fsl,imx-audio-sgtl5000";
5962306a36Sopenharmony_ci		model = "imx53-mba53-sgtl5000";
6062306a36Sopenharmony_ci		ssi-controller = <&ssi2>;
6162306a36Sopenharmony_ci		audio-codec = <&codec>;
6262306a36Sopenharmony_ci		audio-routing =
6362306a36Sopenharmony_ci			"MIC_IN", "Mic Jack",
6462306a36Sopenharmony_ci			"Mic Jack", "Mic Bias",
6562306a36Sopenharmony_ci			"Headphone Jack", "HP_OUT";
6662306a36Sopenharmony_ci		mux-int-port = <2>;
6762306a36Sopenharmony_ci		mux-ext-port = <5>;
6862306a36Sopenharmony_ci	};
6962306a36Sopenharmony_ci};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci&ldb {
7262306a36Sopenharmony_ci	pinctrl-names = "default";
7362306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_lvds1_1>;
7462306a36Sopenharmony_ci	status = "disabled";
7562306a36Sopenharmony_ci};
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci&iomuxc {
7862306a36Sopenharmony_ci	lvds1 {
7962306a36Sopenharmony_ci		pinctrl_lvds1_1: lvds1-grp1 {
8062306a36Sopenharmony_ci			fsl,pins = <
8162306a36Sopenharmony_ci				MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3 0x80000000
8262306a36Sopenharmony_ci				MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK 0x80000000
8362306a36Sopenharmony_ci				MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2 0x80000000
8462306a36Sopenharmony_ci				MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1 0x80000000
8562306a36Sopenharmony_ci				MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0 0x80000000
8662306a36Sopenharmony_ci			>;
8762306a36Sopenharmony_ci		};
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci		pinctrl_lvds1_2: lvds1-grp2 {
9062306a36Sopenharmony_ci			fsl,pins = <
9162306a36Sopenharmony_ci				MX53_PAD_LVDS1_TX3_P__LDB_LVDS1_TX3 0x80000000
9262306a36Sopenharmony_ci				MX53_PAD_LVDS1_TX2_P__LDB_LVDS1_TX2 0x80000000
9362306a36Sopenharmony_ci				MX53_PAD_LVDS1_CLK_P__LDB_LVDS1_CLK 0x80000000
9462306a36Sopenharmony_ci				MX53_PAD_LVDS1_TX1_P__LDB_LVDS1_TX1 0x80000000
9562306a36Sopenharmony_ci				MX53_PAD_LVDS1_TX0_P__LDB_LVDS1_TX0 0x80000000
9662306a36Sopenharmony_ci			>;
9762306a36Sopenharmony_ci		};
9862306a36Sopenharmony_ci	};
9962306a36Sopenharmony_ci
10062306a36Sopenharmony_ci	disp1 {
10162306a36Sopenharmony_ci		pinctrl_disp1_1: disp1-grp1 {
10262306a36Sopenharmony_ci			fsl,pins = <
10362306a36Sopenharmony_ci				MX53_PAD_EIM_A16__IPU_DI1_DISP_CLK 0x80000000 /* DISP1_CLK */
10462306a36Sopenharmony_ci				MX53_PAD_EIM_DA10__IPU_DI1_PIN15   0x80000000 /* DISP1_DRDY */
10562306a36Sopenharmony_ci				MX53_PAD_EIM_D23__IPU_DI1_PIN2     0x80000000 /* DISP1_HSYNC */
10662306a36Sopenharmony_ci				MX53_PAD_EIM_EB3__IPU_DI1_PIN3     0x80000000 /* DISP1_VSYNC */
10762306a36Sopenharmony_ci				MX53_PAD_EIM_D26__IPU_DISP1_DAT_22 0x80000000
10862306a36Sopenharmony_ci				MX53_PAD_EIM_D27__IPU_DISP1_DAT_23 0x80000000
10962306a36Sopenharmony_ci				MX53_PAD_EIM_D30__IPU_DISP1_DAT_21 0x80000000
11062306a36Sopenharmony_ci				MX53_PAD_EIM_D31__IPU_DISP1_DAT_20 0x80000000
11162306a36Sopenharmony_ci				MX53_PAD_EIM_A24__IPU_DISP1_DAT_19 0x80000000
11262306a36Sopenharmony_ci				MX53_PAD_EIM_A23__IPU_DISP1_DAT_18 0x80000000
11362306a36Sopenharmony_ci				MX53_PAD_EIM_A22__IPU_DISP1_DAT_17 0x80000000
11462306a36Sopenharmony_ci				MX53_PAD_EIM_A21__IPU_DISP1_DAT_16 0x80000000
11562306a36Sopenharmony_ci				MX53_PAD_EIM_A20__IPU_DISP1_DAT_15 0x80000000
11662306a36Sopenharmony_ci				MX53_PAD_EIM_A19__IPU_DISP1_DAT_14 0x80000000
11762306a36Sopenharmony_ci				MX53_PAD_EIM_A18__IPU_DISP1_DAT_13 0x80000000
11862306a36Sopenharmony_ci				MX53_PAD_EIM_A17__IPU_DISP1_DAT_12 0x80000000
11962306a36Sopenharmony_ci				MX53_PAD_EIM_EB0__IPU_DISP1_DAT_11 0x80000000
12062306a36Sopenharmony_ci				MX53_PAD_EIM_EB1__IPU_DISP1_DAT_10 0x80000000
12162306a36Sopenharmony_ci				MX53_PAD_EIM_DA0__IPU_DISP1_DAT_9  0x80000000
12262306a36Sopenharmony_ci				MX53_PAD_EIM_DA1__IPU_DISP1_DAT_8  0x80000000
12362306a36Sopenharmony_ci				MX53_PAD_EIM_DA2__IPU_DISP1_DAT_7  0x80000000
12462306a36Sopenharmony_ci				MX53_PAD_EIM_DA3__IPU_DISP1_DAT_6  0x80000000
12562306a36Sopenharmony_ci				MX53_PAD_EIM_DA4__IPU_DISP1_DAT_5  0x80000000
12662306a36Sopenharmony_ci				MX53_PAD_EIM_DA5__IPU_DISP1_DAT_4  0x80000000
12762306a36Sopenharmony_ci				MX53_PAD_EIM_DA6__IPU_DISP1_DAT_3  0x80000000
12862306a36Sopenharmony_ci				MX53_PAD_EIM_DA7__IPU_DISP1_DAT_2  0x80000000
12962306a36Sopenharmony_ci				MX53_PAD_EIM_DA8__IPU_DISP1_DAT_1  0x80000000
13062306a36Sopenharmony_ci				MX53_PAD_EIM_DA9__IPU_DISP1_DAT_0  0x80000000
13162306a36Sopenharmony_ci			>;
13262306a36Sopenharmony_ci		};
13362306a36Sopenharmony_ci	};
13462306a36Sopenharmony_ci
13562306a36Sopenharmony_ci	tve {
13662306a36Sopenharmony_ci		pinctrl_vga_sync_1: vgasync-grp1 {
13762306a36Sopenharmony_ci			fsl,pins = <
13862306a36Sopenharmony_ci				/* VGA_VSYNC, HSYNC with max drive strength */
13962306a36Sopenharmony_ci				MX53_PAD_EIM_CS1__IPU_DI1_PIN6	   0xe6
14062306a36Sopenharmony_ci				MX53_PAD_EIM_DA15__IPU_DI1_PIN4	   0xe6
14162306a36Sopenharmony_ci			>;
14262306a36Sopenharmony_ci		};
14362306a36Sopenharmony_ci	};
14462306a36Sopenharmony_ci};
14562306a36Sopenharmony_ci
14662306a36Sopenharmony_ci&ipu_di1_disp1 {
14762306a36Sopenharmony_ci	remote-endpoint = <&display1_in>;
14862306a36Sopenharmony_ci};
14962306a36Sopenharmony_ci
15062306a36Sopenharmony_ci&cspi {
15162306a36Sopenharmony_ci	status = "okay";
15262306a36Sopenharmony_ci};
15362306a36Sopenharmony_ci
15462306a36Sopenharmony_ci&audmux {
15562306a36Sopenharmony_ci	status = "okay";
15662306a36Sopenharmony_ci	pinctrl-names = "default";
15762306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_audmux>;
15862306a36Sopenharmony_ci};
15962306a36Sopenharmony_ci
16062306a36Sopenharmony_ci&i2c2 {
16162306a36Sopenharmony_ci	codec: sgtl5000@a {
16262306a36Sopenharmony_ci		compatible = "fsl,sgtl5000";
16362306a36Sopenharmony_ci		reg = <0x0a>;
16462306a36Sopenharmony_ci		#sound-dai-cells = <0>;
16562306a36Sopenharmony_ci		clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>;
16662306a36Sopenharmony_ci		VDDA-supply = <&reg_3p2v>;
16762306a36Sopenharmony_ci		VDDIO-supply = <&reg_3p2v>;
16862306a36Sopenharmony_ci	};
16962306a36Sopenharmony_ci
17062306a36Sopenharmony_ci	expander: pca9554@20 {
17162306a36Sopenharmony_ci		compatible = "pca9554";
17262306a36Sopenharmony_ci		reg = <0x20>;
17362306a36Sopenharmony_ci		interrupts = <109>;
17462306a36Sopenharmony_ci		#gpio-cells = <2>;
17562306a36Sopenharmony_ci		gpio-controller;
17662306a36Sopenharmony_ci	};
17762306a36Sopenharmony_ci
17862306a36Sopenharmony_ci	sensor2: lm75@49 {
17962306a36Sopenharmony_ci		compatible = "lm75";
18062306a36Sopenharmony_ci		reg = <0x49>;
18162306a36Sopenharmony_ci	};
18262306a36Sopenharmony_ci};
18362306a36Sopenharmony_ci
18462306a36Sopenharmony_ci&fec {
18562306a36Sopenharmony_ci	phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
18662306a36Sopenharmony_ci	status = "okay";
18762306a36Sopenharmony_ci};
18862306a36Sopenharmony_ci
18962306a36Sopenharmony_ci&esdhc2 {
19062306a36Sopenharmony_ci	status = "okay";
19162306a36Sopenharmony_ci};
19262306a36Sopenharmony_ci
19362306a36Sopenharmony_ci&uart3 {
19462306a36Sopenharmony_ci	status = "okay";
19562306a36Sopenharmony_ci};
19662306a36Sopenharmony_ci
19762306a36Sopenharmony_ci&ecspi1 {
19862306a36Sopenharmony_ci	status = "okay";
19962306a36Sopenharmony_ci};
20062306a36Sopenharmony_ci
20162306a36Sopenharmony_ci&usbotg {
20262306a36Sopenharmony_ci	dr_mode = "host";
20362306a36Sopenharmony_ci	status = "okay";
20462306a36Sopenharmony_ci};
20562306a36Sopenharmony_ci
20662306a36Sopenharmony_ci&usbh1 {
20762306a36Sopenharmony_ci	status = "okay";
20862306a36Sopenharmony_ci};
20962306a36Sopenharmony_ci
21062306a36Sopenharmony_ci&uart1 {
21162306a36Sopenharmony_ci	status = "okay";
21262306a36Sopenharmony_ci};
21362306a36Sopenharmony_ci
21462306a36Sopenharmony_ci&ssi2 {
21562306a36Sopenharmony_ci	status = "okay";
21662306a36Sopenharmony_ci};
21762306a36Sopenharmony_ci
21862306a36Sopenharmony_ci&uart2 {
21962306a36Sopenharmony_ci	status = "okay";
22062306a36Sopenharmony_ci};
22162306a36Sopenharmony_ci
22262306a36Sopenharmony_ci&can1 {
22362306a36Sopenharmony_ci	status = "okay";
22462306a36Sopenharmony_ci};
22562306a36Sopenharmony_ci
22662306a36Sopenharmony_ci&can2 {
22762306a36Sopenharmony_ci	status = "okay";
22862306a36Sopenharmony_ci};
22962306a36Sopenharmony_ci
23062306a36Sopenharmony_ci&i2c3 {
23162306a36Sopenharmony_ci	status = "okay";
23262306a36Sopenharmony_ci};
23362306a36Sopenharmony_ci
23462306a36Sopenharmony_ci&tve {
23562306a36Sopenharmony_ci	pinctrl-names = "default";
23662306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_vga_sync_1>;
23762306a36Sopenharmony_ci	ddc-i2c-bus = <&i2c3>;
23862306a36Sopenharmony_ci	fsl,tve-mode = "vga";
23962306a36Sopenharmony_ci	fsl,hsync-pin = <4>;
24062306a36Sopenharmony_ci	fsl,vsync-pin = <6>;
24162306a36Sopenharmony_ci	status = "okay";
24262306a36Sopenharmony_ci};
243