xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx6qdl-var-som.dtsi (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
184943d6fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
284943d6fSEmmanuel Vadot/*
384943d6fSEmmanuel Vadot * Support for Variscite VAR-SOM-MX6 Module
484943d6fSEmmanuel Vadot *
584943d6fSEmmanuel Vadot * Copyright 2011 Linaro Ltd.
684943d6fSEmmanuel Vadot * Copyright 2012 Freescale Semiconductor, Inc.
784943d6fSEmmanuel Vadot * Copyright (C) 2014-2016 Variscite, Ltd.
884943d6fSEmmanuel Vadot * Author: Donio Ron <ron.d@variscite.com>
984943d6fSEmmanuel Vadot * Copyright 2022 Bootlin
1084943d6fSEmmanuel Vadot */
1184943d6fSEmmanuel Vadot
1284943d6fSEmmanuel Vadot/dts-v1/;
1384943d6fSEmmanuel Vadot
1484943d6fSEmmanuel Vadot#include "imx6q.dtsi"
1584943d6fSEmmanuel Vadot#include <dt-bindings/clock/imx6qdl-clock.h>
1684943d6fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
1784943d6fSEmmanuel Vadot#include <dt-bindings/sound/fsl-imx-audmux.h>
1884943d6fSEmmanuel Vadot
1984943d6fSEmmanuel Vadot/ {
2084943d6fSEmmanuel Vadot	model = "Variscite VAR-SOM-MX6 module";
2184943d6fSEmmanuel Vadot	compatible = "variscite,var-som-imx6q", "fsl,imx6q";
2284943d6fSEmmanuel Vadot
2384943d6fSEmmanuel Vadot	chosen {
2484943d6fSEmmanuel Vadot		stdout-path = &uart1;
2584943d6fSEmmanuel Vadot	};
2684943d6fSEmmanuel Vadot
2784943d6fSEmmanuel Vadot	memory@10000000 {
2884943d6fSEmmanuel Vadot		device_type = "memory";
2984943d6fSEmmanuel Vadot		reg = <0x10000000 0x40000000>;
3084943d6fSEmmanuel Vadot	};
3184943d6fSEmmanuel Vadot
3284943d6fSEmmanuel Vadot	reg_usb_otg_vbus: regulator-usb-otg-vbus {
3384943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
3484943d6fSEmmanuel Vadot		regulator-name = "usb_otg_vbus";
3584943d6fSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
3684943d6fSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
3784943d6fSEmmanuel Vadot	};
3884943d6fSEmmanuel Vadot
3984943d6fSEmmanuel Vadot	reg_usb_h1_vbus: regulator-usb-h1-vbud {
4084943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
4184943d6fSEmmanuel Vadot		regulator-name = "usb_h1_vbus";
4284943d6fSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
4384943d6fSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
4484943d6fSEmmanuel Vadot	};
4584943d6fSEmmanuel Vadot
4684943d6fSEmmanuel Vadot	reg_1p8v: regulator-1p8v {
4784943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
4884943d6fSEmmanuel Vadot		regulator-name = "1P8V";
4984943d6fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
5084943d6fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
5184943d6fSEmmanuel Vadot		regulator-always-on;
5284943d6fSEmmanuel Vadot	};
5384943d6fSEmmanuel Vadot
5484943d6fSEmmanuel Vadot	reg_3p3v: regulator-3p3v {
5584943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
5684943d6fSEmmanuel Vadot		regulator-name = "3P3V";
5784943d6fSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
5884943d6fSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
5984943d6fSEmmanuel Vadot		regulator-always-on;
6084943d6fSEmmanuel Vadot	};
6184943d6fSEmmanuel Vadot
6284943d6fSEmmanuel Vadot	reg_wl18xx_vmmc: regulator-wl18xx {
6384943d6fSEmmanuel Vadot		compatible = "regulator-fixed";
6484943d6fSEmmanuel Vadot		regulator-name = "vwl1807";
6584943d6fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
6684943d6fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
6784943d6fSEmmanuel Vadot		gpio = <&gpio7 8 GPIO_ACTIVE_HIGH>;
6884943d6fSEmmanuel Vadot		enable-active-high;
6984943d6fSEmmanuel Vadot		startup-delay-us = <70000>;
7084943d6fSEmmanuel Vadot	};
7184943d6fSEmmanuel Vadot
7284943d6fSEmmanuel Vadot	sound: sound {
7384943d6fSEmmanuel Vadot		compatible = "simple-audio-card";
7484943d6fSEmmanuel Vadot		simple-audio-card,name = "var-som-audio";
7584943d6fSEmmanuel Vadot		simple-audio-card,format = "i2s";
7684943d6fSEmmanuel Vadot		simple-audio-card,bitclock-master = <&sound_codec>;
7784943d6fSEmmanuel Vadot		simple-audio-card,frame-master = <&sound_codec>;
7884943d6fSEmmanuel Vadot		simple-audio-card,widgets = "Headphone", "Headphone Jack",
7984943d6fSEmmanuel Vadot					    "Line", "Line In", "Microphone", "Mic Jack";
8084943d6fSEmmanuel Vadot		simple-audio-card,routing = "Headphone Jack", "HPLOUT",
8184943d6fSEmmanuel Vadot					    "Headphone Jack", "HPROUT",
8284943d6fSEmmanuel Vadot					    "LINE1L", "Line In",
8384943d6fSEmmanuel Vadot					    "LINE1R", "Line In";
8484943d6fSEmmanuel Vadot
8584943d6fSEmmanuel Vadot		sound_cpu: simple-audio-card,cpu {
8684943d6fSEmmanuel Vadot			sound-dai = <&ssi2>;
8784943d6fSEmmanuel Vadot		};
8884943d6fSEmmanuel Vadot
8984943d6fSEmmanuel Vadot		sound_codec: simple-audio-card,codec {
9084943d6fSEmmanuel Vadot			sound-dai = <&tlv320aic3106>;
9184943d6fSEmmanuel Vadot			clocks = <&clks IMX6QDL_CLK_CKO>;
9284943d6fSEmmanuel Vadot		};
9384943d6fSEmmanuel Vadot	};
9484943d6fSEmmanuel Vadot
9584943d6fSEmmanuel Vadot	rfkill {
9684943d6fSEmmanuel Vadot		compatible = "rfkill-gpio";
9784943d6fSEmmanuel Vadot		name = "rfkill";
9884943d6fSEmmanuel Vadot		radio-type = "bluetooth";
9984943d6fSEmmanuel Vadot		shutdown-gpios = <&gpio6 18 GPIO_ACTIVE_HIGH>;
10084943d6fSEmmanuel Vadot	};
10184943d6fSEmmanuel Vadot};
10284943d6fSEmmanuel Vadot
10384943d6fSEmmanuel Vadot&audmux {
10484943d6fSEmmanuel Vadot	pinctrl-names = "default";
10584943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_audmux>;
10684943d6fSEmmanuel Vadot	status = "okay";
10784943d6fSEmmanuel Vadot
10884943d6fSEmmanuel Vadot	mux-ssi2 {
10984943d6fSEmmanuel Vadot		fsl,audmux-port = <1>;
11084943d6fSEmmanuel Vadot		fsl,port-config = <
11184943d6fSEmmanuel Vadot			(IMX_AUDMUX_V2_PTCR_SYN |
11284943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSDIR |
11384943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSEL(2) |
11484943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCLKDIR |
11584943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCSEL(2))
11684943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PDCR_RXDSEL(2)
11784943d6fSEmmanuel Vadot		>;
11884943d6fSEmmanuel Vadot	};
11984943d6fSEmmanuel Vadot
12084943d6fSEmmanuel Vadot	mux-aud3 {
12184943d6fSEmmanuel Vadot		fsl,audmux-port = <2>;
12284943d6fSEmmanuel Vadot		fsl,port-config = <
12384943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_SYN
12484943d6fSEmmanuel Vadot			IMX_AUDMUX_V2_PDCR_RXDSEL(1)
12584943d6fSEmmanuel Vadot		>;
12684943d6fSEmmanuel Vadot	};
12784943d6fSEmmanuel Vadot};
12884943d6fSEmmanuel Vadot
12984943d6fSEmmanuel Vadot&ecspi3 {
13084943d6fSEmmanuel Vadot	pinctrl-names = "default";
13184943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi3>;
13284943d6fSEmmanuel Vadot	cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
13384943d6fSEmmanuel Vadot	status = "okay";
13484943d6fSEmmanuel Vadot};
13584943d6fSEmmanuel Vadot
13684943d6fSEmmanuel Vadot&fec {
13784943d6fSEmmanuel Vadot	pinctrl-names = "default";
13884943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_enet>;
13984943d6fSEmmanuel Vadot	phy-mode = "rgmii";
14084943d6fSEmmanuel Vadot	phy-handle = <&rgmii_phy>;
14184943d6fSEmmanuel Vadot	status = "okay";
14284943d6fSEmmanuel Vadot
14384943d6fSEmmanuel Vadot	mdio {
14484943d6fSEmmanuel Vadot		#address-cells = <1>;
14584943d6fSEmmanuel Vadot		#size-cells = <0>;
14684943d6fSEmmanuel Vadot
14784943d6fSEmmanuel Vadot		rgmii_phy: ethernet-phy@7 {
14884943d6fSEmmanuel Vadot			reg = <7>;
14984943d6fSEmmanuel Vadot			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
15084943d6fSEmmanuel Vadot			reset-assert-us = <10000>;
15184943d6fSEmmanuel Vadot		};
15284943d6fSEmmanuel Vadot	};
15384943d6fSEmmanuel Vadot};
15484943d6fSEmmanuel Vadot
15584943d6fSEmmanuel Vadot&gpmi {
15684943d6fSEmmanuel Vadot	pinctrl-names = "default";
15784943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_gpmi_nand>;
15884943d6fSEmmanuel Vadot	status = "okay";
15984943d6fSEmmanuel Vadot};
16084943d6fSEmmanuel Vadot
16184943d6fSEmmanuel Vadot&i2c2 {
16284943d6fSEmmanuel Vadot	clock-frequency = <100000>;
16384943d6fSEmmanuel Vadot	pinctrl-names = "default";
16484943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c2>;
16584943d6fSEmmanuel Vadot	status = "okay";
16684943d6fSEmmanuel Vadot
16784943d6fSEmmanuel Vadot	pmic@8 {
16884943d6fSEmmanuel Vadot		compatible = "fsl,pfuze100";
16984943d6fSEmmanuel Vadot		reg = <0x08>;
17084943d6fSEmmanuel Vadot		pinctrl-names = "default";
17184943d6fSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pmic>;
17284943d6fSEmmanuel Vadot
17384943d6fSEmmanuel Vadot		regulators {
17484943d6fSEmmanuel Vadot			sw1a_reg: sw1ab {
17584943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
17684943d6fSEmmanuel Vadot				regulator-max-microvolt = <1875000>;
17784943d6fSEmmanuel Vadot				regulator-boot-on;
17884943d6fSEmmanuel Vadot				regulator-always-on;
17984943d6fSEmmanuel Vadot				regulator-ramp-delay = <6250>;
18084943d6fSEmmanuel Vadot			};
18184943d6fSEmmanuel Vadot
18284943d6fSEmmanuel Vadot			sw1c_reg: sw1c {
18384943d6fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
18484943d6fSEmmanuel Vadot				regulator-max-microvolt = <1875000>;
18584943d6fSEmmanuel Vadot				regulator-boot-on;
18684943d6fSEmmanuel Vadot				regulator-always-on;
18784943d6fSEmmanuel Vadot				regulator-ramp-delay = <6250>;
18884943d6fSEmmanuel Vadot			};
18984943d6fSEmmanuel Vadot
19084943d6fSEmmanuel Vadot			sw2_reg: sw2 {
19184943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
19284943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
19384943d6fSEmmanuel Vadot				regulator-boot-on;
19484943d6fSEmmanuel Vadot				regulator-always-on;
19584943d6fSEmmanuel Vadot			};
19684943d6fSEmmanuel Vadot
19784943d6fSEmmanuel Vadot			sw3a_reg: sw3a {
19884943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
19984943d6fSEmmanuel Vadot				regulator-max-microvolt = <3950000>;
20084943d6fSEmmanuel Vadot				regulator-boot-on;
20184943d6fSEmmanuel Vadot				regulator-always-on;
20284943d6fSEmmanuel Vadot			};
20384943d6fSEmmanuel Vadot
20484943d6fSEmmanuel Vadot			sw3b_reg: sw3b {
20584943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
20684943d6fSEmmanuel Vadot				regulator-max-microvolt = <3950000>;
20784943d6fSEmmanuel Vadot				regulator-boot-on;
20884943d6fSEmmanuel Vadot				regulator-always-on;
20984943d6fSEmmanuel Vadot			};
21084943d6fSEmmanuel Vadot
21184943d6fSEmmanuel Vadot			sw4_reg: sw4 {
21284943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
21384943d6fSEmmanuel Vadot				regulator-max-microvolt = <3950000>;
21484943d6fSEmmanuel Vadot			};
21584943d6fSEmmanuel Vadot
21684943d6fSEmmanuel Vadot			snvs_reg: vsnvs {
21784943d6fSEmmanuel Vadot				regulator-min-microvolt = <1200000>;
21884943d6fSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
21984943d6fSEmmanuel Vadot				regulator-boot-on;
22084943d6fSEmmanuel Vadot				regulator-always-on;
22184943d6fSEmmanuel Vadot			};
22284943d6fSEmmanuel Vadot
22384943d6fSEmmanuel Vadot			vref_reg: vrefddr {
22484943d6fSEmmanuel Vadot				regulator-boot-on;
22584943d6fSEmmanuel Vadot				regulator-always-on;
22684943d6fSEmmanuel Vadot			};
22784943d6fSEmmanuel Vadot
22884943d6fSEmmanuel Vadot			vgen1_reg: vgen1 {
22984943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
23084943d6fSEmmanuel Vadot				regulator-max-microvolt = <1550000>;
23184943d6fSEmmanuel Vadot			};
23284943d6fSEmmanuel Vadot
23384943d6fSEmmanuel Vadot			vgen2_reg: vgen2 {
23484943d6fSEmmanuel Vadot				regulator-min-microvolt = <800000>;
23584943d6fSEmmanuel Vadot				regulator-max-microvolt = <1550000>;
23684943d6fSEmmanuel Vadot			};
23784943d6fSEmmanuel Vadot
23884943d6fSEmmanuel Vadot			vgen3_reg: vgen3 {
23984943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
24084943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
24184943d6fSEmmanuel Vadot				regulator-always-on;
24284943d6fSEmmanuel Vadot				regulator-boot-on;
24384943d6fSEmmanuel Vadot			};
24484943d6fSEmmanuel Vadot
24584943d6fSEmmanuel Vadot			vgen4_reg: vgen4 {
24684943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
24784943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
24884943d6fSEmmanuel Vadot				regulator-always-on;
24984943d6fSEmmanuel Vadot				regulator-boot-on;
25084943d6fSEmmanuel Vadot			};
25184943d6fSEmmanuel Vadot
25284943d6fSEmmanuel Vadot			vgen5_reg: vgen5 {
25384943d6fSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
25484943d6fSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
25584943d6fSEmmanuel Vadot				regulator-always-on;
25684943d6fSEmmanuel Vadot				regulator-boot-on;
25784943d6fSEmmanuel Vadot			};
25884943d6fSEmmanuel Vadot
25984943d6fSEmmanuel Vadot			vgen6_reg: vgen6 {
26084943d6fSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
26184943d6fSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
26284943d6fSEmmanuel Vadot				regulator-always-on;
26384943d6fSEmmanuel Vadot				regulator-boot-on;
26484943d6fSEmmanuel Vadot			};
26584943d6fSEmmanuel Vadot		};
26684943d6fSEmmanuel Vadot	};
26784943d6fSEmmanuel Vadot
26884943d6fSEmmanuel Vadot	tlv320aic3106: audio-codec@1b {
26984943d6fSEmmanuel Vadot		compatible = "ti,tlv320aic3106";
27084943d6fSEmmanuel Vadot		reg = <0x1b>;
27184943d6fSEmmanuel Vadot		#sound-dai-cells = <0>;
27284943d6fSEmmanuel Vadot		DRVDD-supply = <&reg_3p3v>;
27384943d6fSEmmanuel Vadot		AVDD-supply = <&reg_3p3v>;
27484943d6fSEmmanuel Vadot		IOVDD-supply = <&reg_3p3v>;
27584943d6fSEmmanuel Vadot		DVDD-supply = <&reg_1p8v>;
27684943d6fSEmmanuel Vadot		ai3x-ocmv = <0>;
27784943d6fSEmmanuel Vadot		reset-gpios = <&gpio4 5 GPIO_ACTIVE_LOW>;
27884943d6fSEmmanuel Vadot		ai3x-gpio-func = <
27984943d6fSEmmanuel Vadot			0 /* AIC3X_GPIO1_FUNC_DISABLED */
28084943d6fSEmmanuel Vadot			5 /* AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT */
28184943d6fSEmmanuel Vadot		>;
28284943d6fSEmmanuel Vadot	};
28384943d6fSEmmanuel Vadot};
28484943d6fSEmmanuel Vadot
28584943d6fSEmmanuel Vadot&iomuxc {
28684943d6fSEmmanuel Vadot	pinctrl-names = "default";
28784943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_hog>;
28884943d6fSEmmanuel Vadot
28984943d6fSEmmanuel Vadot	pinctrl_audmux: audmuxgrp {
29084943d6fSEmmanuel Vadot		fsl,pins = <
29184943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT7__AUD3_RXD		0x130b0
29284943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT4__AUD3_TXC		0x130b0
29384943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT5__AUD3_TXD		0x110b0
29484943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS		0x130b0
29584943d6fSEmmanuel Vadot			/* Audio Clock */
29684943d6fSEmmanuel Vadot			MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x130b0
29784943d6fSEmmanuel Vadot		>;
29884943d6fSEmmanuel Vadot	};
29984943d6fSEmmanuel Vadot
30084943d6fSEmmanuel Vadot	pinctrl_bt: btgrp {
30184943d6fSEmmanuel Vadot		fsl,pins = <
30284943d6fSEmmanuel Vadot			/* Bluetooth/wifi enable */
30384943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT6__GPIO6_IO18		0x1b0b1
30484943d6fSEmmanuel Vadot			/* Wifi Slow Clock */
30584943d6fSEmmanuel Vadot			MX6QDL_PAD_ENET_RXD0__OSC32K_32K_OUT	0x000b0
30684943d6fSEmmanuel Vadot		>;
30784943d6fSEmmanuel Vadot	};
30884943d6fSEmmanuel Vadot
30984943d6fSEmmanuel Vadot	pinctrl_ecspi3: ecspi3grp {
31084943d6fSEmmanuel Vadot		fsl,pins = <
31184943d6fSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO	0x100b1
31284943d6fSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI	0x100b1
31384943d6fSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK	0x100b1
31484943d6fSEmmanuel Vadot		>;
31584943d6fSEmmanuel Vadot	};
31684943d6fSEmmanuel Vadot
31784943d6fSEmmanuel Vadot	pinctrl_enet: enetgrp {
31884943d6fSEmmanuel Vadot		fsl,pins = <
31984943d6fSEmmanuel Vadot			MX6QDL_PAD_ENET_MDIO__ENET_MDIO		0x1b0b0
32084943d6fSEmmanuel Vadot			MX6QDL_PAD_ENET_MDC__ENET_MDC		0x1b0b0
32184943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TXC__RGMII_TXC		0x1b0b0
32284943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD0__RGMII_TD0		0x1b0b0
32384943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD1__RGMII_TD1		0x1b0b0
32484943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD2__RGMII_TD2		0x1b0b0
32584943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD3__RGMII_TD3		0x1b0b0
32684943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL	0x1b0b0
32784943d6fSEmmanuel Vadot			MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK	0x1b0b0
32884943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RXC__RGMII_RXC		0x1b0b0
32984943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD0__RGMII_RD0		0x1b0b0
33084943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD1__RGMII_RD1		0x1b0b0
33184943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD2__RGMII_RD2		0x1b0b0
33284943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD3__RGMII_RD3		0x1b0b0
33384943d6fSEmmanuel Vadot			MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL	0x1b0b0
33484943d6fSEmmanuel Vadot		>;
33584943d6fSEmmanuel Vadot	};
33684943d6fSEmmanuel Vadot
33784943d6fSEmmanuel Vadot	pinctrl_enet_irq: enetirqgrp {
33884943d6fSEmmanuel Vadot		fsl,pins = <
33984943d6fSEmmanuel Vadot			MX6QDL_PAD_GPIO_6__ENET_IRQ	0x000b1
34084943d6fSEmmanuel Vadot		>;
34184943d6fSEmmanuel Vadot	};
34284943d6fSEmmanuel Vadot
34384943d6fSEmmanuel Vadot	pinctrl_gpmi_nand: gpminandgrp {
34484943d6fSEmmanuel Vadot		fsl,pins = <
34584943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_CLE__NAND_CLE		0xb0b1
34684943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_ALE__NAND_ALE		0xb0b1
34784943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_CS0__NAND_CE0_B	0xb0b1
34884943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_CS1__NAND_CE1_B	0xb0b1
34984943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_RB0__NAND_READY_B	0xb0b1
35084943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D0__NAND_DATA00	0xb0b1
35184943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D1__NAND_DATA01	0xb0b1
35284943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D2__NAND_DATA02	0xb0b1
35384943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D3__NAND_DATA03	0xb0b1
35484943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D4__NAND_DATA04	0xb0b1
35584943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D5__NAND_DATA05	0xb0b1
35684943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D6__NAND_DATA06	0xb0b1
35784943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_D7__NAND_DATA07	0xb0b1
35884943d6fSEmmanuel Vadot			MX6QDL_PAD_SD4_CMD__NAND_RE_B		0xb0b1
35984943d6fSEmmanuel Vadot			MX6QDL_PAD_SD4_CLK__NAND_WE_B		0xb0b1
36084943d6fSEmmanuel Vadot			MX6QDL_PAD_NANDF_WP_B__NAND_WP_B	0xb0b1
36184943d6fSEmmanuel Vadot		>;
36284943d6fSEmmanuel Vadot	};
36384943d6fSEmmanuel Vadot
36484943d6fSEmmanuel Vadot	pinctrl_hog: hoggrp {
36584943d6fSEmmanuel Vadot		fsl,pins = <
36684943d6fSEmmanuel Vadot			/* CTW6120 IRQ */
36784943d6fSEmmanuel Vadot			MX6QDL_PAD_EIM_DA7__GPIO3_IO07		0xb0b1
36884943d6fSEmmanuel Vadot			/* SDMMC2 CD/WP */
36984943d6fSEmmanuel Vadot			MX6QDL_PAD_KEY_COL4__GPIO4_IO14		0x1b0b0
37084943d6fSEmmanuel Vadot			MX6QDL_PAD_KEY_ROW4__GPIO4_IO15		0x1b0b0
37184943d6fSEmmanuel Vadot		>;
37284943d6fSEmmanuel Vadot	};
37384943d6fSEmmanuel Vadot
37484943d6fSEmmanuel Vadot	pinctrl_i2c1: i2c1grp {
37584943d6fSEmmanuel Vadot		fsl,pins = <
37684943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT8__I2C1_SDA	0x4001b8b1
37784943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT9__I2C1_SCL	0x4001b8b1
37884943d6fSEmmanuel Vadot		>;
37984943d6fSEmmanuel Vadot	};
38084943d6fSEmmanuel Vadot
38184943d6fSEmmanuel Vadot	pinctrl_i2c2: i2c2grp {
38284943d6fSEmmanuel Vadot		fsl,pins = <
38384943d6fSEmmanuel Vadot			MX6QDL_PAD_KEY_COL3__I2C2_SCL	0x4001b8b1
38484943d6fSEmmanuel Vadot			MX6QDL_PAD_KEY_ROW3__I2C2_SDA	0x4001b8b1
38584943d6fSEmmanuel Vadot		>;
38684943d6fSEmmanuel Vadot	};
38784943d6fSEmmanuel Vadot
38884943d6fSEmmanuel Vadot	pinctrl_i2c3: i2c3grp {
38984943d6fSEmmanuel Vadot		fsl,pins = <
39084943d6fSEmmanuel Vadot			MX6QDL_PAD_GPIO_5__I2C3_SCL	0x4001b8b1
39184943d6fSEmmanuel Vadot			MX6QDL_PAD_GPIO_16__I2C3_SDA	0x4001b8b1
39284943d6fSEmmanuel Vadot		>;
39384943d6fSEmmanuel Vadot	};
39484943d6fSEmmanuel Vadot
39584943d6fSEmmanuel Vadot	pinctrl_pmic: pmicgrp {
39684943d6fSEmmanuel Vadot		fsl,pins = <
39784943d6fSEmmanuel Vadot			/* PMIC INT */
39884943d6fSEmmanuel Vadot			MX6QDL_PAD_GPIO_17__GPIO7_IO12	0x1b0b0
39984943d6fSEmmanuel Vadot		>;
40084943d6fSEmmanuel Vadot	};
40184943d6fSEmmanuel Vadot
40284943d6fSEmmanuel Vadot	pinctrl_pwm2: pwm2grp {
40384943d6fSEmmanuel Vadot		fsl,pins = <
40484943d6fSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT9__PWM2_OUT	0x1b0b1
40584943d6fSEmmanuel Vadot		>;
40684943d6fSEmmanuel Vadot	};
40784943d6fSEmmanuel Vadot
40884943d6fSEmmanuel Vadot	pinctrl_uart1: uart1grp {
40984943d6fSEmmanuel Vadot		fsl,pins = <
41084943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1
41184943d6fSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1
41284943d6fSEmmanuel Vadot		>;
41384943d6fSEmmanuel Vadot	};
41484943d6fSEmmanuel Vadot
41584943d6fSEmmanuel Vadot	pinctrl_uart2: uart2grp {
41684943d6fSEmmanuel Vadot		fsl,pins = <
41784943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT4__UART2_RX_DATA	0x1b0b1
41884943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT5__UART2_TX_DATA	0x1b0b1
41984943d6fSEmmanuel Vadot			MX6QDL_PAD_EIM_D28__UART2_CTS_B		0x1b0b1
42084943d6fSEmmanuel Vadot			MX6QDL_PAD_EIM_D29__UART2_RTS_B		0x1b0b1
42184943d6fSEmmanuel Vadot		>;
42284943d6fSEmmanuel Vadot	};
42384943d6fSEmmanuel Vadot
42484943d6fSEmmanuel Vadot	pinctrl_usdhc3: usdhc3grp {
42584943d6fSEmmanuel Vadot		fsl,pins = <
42684943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CMD__SD3_CMD	0x17069
42784943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CLK__SD3_CLK	0x10069
42884943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT0__SD3_DATA0	0x17069
42984943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT1__SD3_DATA1	0x17069
43084943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT2__SD3_DATA2	0x17069
43184943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT3__SD3_DATA3	0x17069
43284943d6fSEmmanuel Vadot			/* WL_EN */
43384943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT7__GPIO6_IO17 0x13059
43484943d6fSEmmanuel Vadot			/* WL_IRQ */
43584943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_RST__GPIO7_IO08  0x13059
43684943d6fSEmmanuel Vadot		>;
43784943d6fSEmmanuel Vadot	};
43884943d6fSEmmanuel Vadot
439*b2d2a78aSEmmanuel Vadot	pinctrl_usdhc3_100mhz: usdhc3-100mhz-grp {
44084943d6fSEmmanuel Vadot		fsl,pins = <
44184943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CMD__SD3_CMD	0x170B9
44284943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CLK__SD3_CLK	0x100B9
44384943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT0__SD3_DATA0	0x170B9
44484943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT1__SD3_DATA1	0x170B9
44584943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT3__SD3_DATA3	0x170B9
44684943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT3__SD3_DATA3	0x170B9
44784943d6fSEmmanuel Vadot			/* WL_EN */
44884943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT7__GPIO6_IO17 0x130B9
44984943d6fSEmmanuel Vadot			/* WL_IRQ */
45084943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_RST__GPIO7_IO08  0x130B9
45184943d6fSEmmanuel Vadot		>;
45284943d6fSEmmanuel Vadot	};
45384943d6fSEmmanuel Vadot
454*b2d2a78aSEmmanuel Vadot	pinctrl_usdhc3_200mhz: usdhc3-200mhz-grp {
45584943d6fSEmmanuel Vadot		fsl,pins = <
45684943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CMD__SD3_CMD	0x170F9
45784943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_CLK__SD3_CLK	0x100F9
45884943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT0__SD3_DATA0	0x170F9
45984943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT1__SD3_DATA1	0x170F9
46084943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT2__SD3_DATA2	0x170F9
46184943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT3__SD3_DATA3	0x170F9
46284943d6fSEmmanuel Vadot			/* WL_EN */
46384943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_DAT7__GPIO6_IO17 0x130F9
46484943d6fSEmmanuel Vadot			/* WL_IRQ */
46584943d6fSEmmanuel Vadot			MX6QDL_PAD_SD3_RST__GPIO7_IO08  0x130F9
46684943d6fSEmmanuel Vadot		>;
46784943d6fSEmmanuel Vadot	};
46884943d6fSEmmanuel Vadot};
46984943d6fSEmmanuel Vadot
47084943d6fSEmmanuel Vadot&pwm2 {
47184943d6fSEmmanuel Vadot	pinctrl-names = "default";
47284943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm2>;
47384943d6fSEmmanuel Vadot	status = "okay";
47484943d6fSEmmanuel Vadot};
47584943d6fSEmmanuel Vadot
47684943d6fSEmmanuel Vadot&reg_arm {
47784943d6fSEmmanuel Vadot	vin-supply = <&sw1a_reg>;
47884943d6fSEmmanuel Vadot};
47984943d6fSEmmanuel Vadot
48084943d6fSEmmanuel Vadot&reg_pu {
48184943d6fSEmmanuel Vadot	vin-supply = <&sw1c_reg>;
48284943d6fSEmmanuel Vadot};
48384943d6fSEmmanuel Vadot
48484943d6fSEmmanuel Vadot&reg_soc {
48584943d6fSEmmanuel Vadot	vin-supply = <&sw1c_reg>;
48684943d6fSEmmanuel Vadot};
48784943d6fSEmmanuel Vadot
48884943d6fSEmmanuel Vadot&reg_vdd1p1 {
48984943d6fSEmmanuel Vadot	vin-supply = <&vgen5_reg>;
49084943d6fSEmmanuel Vadot};
49184943d6fSEmmanuel Vadot
49284943d6fSEmmanuel Vadot&reg_vdd2p5 {
49384943d6fSEmmanuel Vadot	vin-supply = <&vgen5_reg>;
49484943d6fSEmmanuel Vadot};
49584943d6fSEmmanuel Vadot
49684943d6fSEmmanuel Vadot&snvs_poweroff {
49784943d6fSEmmanuel Vadot	status = "okay";
49884943d6fSEmmanuel Vadot};
49984943d6fSEmmanuel Vadot
50084943d6fSEmmanuel Vadot&ssi2 {
50184943d6fSEmmanuel Vadot	status = "okay";
50284943d6fSEmmanuel Vadot};
50384943d6fSEmmanuel Vadot
50484943d6fSEmmanuel Vadot&uart1 {
50584943d6fSEmmanuel Vadot	pinctrl-names = "default";
50684943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart1>;
50784943d6fSEmmanuel Vadot	status = "okay";
50884943d6fSEmmanuel Vadot};
50984943d6fSEmmanuel Vadot
51084943d6fSEmmanuel Vadot&uart2 {
51184943d6fSEmmanuel Vadot	pinctrl-names = "default";
51284943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart2 &pinctrl_bt>;
51384943d6fSEmmanuel Vadot	uart-has-rtscts;
51484943d6fSEmmanuel Vadot	status = "okay";
51584943d6fSEmmanuel Vadot};
51684943d6fSEmmanuel Vadot
51784943d6fSEmmanuel Vadot&usbh1 {
51884943d6fSEmmanuel Vadot	vbus-supply = <&reg_usb_h1_vbus>;
51984943d6fSEmmanuel Vadot	status = "okay";
52084943d6fSEmmanuel Vadot};
52184943d6fSEmmanuel Vadot
52284943d6fSEmmanuel Vadot&usbotg {
52384943d6fSEmmanuel Vadot	vbus-supply = <&reg_usb_otg_vbus>;
52484943d6fSEmmanuel Vadot	pinctrl-names = "default";
52584943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usbotg_var>;
52684943d6fSEmmanuel Vadot	disable-over-current;
52784943d6fSEmmanuel Vadot	dr_mode = "host";
52884943d6fSEmmanuel Vadot	status = "okay";
52984943d6fSEmmanuel Vadot};
53084943d6fSEmmanuel Vadot
53184943d6fSEmmanuel Vadot&usbphy1 {
53284943d6fSEmmanuel Vadot	fsl,tx-d-cal = <0x5>;
53384943d6fSEmmanuel Vadot};
53484943d6fSEmmanuel Vadot
53584943d6fSEmmanuel Vadot&usbphy2 {
53684943d6fSEmmanuel Vadot	fsl,tx-d-cal = <0x5>;
53784943d6fSEmmanuel Vadot};
53884943d6fSEmmanuel Vadot
53984943d6fSEmmanuel Vadot&usdhc1 {
54084943d6fSEmmanuel Vadot	pinctrl-names = "default";
54184943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc1>;
54284943d6fSEmmanuel Vadot	non-removable;
54384943d6fSEmmanuel Vadot	keep-power-in-suspend;
54484943d6fSEmmanuel Vadot	status = "okay";
54584943d6fSEmmanuel Vadot};
54684943d6fSEmmanuel Vadot
54784943d6fSEmmanuel Vadot&usdhc3 {
54884943d6fSEmmanuel Vadot	pinctrl-names = "default", "state_100mhz", "state_200mhz";
54984943d6fSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc3>;
55084943d6fSEmmanuel Vadot	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
55184943d6fSEmmanuel Vadot	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
55284943d6fSEmmanuel Vadot	bus-width = <4>;
55384943d6fSEmmanuel Vadot	vmmc-supply = <&reg_wl18xx_vmmc>;
55484943d6fSEmmanuel Vadot	non-removable;
55584943d6fSEmmanuel Vadot	wakeup-source;
55684943d6fSEmmanuel Vadot	keep-power-in-suspend;
55784943d6fSEmmanuel Vadot	cap-power-off-card;
55884943d6fSEmmanuel Vadot	#address-cells = <1>;
55984943d6fSEmmanuel Vadot	#size-cells = <0>;
56084943d6fSEmmanuel Vadot	status = "okay";
56184943d6fSEmmanuel Vadot
56284943d6fSEmmanuel Vadot	wifi: wifi@2 {
56384943d6fSEmmanuel Vadot		compatible = "ti,wl1835";
56484943d6fSEmmanuel Vadot		reg = <2>;
56584943d6fSEmmanuel Vadot		interrupt-parent = <&gpio6>;
56684943d6fSEmmanuel Vadot		interrupts = <17 IRQ_TYPE_EDGE_RISING>;
56784943d6fSEmmanuel Vadot		ref-clock-frequency = <38400000>;
56884943d6fSEmmanuel Vadot	};
56984943d6fSEmmanuel Vadot};
570