162306a36Sopenharmony_ci/*
262306a36Sopenharmony_ci * Copyright 2013 CompuLab Ltd.
362306a36Sopenharmony_ci *
462306a36Sopenharmony_ci * Author: Valentin Raevsky <valentin@compulab.co.il>
562306a36Sopenharmony_ci *
662306a36Sopenharmony_ci * This file is dual-licensed: you can use it either under the terms
762306a36Sopenharmony_ci * of the GPL or the X11 license, at your option. Note that this dual
862306a36Sopenharmony_ci * licensing only applies to this file, and not this project as a
962306a36Sopenharmony_ci * whole.
1062306a36Sopenharmony_ci *
1162306a36Sopenharmony_ci *  a) This file is free software; you can redistribute it and/or
1262306a36Sopenharmony_ci *     modify it under the terms of the GNU General Public License
1362306a36Sopenharmony_ci *     version 2 as published by the Free Software Foundation.
1462306a36Sopenharmony_ci *
1562306a36Sopenharmony_ci *     This file is distributed in the hope that it will be useful,
1662306a36Sopenharmony_ci *     but WITHOUT ANY WARRANTY; without even the implied warranty of
1762306a36Sopenharmony_ci *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1862306a36Sopenharmony_ci *     GNU General Public License for more details.
1962306a36Sopenharmony_ci *
2062306a36Sopenharmony_ci * Or, alternatively,
2162306a36Sopenharmony_ci *
2262306a36Sopenharmony_ci *  b) Permission is hereby granted, free of charge, to any person
2362306a36Sopenharmony_ci *     obtaining a copy of this software and associated documentation
2462306a36Sopenharmony_ci *     files (the "Software"), to deal in the Software without
2562306a36Sopenharmony_ci *     restriction, including without limitation the rights to use,
2662306a36Sopenharmony_ci *     copy, modify, merge, publish, distribute, sublicense, and/or
2762306a36Sopenharmony_ci *     sell copies of the Software, and to permit persons to whom the
2862306a36Sopenharmony_ci *     Software is furnished to do so, subject to the following
2962306a36Sopenharmony_ci *     conditions:
3062306a36Sopenharmony_ci *
3162306a36Sopenharmony_ci *     The above copyright notice and this permission notice shall be
3262306a36Sopenharmony_ci *     included in all copies or substantial portions of the Software.
3362306a36Sopenharmony_ci *
3462306a36Sopenharmony_ci *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
3562306a36Sopenharmony_ci *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
3662306a36Sopenharmony_ci *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
3762306a36Sopenharmony_ci *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
3862306a36Sopenharmony_ci *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
3962306a36Sopenharmony_ci *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4062306a36Sopenharmony_ci *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4162306a36Sopenharmony_ci *     OTHER DEALINGS IN THE SOFTWARE.
4262306a36Sopenharmony_ci */
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci/dts-v1/;
4562306a36Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
4662306a36Sopenharmony_ci#include <dt-bindings/sound/fsl-imx-audmux.h>
4762306a36Sopenharmony_ci#include "imx6q.dtsi"
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci/ {
5062306a36Sopenharmony_ci	model = "CompuLab CM-FX6";
5162306a36Sopenharmony_ci	compatible = "compulab,cm-fx6", "fsl,imx6q";
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci	memory@10000000 {
5462306a36Sopenharmony_ci		device_type = "memory";
5562306a36Sopenharmony_ci		reg = <0x10000000 0x80000000>;
5662306a36Sopenharmony_ci	};
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci	leds {
5962306a36Sopenharmony_ci		compatible = "gpio-leds";
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci		heartbeat-led {
6262306a36Sopenharmony_ci			label = "Heartbeat";
6362306a36Sopenharmony_ci			gpios = <&gpio2 31 0>;
6462306a36Sopenharmony_ci			linux,default-trigger = "heartbeat";
6562306a36Sopenharmony_ci		};
6662306a36Sopenharmony_ci	};
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ci	awnh387_pwrseq: pwrseq {
6962306a36Sopenharmony_ci		pinctrl-names = "default";
7062306a36Sopenharmony_ci		pinctrl-0 = <&pinctrl_pwrseq>;
7162306a36Sopenharmony_ci		compatible = "mmc-pwrseq-sd8787";
7262306a36Sopenharmony_ci		powerdown-gpios = <&gpio7 12 GPIO_ACTIVE_HIGH>;
7362306a36Sopenharmony_ci		reset-gpios = <&gpio6 16 GPIO_ACTIVE_HIGH>;
7462306a36Sopenharmony_ci	};
7562306a36Sopenharmony_ci
7662306a36Sopenharmony_ci	reg_pcie_power_on_gpio: regulator-pcie-power-on-gpio {
7762306a36Sopenharmony_ci		compatible = "regulator-fixed";
7862306a36Sopenharmony_ci		regulator-name = "regulator-pcie-power-on-gpio";
7962306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
8062306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
8162306a36Sopenharmony_ci		gpio = <&gpio2 24 GPIO_ACTIVE_LOW>;
8262306a36Sopenharmony_ci	};
8362306a36Sopenharmony_ci
8462306a36Sopenharmony_ci	reg_usb_h1_vbus: usb_h1_vbus {
8562306a36Sopenharmony_ci		compatible = "regulator-fixed";
8662306a36Sopenharmony_ci		regulator-name = "usb_h1_vbus";
8762306a36Sopenharmony_ci		regulator-min-microvolt = <5000000>;
8862306a36Sopenharmony_ci		regulator-max-microvolt = <5000000>;
8962306a36Sopenharmony_ci		gpio = <&gpio7 8 GPIO_ACTIVE_HIGH>;
9062306a36Sopenharmony_ci		enable-active-high;
9162306a36Sopenharmony_ci	};
9262306a36Sopenharmony_ci
9362306a36Sopenharmony_ci	reg_usb_otg_vbus: usb_otg_vbus {
9462306a36Sopenharmony_ci		compatible = "regulator-fixed";
9562306a36Sopenharmony_ci		regulator-name = "usb_otg_vbus";
9662306a36Sopenharmony_ci		regulator-min-microvolt = <5000000>;
9762306a36Sopenharmony_ci		regulator-max-microvolt = <5000000>;
9862306a36Sopenharmony_ci		gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
9962306a36Sopenharmony_ci		enable-active-high;
10062306a36Sopenharmony_ci	};
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci	sound-analog {
10362306a36Sopenharmony_ci		compatible = "simple-audio-card";
10462306a36Sopenharmony_ci		simple-audio-card,name = "On-board analog audio";
10562306a36Sopenharmony_ci		simple-audio-card,widgets =
10662306a36Sopenharmony_ci			"Headphone", "Headphone Jack",
10762306a36Sopenharmony_ci			"Line", "Line Out",
10862306a36Sopenharmony_ci			"Microphone", "Mic Jack",
10962306a36Sopenharmony_ci			"Line", "Line In";
11062306a36Sopenharmony_ci		simple-audio-card,routing =
11162306a36Sopenharmony_ci			"Headphone Jack", "RHPOUT",
11262306a36Sopenharmony_ci			"Headphone Jack", "LHPOUT",
11362306a36Sopenharmony_ci			"MICIN", "Mic Bias",
11462306a36Sopenharmony_ci			"Mic Bias", "Mic Jack";
11562306a36Sopenharmony_ci		simple-audio-card,format = "i2s";
11662306a36Sopenharmony_ci		simple-audio-card,bitclock-master = <&sound_master>;
11762306a36Sopenharmony_ci		simple-audio-card,frame-master = <&sound_master>;
11862306a36Sopenharmony_ci		simple-audio-card,bitclock-inversion;
11962306a36Sopenharmony_ci
12062306a36Sopenharmony_ci		sound_master: simple-audio-card,cpu {
12162306a36Sopenharmony_ci			sound-dai = <&ssi2>;
12262306a36Sopenharmony_ci			system-clock-frequency = <2822400>;
12362306a36Sopenharmony_ci		};
12462306a36Sopenharmony_ci
12562306a36Sopenharmony_ci		simple-audio-card,codec {
12662306a36Sopenharmony_ci			sound-dai = <&wm8731>;
12762306a36Sopenharmony_ci		};
12862306a36Sopenharmony_ci	};
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci	sound-spdif {
13162306a36Sopenharmony_ci		compatible = "fsl,imx-audio-spdif";
13262306a36Sopenharmony_ci		model = "imx-spdif";
13362306a36Sopenharmony_ci		spdif-controller = <&spdif>;
13462306a36Sopenharmony_ci		spdif-out;
13562306a36Sopenharmony_ci		spdif-in;
13662306a36Sopenharmony_ci	};
13762306a36Sopenharmony_ci};
13862306a36Sopenharmony_ci
13962306a36Sopenharmony_ci&audmux {
14062306a36Sopenharmony_ci	pinctrl-names = "default";
14162306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_audmux>;
14262306a36Sopenharmony_ci	status = "okay";
14362306a36Sopenharmony_ci
14462306a36Sopenharmony_ci	mux-ssi2 {
14562306a36Sopenharmony_ci		fsl,audmux-port = <1>;
14662306a36Sopenharmony_ci		fsl,port-config = <
14762306a36Sopenharmony_ci			(IMX_AUDMUX_V2_PTCR_RCLKDIR |
14862306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_RCSEL(3 | 0x8) |
14962306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_TCLKDIR |
15062306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_TCSEL(3))
15162306a36Sopenharmony_ci			IMX_AUDMUX_V2_PDCR_RXDSEL(3)
15262306a36Sopenharmony_ci		>;
15362306a36Sopenharmony_ci	};
15462306a36Sopenharmony_ci
15562306a36Sopenharmony_ci	mux-audmux4 {
15662306a36Sopenharmony_ci		fsl,audmux-port = <3>;
15762306a36Sopenharmony_ci		fsl,port-config = <
15862306a36Sopenharmony_ci			(IMX_AUDMUX_V2_PTCR_TFSDIR |
15962306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_TFSEL(1) |
16062306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_RCLKDIR |
16162306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_RCSEL(1 | 0x8) |
16262306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_TCLKDIR |
16362306a36Sopenharmony_ci			IMX_AUDMUX_V2_PTCR_TCSEL(1))
16462306a36Sopenharmony_ci			IMX_AUDMUX_V2_PDCR_RXDSEL(1)
16562306a36Sopenharmony_ci		>;
16662306a36Sopenharmony_ci	};
16762306a36Sopenharmony_ci};
16862306a36Sopenharmony_ci
16962306a36Sopenharmony_ci&cpu0 {
17062306a36Sopenharmony_ci	/*
17162306a36Sopenharmony_ci	 * Although the imx6q fuse indicates that 1.2GHz operation is possible,
17262306a36Sopenharmony_ci	 * the module behaves unstable at this frequency. Hence, remove the
17362306a36Sopenharmony_ci	 * 1.2GHz operation point here.
17462306a36Sopenharmony_ci	 */
17562306a36Sopenharmony_ci	operating-points = <
17662306a36Sopenharmony_ci		/* kHz	uV */
17762306a36Sopenharmony_ci		996000	1250000
17862306a36Sopenharmony_ci		852000	1250000
17962306a36Sopenharmony_ci		792000	1175000
18062306a36Sopenharmony_ci		396000	975000
18162306a36Sopenharmony_ci	>;
18262306a36Sopenharmony_ci	fsl,soc-operating-points = <
18362306a36Sopenharmony_ci		/* ARM kHz	SOC-PU uV */
18462306a36Sopenharmony_ci		996000		1250000
18562306a36Sopenharmony_ci		852000		1250000
18662306a36Sopenharmony_ci		792000		1175000
18762306a36Sopenharmony_ci		396000		1175000
18862306a36Sopenharmony_ci	>;
18962306a36Sopenharmony_ci};
19062306a36Sopenharmony_ci
19162306a36Sopenharmony_ci&cpu1 {
19262306a36Sopenharmony_ci	/*
19362306a36Sopenharmony_ci	 * Although the imx6q fuse indicates that 1.2GHz operation is possible,
19462306a36Sopenharmony_ci	 * the module behaves unstable at this frequency. Hence, remove the
19562306a36Sopenharmony_ci	 * 1.2GHz operation point here.
19662306a36Sopenharmony_ci	 */
19762306a36Sopenharmony_ci	operating-points = <
19862306a36Sopenharmony_ci		/* kHz	uV */
19962306a36Sopenharmony_ci		996000	1250000
20062306a36Sopenharmony_ci		852000	1250000
20162306a36Sopenharmony_ci		792000	1175000
20262306a36Sopenharmony_ci		396000	975000
20362306a36Sopenharmony_ci	>;
20462306a36Sopenharmony_ci	fsl,soc-operating-points = <
20562306a36Sopenharmony_ci		/* ARM kHz	SOC-PU uV */
20662306a36Sopenharmony_ci		996000		1250000
20762306a36Sopenharmony_ci		852000		1250000
20862306a36Sopenharmony_ci		792000		1175000
20962306a36Sopenharmony_ci		396000		1175000
21062306a36Sopenharmony_ci	>;
21162306a36Sopenharmony_ci};
21262306a36Sopenharmony_ci
21362306a36Sopenharmony_ci&cpu2 {
21462306a36Sopenharmony_ci	/*
21562306a36Sopenharmony_ci	 * Although the imx6q fuse indicates that 1.2GHz operation is possible,
21662306a36Sopenharmony_ci	 * the module behaves unstable at this frequency. Hence, remove the
21762306a36Sopenharmony_ci	 * 1.2GHz operation point here.
21862306a36Sopenharmony_ci	 */
21962306a36Sopenharmony_ci	operating-points = <
22062306a36Sopenharmony_ci		/* kHz	uV */
22162306a36Sopenharmony_ci		996000	1250000
22262306a36Sopenharmony_ci		852000	1250000
22362306a36Sopenharmony_ci		792000	1175000
22462306a36Sopenharmony_ci		396000	975000
22562306a36Sopenharmony_ci	>;
22662306a36Sopenharmony_ci	fsl,soc-operating-points = <
22762306a36Sopenharmony_ci		/* ARM kHz	SOC-PU uV */
22862306a36Sopenharmony_ci		996000		1250000
22962306a36Sopenharmony_ci		852000		1250000
23062306a36Sopenharmony_ci		792000		1175000
23162306a36Sopenharmony_ci		396000		1175000
23262306a36Sopenharmony_ci	>;
23362306a36Sopenharmony_ci};
23462306a36Sopenharmony_ci
23562306a36Sopenharmony_ci&cpu3 {
23662306a36Sopenharmony_ci	/*
23762306a36Sopenharmony_ci	 * Although the imx6q fuse indicates that 1.2GHz operation is possible,
23862306a36Sopenharmony_ci	 * the module behaves unstable at this frequency. Hence, remove the
23962306a36Sopenharmony_ci	 * 1.2GHz operation point here.
24062306a36Sopenharmony_ci	 */
24162306a36Sopenharmony_ci	operating-points = <
24262306a36Sopenharmony_ci		/* kHz	uV */
24362306a36Sopenharmony_ci		996000	1250000
24462306a36Sopenharmony_ci		852000	1250000
24562306a36Sopenharmony_ci		792000	1175000
24662306a36Sopenharmony_ci		396000	975000
24762306a36Sopenharmony_ci	>;
24862306a36Sopenharmony_ci	fsl,soc-operating-points = <
24962306a36Sopenharmony_ci		/* ARM kHz	SOC-PU uV */
25062306a36Sopenharmony_ci		996000		1250000
25162306a36Sopenharmony_ci		852000		1250000
25262306a36Sopenharmony_ci		792000		1175000
25362306a36Sopenharmony_ci		396000		1175000
25462306a36Sopenharmony_ci	>;
25562306a36Sopenharmony_ci};
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ci&ecspi1 {
25862306a36Sopenharmony_ci	cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>, <&gpio3 19 GPIO_ACTIVE_LOW>;
25962306a36Sopenharmony_ci	pinctrl-names = "default";
26062306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_ecspi1>;
26162306a36Sopenharmony_ci	status = "okay";
26262306a36Sopenharmony_ci
26362306a36Sopenharmony_ci	flash@0 {
26462306a36Sopenharmony_ci		#address-cells = <1>;
26562306a36Sopenharmony_ci		#size-cells = <1>;
26662306a36Sopenharmony_ci		compatible = "jedec,spi-nor";
26762306a36Sopenharmony_ci		spi-max-frequency = <20000000>;
26862306a36Sopenharmony_ci		reg = <0>;
26962306a36Sopenharmony_ci	};
27062306a36Sopenharmony_ci};
27162306a36Sopenharmony_ci
27262306a36Sopenharmony_ci&fec {
27362306a36Sopenharmony_ci	pinctrl-names = "default";
27462306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_enet>;
27562306a36Sopenharmony_ci	phy-mode = "rgmii";
27662306a36Sopenharmony_ci	status = "okay";
27762306a36Sopenharmony_ci};
27862306a36Sopenharmony_ci
27962306a36Sopenharmony_ci&gpmi {
28062306a36Sopenharmony_ci	pinctrl-names = "default";
28162306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_gpmi_nand>;
28262306a36Sopenharmony_ci	status = "okay";
28362306a36Sopenharmony_ci};
28462306a36Sopenharmony_ci
28562306a36Sopenharmony_ci&i2c3 {
28662306a36Sopenharmony_ci	pinctrl-names = "default";
28762306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_i2c3>;
28862306a36Sopenharmony_ci	status = "okay";
28962306a36Sopenharmony_ci	clock-frequency = <100000>;
29062306a36Sopenharmony_ci
29162306a36Sopenharmony_ci	eeprom@50 {
29262306a36Sopenharmony_ci		compatible = "atmel,24c02";
29362306a36Sopenharmony_ci		reg = <0x50>;
29462306a36Sopenharmony_ci		pagesize = <16>;
29562306a36Sopenharmony_ci	};
29662306a36Sopenharmony_ci
29762306a36Sopenharmony_ci	wm8731: codec@1a {
29862306a36Sopenharmony_ci		#sound-dai-cells = <0>;
29962306a36Sopenharmony_ci		compatible = "wlf,wm8731";
30062306a36Sopenharmony_ci		reg = <0x1a>;
30162306a36Sopenharmony_ci	};
30262306a36Sopenharmony_ci};
30362306a36Sopenharmony_ci
30462306a36Sopenharmony_ci&iomuxc {
30562306a36Sopenharmony_ci	pinctrl_audmux: audmuxgrp {
30662306a36Sopenharmony_ci		fsl,pins = <
30762306a36Sopenharmony_ci			MX6QDL_PAD_SD2_CMD__AUD4_RXC   0x17059
30862306a36Sopenharmony_ci			MX6QDL_PAD_SD2_DAT0__AUD4_RXD  0x17059
30962306a36Sopenharmony_ci			MX6QDL_PAD_SD2_DAT3__AUD4_TXC  0x17059
31062306a36Sopenharmony_ci			MX6QDL_PAD_SD2_DAT2__AUD4_TXD  0x17059
31162306a36Sopenharmony_ci			MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x17059
31262306a36Sopenharmony_ci		>;
31362306a36Sopenharmony_ci	};
31462306a36Sopenharmony_ci
31562306a36Sopenharmony_ci	pinctrl_ecspi1: ecspi1grp {
31662306a36Sopenharmony_ci		fsl,pins = <
31762306a36Sopenharmony_ci			MX6QDL_PAD_EIM_D16__ECSPI1_SCLK	0x100b1
31862306a36Sopenharmony_ci			MX6QDL_PAD_EIM_D17__ECSPI1_MISO	0x100b1
31962306a36Sopenharmony_ci			MX6QDL_PAD_EIM_D18__ECSPI1_MOSI	0x100b1
32062306a36Sopenharmony_ci			MX6QDL_PAD_EIM_EB2__GPIO2_IO30	0x100b1
32162306a36Sopenharmony_ci			MX6QDL_PAD_EIM_D19__GPIO3_IO19	0x100b1
32262306a36Sopenharmony_ci		>;
32362306a36Sopenharmony_ci	};
32462306a36Sopenharmony_ci
32562306a36Sopenharmony_ci	pinctrl_enet: enetgrp {
32662306a36Sopenharmony_ci		fsl,pins = <
32762306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RXC__RGMII_RXC		0x1b030
32862306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RD0__RGMII_RD0		0x1b030
32962306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RD1__RGMII_RD1		0x1b030
33062306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RD2__RGMII_RD2		0x1b030
33162306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RD3__RGMII_RD3		0x1b030
33262306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL	0x1b030
33362306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TXC__RGMII_TXC		0x1b030
33462306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TD0__RGMII_TD0		0x1b030
33562306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TD1__RGMII_TD1		0x1b030
33662306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TD2__RGMII_TD2		0x1b030
33762306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TD3__RGMII_TD3		0x1b030
33862306a36Sopenharmony_ci			MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL	0x1b030
33962306a36Sopenharmony_ci			MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK	0x1b0b0
34062306a36Sopenharmony_ci			MX6QDL_PAD_ENET_MDIO__ENET_MDIO		0x1b0b0
34162306a36Sopenharmony_ci			MX6QDL_PAD_ENET_MDC__ENET_MDC		0x1b0b0
34262306a36Sopenharmony_ci		>;
34362306a36Sopenharmony_ci	};
34462306a36Sopenharmony_ci
34562306a36Sopenharmony_ci	pinctrl_gpmi_nand: gpminandgrp {
34662306a36Sopenharmony_ci		fsl,pins = <
34762306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_CLE__NAND_CLE		0xb0b1
34862306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_ALE__NAND_ALE		0xb0b1
34962306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_WP_B__NAND_WP_B	0xb0b1
35062306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_RB0__NAND_READY_B	0xb000
35162306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_CS0__NAND_CE0_B	0xb0b1
35262306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_CS1__NAND_CE1_B	0xb0b1
35362306a36Sopenharmony_ci			MX6QDL_PAD_SD4_CMD__NAND_RE_B		0xb0b1
35462306a36Sopenharmony_ci			MX6QDL_PAD_SD4_CLK__NAND_WE_B		0xb0b1
35562306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D0__NAND_DATA00	0xb0b1
35662306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D1__NAND_DATA01	0xb0b1
35762306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D2__NAND_DATA02	0xb0b1
35862306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D3__NAND_DATA03	0xb0b1
35962306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D4__NAND_DATA04	0xb0b1
36062306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D5__NAND_DATA05	0xb0b1
36162306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D6__NAND_DATA06	0xb0b1
36262306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_D7__NAND_DATA07	0xb0b1
36362306a36Sopenharmony_ci			MX6QDL_PAD_SD4_DAT0__NAND_DQS		0x00b1
36462306a36Sopenharmony_ci		>;
36562306a36Sopenharmony_ci	};
36662306a36Sopenharmony_ci
36762306a36Sopenharmony_ci	pinctrl_i2c3: i2c3grp {
36862306a36Sopenharmony_ci		fsl,pins = <
36962306a36Sopenharmony_ci			MX6QDL_PAD_GPIO_3__I2C3_SCL	0x4001b8b1
37062306a36Sopenharmony_ci			MX6QDL_PAD_GPIO_6__I2C3_SDA	0x4001b8b1
37162306a36Sopenharmony_ci		>;
37262306a36Sopenharmony_ci	};
37362306a36Sopenharmony_ci
37462306a36Sopenharmony_ci	pinctrl_pcie: pciegrp {
37562306a36Sopenharmony_ci		fsl,pins = <
37662306a36Sopenharmony_ci			MX6QDL_PAD_ENET_RXD1__GPIO1_IO26	0x1b0b1
37762306a36Sopenharmony_ci			MX6QDL_PAD_EIM_CS1__GPIO2_IO24	0x1b0b1
37862306a36Sopenharmony_ci		>;
37962306a36Sopenharmony_ci	};
38062306a36Sopenharmony_ci
38162306a36Sopenharmony_ci	pinctrl_pwrseq: pwrseqgrp {
38262306a36Sopenharmony_ci		fsl,pins = <
38362306a36Sopenharmony_ci			MX6QDL_PAD_GPIO_17__GPIO7_IO12		0x1b0b0
38462306a36Sopenharmony_ci			MX6QDL_PAD_NANDF_CS3__GPIO6_IO16	0x1b0b0
38562306a36Sopenharmony_ci		>;
38662306a36Sopenharmony_ci	};
38762306a36Sopenharmony_ci
38862306a36Sopenharmony_ci	pinctrl_spdif: spdifgrp {
38962306a36Sopenharmony_ci		fsl,pins = <
39062306a36Sopenharmony_ci			MX6QDL_PAD_GPIO_16__SPDIF_IN  0x1b0b0
39162306a36Sopenharmony_ci			MX6QDL_PAD_GPIO_19__SPDIF_OUT 0x1b0b0
39262306a36Sopenharmony_ci		>;
39362306a36Sopenharmony_ci	};
39462306a36Sopenharmony_ci
39562306a36Sopenharmony_ci	pinctrl_uart4: uart4grp {
39662306a36Sopenharmony_ci		fsl,pins = <
39762306a36Sopenharmony_ci			MX6QDL_PAD_KEY_COL0__UART4_TX_DATA	0x1b0b1
39862306a36Sopenharmony_ci			MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA	0x1b0b1
39962306a36Sopenharmony_ci		>;
40062306a36Sopenharmony_ci	};
40162306a36Sopenharmony_ci
40262306a36Sopenharmony_ci	pinctrl_usbh1: usbh1grp {
40362306a36Sopenharmony_ci		fsl,pins = <
40462306a36Sopenharmony_ci			MX6QDL_PAD_SD3_RST__GPIO7_IO08	0x1b0b1
40562306a36Sopenharmony_ci		>;
40662306a36Sopenharmony_ci	};
40762306a36Sopenharmony_ci
40862306a36Sopenharmony_ci	pinctrl_usbotg: usbotggrp {
40962306a36Sopenharmony_ci		fsl,pins = <
41062306a36Sopenharmony_ci			MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID	0x17059
41162306a36Sopenharmony_ci			MX6QDL_PAD_EIM_D22__GPIO3_IO22	0x130b0
41262306a36Sopenharmony_ci		>;
41362306a36Sopenharmony_ci	};
41462306a36Sopenharmony_ci
41562306a36Sopenharmony_ci	pinctrl_usdhc1: usdhc1grp {
41662306a36Sopenharmony_ci		fsl,pins = <
41762306a36Sopenharmony_ci			MX6QDL_PAD_SD1_CMD__SD1_CMD	0x17071
41862306a36Sopenharmony_ci			MX6QDL_PAD_SD1_CLK__SD1_CLK	0x10071
41962306a36Sopenharmony_ci			MX6QDL_PAD_SD1_DAT0__SD1_DATA0	0x17071
42062306a36Sopenharmony_ci			MX6QDL_PAD_SD1_DAT1__SD1_DATA1	0x17071
42162306a36Sopenharmony_ci			MX6QDL_PAD_SD1_DAT2__SD1_DATA2	0x17071
42262306a36Sopenharmony_ci			MX6QDL_PAD_SD1_DAT3__SD1_DATA3	0x17071
42362306a36Sopenharmony_ci		>;
42462306a36Sopenharmony_ci	};
42562306a36Sopenharmony_ci};
42662306a36Sopenharmony_ci
42762306a36Sopenharmony_ci&pcie {
42862306a36Sopenharmony_ci	pinctrl-names = "default";
42962306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_pcie>;
43062306a36Sopenharmony_ci	reset-gpio = <&gpio1 26 GPIO_ACTIVE_LOW>;
43162306a36Sopenharmony_ci	vpcie-supply = <&reg_pcie_power_on_gpio>;
43262306a36Sopenharmony_ci	status = "okay";
43362306a36Sopenharmony_ci};
43462306a36Sopenharmony_ci
43562306a36Sopenharmony_ci&sata {
43662306a36Sopenharmony_ci	status = "okay";
43762306a36Sopenharmony_ci};
43862306a36Sopenharmony_ci
43962306a36Sopenharmony_ci&snvs_poweroff {
44062306a36Sopenharmony_ci	status = "okay";
44162306a36Sopenharmony_ci};
44262306a36Sopenharmony_ci
44362306a36Sopenharmony_ci&spdif {
44462306a36Sopenharmony_ci	pinctrl-names = "default";
44562306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_spdif>;
44662306a36Sopenharmony_ci	status = "okay";
44762306a36Sopenharmony_ci};
44862306a36Sopenharmony_ci
44962306a36Sopenharmony_ci&ssi2 {
45062306a36Sopenharmony_ci	assigned-clocks = <&clks IMX6QDL_CLK_SSI2_SEL>,
45162306a36Sopenharmony_ci			<&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>;
45262306a36Sopenharmony_ci	assigned-clock-parents = <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>;
45362306a36Sopenharmony_ci	assigned-clock-rates = <0>, <786432000>;
45462306a36Sopenharmony_ci	status = "okay";
45562306a36Sopenharmony_ci};
45662306a36Sopenharmony_ci
45762306a36Sopenharmony_ci&uart4 {
45862306a36Sopenharmony_ci	pinctrl-names = "default";
45962306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_uart4>;
46062306a36Sopenharmony_ci	status = "okay";
46162306a36Sopenharmony_ci};
46262306a36Sopenharmony_ci
46362306a36Sopenharmony_ci&usbh1 {
46462306a36Sopenharmony_ci	vbus-supply = <&reg_usb_h1_vbus>;
46562306a36Sopenharmony_ci	pinctrl-names = "default";
46662306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usbh1>;
46762306a36Sopenharmony_ci	status = "okay";
46862306a36Sopenharmony_ci};
46962306a36Sopenharmony_ci
47062306a36Sopenharmony_ci&usbotg {
47162306a36Sopenharmony_ci	vbus-supply = <&reg_usb_otg_vbus>;
47262306a36Sopenharmony_ci	pinctrl-names = "default";
47362306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usbotg>;
47462306a36Sopenharmony_ci	dr_mode = "otg";
47562306a36Sopenharmony_ci	status = "okay";
47662306a36Sopenharmony_ci};
47762306a36Sopenharmony_ci
47862306a36Sopenharmony_ci&usdhc1 {
47962306a36Sopenharmony_ci	pinctrl-names = "default";
48062306a36Sopenharmony_ci	pinctrl-0 = <&pinctrl_usdhc1>;
48162306a36Sopenharmony_ci	mmc-pwrseq = <&awnh387_pwrseq>;
48262306a36Sopenharmony_ci	non-removable;
48362306a36Sopenharmony_ci	/*
48462306a36Sopenharmony_ci	 * If the OS probes the Bluetooth AMP function advertised on this bus
48562306a36Sopenharmony_ci	 * but the firmware in place does not support it, the WiFi/BT module
48662306a36Sopenharmony_ci	 * gets unresponsive.
48762306a36Sopenharmony_ci	 * Users who configured their OS properly can enable this node to gain
48862306a36Sopenharmony_ci	 * WiFi and/or plain Bluetooth support.
48962306a36Sopenharmony_ci	 */
49062306a36Sopenharmony_ci	status = "disabled";
49162306a36Sopenharmony_ci};
492