16a57f224SMarcel Ziswiler// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
26a57f224SMarcel Ziswiler/*
36a57f224SMarcel Ziswiler * Copyright 2022 Toradex
46a57f224SMarcel Ziswiler */
56a57f224SMarcel Ziswiler
694bbd9d3SMarcel Ziswiler#include <dt-bindings/phy/phy-imx8-pcie.h>
794bbd9d3SMarcel Ziswiler#include <dt-bindings/pwm/pwm.h>
86a57f224SMarcel Ziswiler#include "imx8mm.dtsi"
96a57f224SMarcel Ziswiler
106a57f224SMarcel Ziswiler/ {
116a57f224SMarcel Ziswiler	chosen {
126a57f224SMarcel Ziswiler		stdout-path = &uart1;
136a57f224SMarcel Ziswiler	};
146a57f224SMarcel Ziswiler
156a57f224SMarcel Ziswiler	aliases {
166a57f224SMarcel Ziswiler		rtc0 = &rtc_i2c;
176a57f224SMarcel Ziswiler		rtc1 = &snvs_rtc;
186a57f224SMarcel Ziswiler	};
196a57f224SMarcel Ziswiler
206a57f224SMarcel Ziswiler	backlight: backlight {
216a57f224SMarcel Ziswiler		compatible = "pwm-backlight";
226a57f224SMarcel Ziswiler		brightness-levels = <0 45 63 88 119 158 203 255>;
236a57f224SMarcel Ziswiler		default-brightness-level = <4>;
246a57f224SMarcel Ziswiler		/* Verdin I2S_2_D_OUT (DSI_1_BKL_EN/DSI_1_BKL_EN_LVDS, SODIMM 46) */
256a57f224SMarcel Ziswiler		enable-gpios = <&gpio3 24 GPIO_ACTIVE_HIGH>;
266a57f224SMarcel Ziswiler		pinctrl-names = "default";
276a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_i2s_2_d_out_dsi_1_bkl_en>;
286a57f224SMarcel Ziswiler		power-supply = <&reg_3p3v>;
296a57f224SMarcel Ziswiler		/* Verdin PWM_3_DSI/PWM_3_DSI_LVDS (SODIMM 19) */
306a57f224SMarcel Ziswiler		pwms = <&pwm1 0 6666667 PWM_POLARITY_INVERTED>;
316a57f224SMarcel Ziswiler		status = "disabled";
326a57f224SMarcel Ziswiler	};
336a57f224SMarcel Ziswiler
346a57f224SMarcel Ziswiler	/* Fixed clock dedicated to SPI CAN controller */
35be1e3dfeSAndrejs Cainikovs	clk40m: oscillator {
366a57f224SMarcel Ziswiler		compatible = "fixed-clock";
376a57f224SMarcel Ziswiler		#clock-cells = <0>;
38be1e3dfeSAndrejs Cainikovs		clock-frequency = <40000000>;
396a57f224SMarcel Ziswiler	};
406a57f224SMarcel Ziswiler
416a57f224SMarcel Ziswiler	gpio-keys {
426a57f224SMarcel Ziswiler		compatible = "gpio-keys";
436a57f224SMarcel Ziswiler		pinctrl-names = "default";
446a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_gpio_keys>;
456a57f224SMarcel Ziswiler
46b803d15eSKrzysztof Kozlowski		key-wakeup {
476a57f224SMarcel Ziswiler			debounce-interval = <10>;
486a57f224SMarcel Ziswiler			/* Verdin CTRL_WAKE1_MICO# (SODIMM 252) */
496a57f224SMarcel Ziswiler			gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
506a57f224SMarcel Ziswiler			label = "Wake-Up";
516a57f224SMarcel Ziswiler			linux,code = <KEY_WAKEUP>;
526a57f224SMarcel Ziswiler			wakeup-source;
536a57f224SMarcel Ziswiler		};
546a57f224SMarcel Ziswiler	};
556a57f224SMarcel Ziswiler
5663a71a90SPhilippe Schenker	hdmi_connector: hdmi-connector {
5763a71a90SPhilippe Schenker		compatible = "hdmi-connector";
5863a71a90SPhilippe Schenker		ddc-i2c-bus = <&i2c2>;
5963a71a90SPhilippe Schenker		label = "hdmi";
6063a71a90SPhilippe Schenker		type = "a";
6163a71a90SPhilippe Schenker		status = "disabled";
6263a71a90SPhilippe Schenker	};
6363a71a90SPhilippe Schenker
64ac2ac9ffSMarcel Ziswiler	panel_lvds: panel-lvds {
65ac2ac9ffSMarcel Ziswiler		compatible = "panel-lvds";
66ac2ac9ffSMarcel Ziswiler		backlight = <&backlight>;
67ac2ac9ffSMarcel Ziswiler		data-mapping = "vesa-24";
68ac2ac9ffSMarcel Ziswiler		status = "disabled";
69ac2ac9ffSMarcel Ziswiler	};
70ac2ac9ffSMarcel Ziswiler
716a57f224SMarcel Ziswiler	/* Carrier Board Supplies */
726a57f224SMarcel Ziswiler	reg_1p8v: regulator-1p8v {
736a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
746a57f224SMarcel Ziswiler		regulator-max-microvolt = <1800000>;
756a57f224SMarcel Ziswiler		regulator-min-microvolt = <1800000>;
766a57f224SMarcel Ziswiler		regulator-name = "+V1.8_SW";
776a57f224SMarcel Ziswiler	};
786a57f224SMarcel Ziswiler
796a57f224SMarcel Ziswiler	reg_3p3v: regulator-3p3v {
806a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
816a57f224SMarcel Ziswiler		regulator-max-microvolt = <3300000>;
826a57f224SMarcel Ziswiler		regulator-min-microvolt = <3300000>;
836a57f224SMarcel Ziswiler		regulator-name = "+V3.3_SW";
846a57f224SMarcel Ziswiler	};
856a57f224SMarcel Ziswiler
866a57f224SMarcel Ziswiler	reg_5p0v: regulator-5p0v {
876a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
886a57f224SMarcel Ziswiler		regulator-max-microvolt = <5000000>;
896a57f224SMarcel Ziswiler		regulator-min-microvolt = <5000000>;
906a57f224SMarcel Ziswiler		regulator-name = "+V5_SW";
916a57f224SMarcel Ziswiler	};
926a57f224SMarcel Ziswiler
936a57f224SMarcel Ziswiler	/* Non PMIC On-module Supplies */
946a57f224SMarcel Ziswiler	reg_ethphy: regulator-ethphy {
956a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
966a57f224SMarcel Ziswiler		enable-active-high;
976a57f224SMarcel Ziswiler		gpio = <&gpio2 20 GPIO_ACTIVE_HIGH>; /* PMIC_EN_ETH */
986a57f224SMarcel Ziswiler		off-on-delay = <500000>;
996a57f224SMarcel Ziswiler		pinctrl-names = "default";
1006a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_reg_eth>;
101*39c95d0cSPhilippe Schenker		regulator-always-on;
1026a57f224SMarcel Ziswiler		regulator-boot-on;
1036a57f224SMarcel Ziswiler		regulator-max-microvolt = <3300000>;
1046a57f224SMarcel Ziswiler		regulator-min-microvolt = <3300000>;
10597a07703SMarcel Ziswiler		regulator-name = "On-module +V3.3_ETH";
1066a57f224SMarcel Ziswiler		startup-delay-us = <200000>;
1076a57f224SMarcel Ziswiler	};
1086a57f224SMarcel Ziswiler
1096a57f224SMarcel Ziswiler	reg_usb_otg1_vbus: regulator-usb-otg1 {
1106a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
1116a57f224SMarcel Ziswiler		enable-active-high;
1126a57f224SMarcel Ziswiler		/* Verdin USB_1_EN (SODIMM 155) */
1136a57f224SMarcel Ziswiler		gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>;
1146a57f224SMarcel Ziswiler		pinctrl-names = "default";
1156a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_reg_usb1_en>;
1166a57f224SMarcel Ziswiler		regulator-max-microvolt = <5000000>;
1176a57f224SMarcel Ziswiler		regulator-min-microvolt = <5000000>;
11897a07703SMarcel Ziswiler		regulator-name = "USB_1_EN";
1196a57f224SMarcel Ziswiler	};
1206a57f224SMarcel Ziswiler
1216a57f224SMarcel Ziswiler	reg_usb_otg2_vbus: regulator-usb-otg2 {
1226a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
1236a57f224SMarcel Ziswiler		enable-active-high;
1246a57f224SMarcel Ziswiler		/* Verdin USB_2_EN (SODIMM 185) */
1256a57f224SMarcel Ziswiler		gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>;
1266a57f224SMarcel Ziswiler		pinctrl-names = "default";
1276a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_reg_usb2_en>;
1286a57f224SMarcel Ziswiler		regulator-max-microvolt = <5000000>;
1296a57f224SMarcel Ziswiler		regulator-min-microvolt = <5000000>;
13097a07703SMarcel Ziswiler		regulator-name = "USB_2_EN";
1316a57f224SMarcel Ziswiler	};
1326a57f224SMarcel Ziswiler
1336a57f224SMarcel Ziswiler	reg_usdhc2_vmmc: regulator-usdhc2 {
1346a57f224SMarcel Ziswiler		compatible = "regulator-fixed";
1356a57f224SMarcel Ziswiler		enable-active-high;
1366a57f224SMarcel Ziswiler		/* Verdin SD_1_PWR_EN (SODIMM 76) */
1376a57f224SMarcel Ziswiler		gpio = <&gpio3 5 GPIO_ACTIVE_HIGH>;
1386a57f224SMarcel Ziswiler		off-on-delay = <100000>;
1396a57f224SMarcel Ziswiler		pinctrl-names = "default";
1406a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_usdhc2_pwr_en>;
1416a57f224SMarcel Ziswiler		regulator-max-microvolt = <3300000>;
1426a57f224SMarcel Ziswiler		regulator-min-microvolt = <3300000>;
1436a57f224SMarcel Ziswiler		regulator-name = "+V3.3_SD";
1446a57f224SMarcel Ziswiler		startup-delay-us = <2000>;
1456a57f224SMarcel Ziswiler	};
1466a57f224SMarcel Ziswiler
1476a57f224SMarcel Ziswiler	reserved-memory {
1486a57f224SMarcel Ziswiler		#address-cells = <2>;
1496a57f224SMarcel Ziswiler		#size-cells = <2>;
1506a57f224SMarcel Ziswiler		ranges;
1516a57f224SMarcel Ziswiler
1526a57f224SMarcel Ziswiler		/* Use the kernel configuration settings instead */
1536a57f224SMarcel Ziswiler		/delete-node/ linux,cma;
1546a57f224SMarcel Ziswiler	};
1556a57f224SMarcel Ziswiler};
1566a57f224SMarcel Ziswiler
1576a57f224SMarcel Ziswiler&A53_0 {
1586a57f224SMarcel Ziswiler	cpu-supply = <&reg_vdd_arm>;
1596a57f224SMarcel Ziswiler};
1606a57f224SMarcel Ziswiler
1616a57f224SMarcel Ziswiler&A53_1 {
1626a57f224SMarcel Ziswiler	cpu-supply = <&reg_vdd_arm>;
1636a57f224SMarcel Ziswiler};
1646a57f224SMarcel Ziswiler
1656a57f224SMarcel Ziswiler&A53_2 {
1666a57f224SMarcel Ziswiler	cpu-supply = <&reg_vdd_arm>;
1676a57f224SMarcel Ziswiler};
1686a57f224SMarcel Ziswiler
1696a57f224SMarcel Ziswiler&A53_3 {
1706a57f224SMarcel Ziswiler	cpu-supply = <&reg_vdd_arm>;
1716a57f224SMarcel Ziswiler};
1726a57f224SMarcel Ziswiler
173a242ef5fSPhilippe Schenker&cpu_alert0 {
174a242ef5fSPhilippe Schenker	temperature = <95000>;
175a242ef5fSPhilippe Schenker};
176a242ef5fSPhilippe Schenker
177a242ef5fSPhilippe Schenker&cpu_crit0 {
178a242ef5fSPhilippe Schenker	temperature = <105000>;
179a242ef5fSPhilippe Schenker};
180a242ef5fSPhilippe Schenker
1816a57f224SMarcel Ziswiler&ddrc {
1826a57f224SMarcel Ziswiler	operating-points-v2 = <&ddrc_opp_table>;
1836a57f224SMarcel Ziswiler
1846a57f224SMarcel Ziswiler	ddrc_opp_table: opp-table {
1856a57f224SMarcel Ziswiler		compatible = "operating-points-v2";
1866a57f224SMarcel Ziswiler
1870c068a36SMarek Vasut		opp-25000000 {
1886a57f224SMarcel Ziswiler			opp-hz = /bits/ 64 <25000000>;
1896a57f224SMarcel Ziswiler		};
1906a57f224SMarcel Ziswiler
1910c068a36SMarek Vasut		opp-100000000 {
1926a57f224SMarcel Ziswiler			opp-hz = /bits/ 64 <100000000>;
1936a57f224SMarcel Ziswiler		};
1946a57f224SMarcel Ziswiler
1950c068a36SMarek Vasut		opp-750000000 {
1966a57f224SMarcel Ziswiler			opp-hz = /bits/ 64 <750000000>;
1976a57f224SMarcel Ziswiler		};
1986a57f224SMarcel Ziswiler	};
1996a57f224SMarcel Ziswiler};
2006a57f224SMarcel Ziswiler
2016a57f224SMarcel Ziswiler/* Verdin SPI_1 */
2026a57f224SMarcel Ziswiler&ecspi2 {
2036a57f224SMarcel Ziswiler	#address-cells = <1>;
2046a57f224SMarcel Ziswiler	#size-cells = <0>;
2056a57f224SMarcel Ziswiler	cs-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>;
2066a57f224SMarcel Ziswiler	pinctrl-names = "default";
2076a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_ecspi2>;
2086a57f224SMarcel Ziswiler};
2096a57f224SMarcel Ziswiler
2106a57f224SMarcel Ziswiler/* Verdin CAN_1 (On-module) */
2116a57f224SMarcel Ziswiler&ecspi3 {
2126a57f224SMarcel Ziswiler	#address-cells = <1>;
2136a57f224SMarcel Ziswiler	#size-cells = <0>;
2146a57f224SMarcel Ziswiler	cs-gpios = <&gpio5 25 GPIO_ACTIVE_LOW>;
2156a57f224SMarcel Ziswiler	pinctrl-names = "default";
2166a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_ecspi3>;
2176a57f224SMarcel Ziswiler	status = "okay";
2186a57f224SMarcel Ziswiler
2196a57f224SMarcel Ziswiler	can1: can@0 {
2206a57f224SMarcel Ziswiler		compatible = "microchip,mcp251xfd";
221be1e3dfeSAndrejs Cainikovs		clocks = <&clk40m>;
222e9f130e0SAndrejs Cainikovs		interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_LOW>;
2236a57f224SMarcel Ziswiler		pinctrl-names = "default";
2246a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_can1_int>;
2256a57f224SMarcel Ziswiler		reg = <0>;
2266a57f224SMarcel Ziswiler		spi-max-frequency = <8500000>;
2276a57f224SMarcel Ziswiler	};
2286a57f224SMarcel Ziswiler};
2296a57f224SMarcel Ziswiler
2306a57f224SMarcel Ziswiler/* Verdin ETH_1 (On-module PHY) */
2316a57f224SMarcel Ziswiler&fec1 {
2326a57f224SMarcel Ziswiler	fsl,magic-packet;
2336a57f224SMarcel Ziswiler	phy-handle = <&ethphy0>;
2346a57f224SMarcel Ziswiler	phy-mode = "rgmii-id";
2356a57f224SMarcel Ziswiler	phy-supply = <&reg_ethphy>;
2366a57f224SMarcel Ziswiler	pinctrl-names = "default", "sleep";
2376a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_fec1>;
2386a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_fec1_sleep>;
2396a57f224SMarcel Ziswiler
2406a57f224SMarcel Ziswiler	mdio {
2416a57f224SMarcel Ziswiler		#address-cells = <1>;
2426a57f224SMarcel Ziswiler		#size-cells = <0>;
2436a57f224SMarcel Ziswiler
2446a57f224SMarcel Ziswiler		ethphy0: ethernet-phy@7 {
2456a57f224SMarcel Ziswiler			compatible = "ethernet-phy-ieee802.3-c22";
2466a57f224SMarcel Ziswiler			interrupt-parent = <&gpio1>;
2476a57f224SMarcel Ziswiler			interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
2486a57f224SMarcel Ziswiler			micrel,led-mode = <0>;
2496a57f224SMarcel Ziswiler			reg = <7>;
2506a57f224SMarcel Ziswiler		};
2516a57f224SMarcel Ziswiler	};
2526a57f224SMarcel Ziswiler};
2536a57f224SMarcel Ziswiler
2546a57f224SMarcel Ziswiler/* Verdin QSPI_1 */
2556a57f224SMarcel Ziswiler&flexspi {
2566a57f224SMarcel Ziswiler	pinctrl-names = "default";
2576a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_flexspi0>;
2586a57f224SMarcel Ziswiler};
2596a57f224SMarcel Ziswiler
2606a57f224SMarcel Ziswiler&gpio1 {
2616a57f224SMarcel Ziswiler	gpio-line-names = "SODIMM_216",
2626a57f224SMarcel Ziswiler			  "SODIMM_19",
2636a57f224SMarcel Ziswiler			  "",
2646a57f224SMarcel Ziswiler			  "",
2656a57f224SMarcel Ziswiler			  "",
2666a57f224SMarcel Ziswiler			  "",
2676a57f224SMarcel Ziswiler			  "",
2686a57f224SMarcel Ziswiler			  "",
2696a57f224SMarcel Ziswiler			  "SODIMM_220",
2706a57f224SMarcel Ziswiler			  "SODIMM_222",
2716a57f224SMarcel Ziswiler			  "",
2726a57f224SMarcel Ziswiler			  "SODIMM_218",
2736a57f224SMarcel Ziswiler			  "SODIMM_155",
2746a57f224SMarcel Ziswiler			  "SODIMM_157",
2756a57f224SMarcel Ziswiler			  "SODIMM_185",
2766a57f224SMarcel Ziswiler			  "SODIMM_187";
2776a57f224SMarcel Ziswiler};
2786a57f224SMarcel Ziswiler
2796a57f224SMarcel Ziswiler&gpio2 {
2806a57f224SMarcel Ziswiler	gpio-line-names = "",
2816a57f224SMarcel Ziswiler			  "",
2826a57f224SMarcel Ziswiler			  "",
2836a57f224SMarcel Ziswiler			  "",
2846a57f224SMarcel Ziswiler			  "",
2856a57f224SMarcel Ziswiler			  "",
2866a57f224SMarcel Ziswiler			  "",
2876a57f224SMarcel Ziswiler			  "",
2886a57f224SMarcel Ziswiler			  "",
2896a57f224SMarcel Ziswiler			  "",
2906a57f224SMarcel Ziswiler			  "",
2916a57f224SMarcel Ziswiler			  "",
2926a57f224SMarcel Ziswiler			  "SODIMM_84",
2936a57f224SMarcel Ziswiler			  "SODIMM_78",
2946a57f224SMarcel Ziswiler			  "SODIMM_74",
2956a57f224SMarcel Ziswiler			  "SODIMM_80",
2966a57f224SMarcel Ziswiler			  "SODIMM_82",
2976a57f224SMarcel Ziswiler			  "SODIMM_70",
2986a57f224SMarcel Ziswiler			  "SODIMM_72";
2996a57f224SMarcel Ziswiler};
3006a57f224SMarcel Ziswiler
3016a57f224SMarcel Ziswiler&gpio5 {
3026a57f224SMarcel Ziswiler	gpio-line-names = "SODIMM_131",
3036a57f224SMarcel Ziswiler			  "",
3046a57f224SMarcel Ziswiler			  "SODIMM_91",
3056a57f224SMarcel Ziswiler			  "SODIMM_16",
3066a57f224SMarcel Ziswiler			  "SODIMM_15",
3076a57f224SMarcel Ziswiler			  "SODIMM_208",
3086a57f224SMarcel Ziswiler			  "SODIMM_137",
3096a57f224SMarcel Ziswiler			  "SODIMM_139",
3106a57f224SMarcel Ziswiler			  "SODIMM_141",
3116a57f224SMarcel Ziswiler			  "SODIMM_143",
3126a57f224SMarcel Ziswiler			  "SODIMM_196",
3136a57f224SMarcel Ziswiler			  "SODIMM_200",
3146a57f224SMarcel Ziswiler			  "SODIMM_198",
3156a57f224SMarcel Ziswiler			  "SODIMM_202",
3166a57f224SMarcel Ziswiler			  "",
3176a57f224SMarcel Ziswiler			  "",
3186a57f224SMarcel Ziswiler			  "SODIMM_55",
3196a57f224SMarcel Ziswiler			  "SODIMM_53",
3206a57f224SMarcel Ziswiler			  "SODIMM_95",
3216a57f224SMarcel Ziswiler			  "SODIMM_93",
3226a57f224SMarcel Ziswiler			  "SODIMM_14",
3236a57f224SMarcel Ziswiler			  "SODIMM_12",
3246a57f224SMarcel Ziswiler			  "",
3256a57f224SMarcel Ziswiler			  "",
3266a57f224SMarcel Ziswiler			  "",
3276a57f224SMarcel Ziswiler			  "",
3286a57f224SMarcel Ziswiler			  "SODIMM_210",
3296a57f224SMarcel Ziswiler			  "SODIMM_212",
3306a57f224SMarcel Ziswiler			  "SODIMM_151",
3316a57f224SMarcel Ziswiler			  "SODIMM_153";
3326a57f224SMarcel Ziswiler
3339847725eSMarcel Ziswiler	ctrl-sleep-moci-hog {
3346a57f224SMarcel Ziswiler		gpio-hog;
3356a57f224SMarcel Ziswiler		/* Verdin CTRL_SLEEP_MOCI# (SODIMM 256) */
3366a57f224SMarcel Ziswiler		gpios = <1 GPIO_ACTIVE_HIGH>;
3376a57f224SMarcel Ziswiler		line-name = "CTRL_SLEEP_MOCI#";
3386a57f224SMarcel Ziswiler		output-high;
3396a57f224SMarcel Ziswiler		pinctrl-names = "default";
3406a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_ctrl_sleep_moci>;
3416a57f224SMarcel Ziswiler	};
3426a57f224SMarcel Ziswiler};
3436a57f224SMarcel Ziswiler
3446a57f224SMarcel Ziswiler/* On-module I2C */
3456a57f224SMarcel Ziswiler&i2c1 {
3466a57f224SMarcel Ziswiler	clock-frequency = <400000>;
3476a57f224SMarcel Ziswiler	pinctrl-names = "default", "gpio";
3486a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_i2c1>;
3496a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_i2c1_gpio>;
3506a57f224SMarcel Ziswiler	scl-gpios = <&gpio5 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
3516a57f224SMarcel Ziswiler	sda-gpios = <&gpio5 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
3526a57f224SMarcel Ziswiler	status = "okay";
3536a57f224SMarcel Ziswiler
3546a57f224SMarcel Ziswiler	pca9450: pmic@25 {
3556a57f224SMarcel Ziswiler		compatible = "nxp,pca9450a";
3566a57f224SMarcel Ziswiler		interrupt-parent = <&gpio1>;
3576a57f224SMarcel Ziswiler		/* PMIC PCA9450 PMIC_nINT GPIO1_IO3 */
3586a57f224SMarcel Ziswiler		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
3596a57f224SMarcel Ziswiler		pinctrl-names = "default";
3606a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_pmic>;
3616a57f224SMarcel Ziswiler		reg = <0x25>;
3626a57f224SMarcel Ziswiler		sd-vsel-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
3636a57f224SMarcel Ziswiler
36479c1c850SMarcel Ziswiler		/*
36579c1c850SMarcel Ziswiler		 * The bootloader is expected to switch on the I2C level shifter for the TLA2024 ADC
36679c1c850SMarcel Ziswiler		 * behind this PMIC.
36779c1c850SMarcel Ziswiler		 */
36879c1c850SMarcel Ziswiler
3696a57f224SMarcel Ziswiler		regulators {
3706a57f224SMarcel Ziswiler			reg_vdd_soc: BUCK1 {
3716a57f224SMarcel Ziswiler				nxp,dvs-run-voltage = <850000>;
3726a57f224SMarcel Ziswiler				nxp,dvs-standby-voltage = <800000>;
3736a57f224SMarcel Ziswiler				regulator-always-on;
3746a57f224SMarcel Ziswiler				regulator-boot-on;
3756a57f224SMarcel Ziswiler				regulator-max-microvolt = <850000>;
3766a57f224SMarcel Ziswiler				regulator-min-microvolt = <800000>;
37797a07703SMarcel Ziswiler				regulator-name = "On-module +VDD_SOC (BUCK1)";
3786a57f224SMarcel Ziswiler				regulator-ramp-delay = <3125>;
3796a57f224SMarcel Ziswiler			};
3806a57f224SMarcel Ziswiler
3816a57f224SMarcel Ziswiler			reg_vdd_arm: BUCK2 {
3826a57f224SMarcel Ziswiler				nxp,dvs-run-voltage = <950000>;
3836a57f224SMarcel Ziswiler				nxp,dvs-standby-voltage = <850000>;
3846a57f224SMarcel Ziswiler				regulator-always-on;
3856a57f224SMarcel Ziswiler				regulator-boot-on;
386b5a76cb3SPhilippe Schenker				regulator-max-microvolt = <1050000>;
387b5a76cb3SPhilippe Schenker				regulator-min-microvolt = <805000>;
38897a07703SMarcel Ziswiler				regulator-name = "On-module +VDD_ARM (BUCK2)";
3896a57f224SMarcel Ziswiler				regulator-ramp-delay = <3125>;
3906a57f224SMarcel Ziswiler			};
3916a57f224SMarcel Ziswiler
3926a57f224SMarcel Ziswiler			reg_vdd_dram: BUCK3 {
3936a57f224SMarcel Ziswiler				regulator-always-on;
3946a57f224SMarcel Ziswiler				regulator-boot-on;
395b5a76cb3SPhilippe Schenker				regulator-max-microvolt = <1000000>;
396b5a76cb3SPhilippe Schenker				regulator-min-microvolt = <805000>;
39797a07703SMarcel Ziswiler				regulator-name = "On-module +VDD_GPU_VPU_DDR (BUCK3)";
3986a57f224SMarcel Ziswiler			};
3996a57f224SMarcel Ziswiler
4006a57f224SMarcel Ziswiler			reg_vdd_3v3: BUCK4 {
4016a57f224SMarcel Ziswiler				regulator-always-on;
4026a57f224SMarcel Ziswiler				regulator-boot-on;
4036a57f224SMarcel Ziswiler				regulator-max-microvolt = <3300000>;
4046a57f224SMarcel Ziswiler				regulator-min-microvolt = <3300000>;
40597a07703SMarcel Ziswiler				regulator-name = "On-module +V3.3 (BUCK4)";
4066a57f224SMarcel Ziswiler			};
4076a57f224SMarcel Ziswiler
4086a57f224SMarcel Ziswiler			reg_vdd_1v8: BUCK5 {
4096a57f224SMarcel Ziswiler				regulator-always-on;
4106a57f224SMarcel Ziswiler				regulator-boot-on;
4116a57f224SMarcel Ziswiler				regulator-max-microvolt = <1800000>;
4126a57f224SMarcel Ziswiler				regulator-min-microvolt = <1800000>;
41397a07703SMarcel Ziswiler				regulator-name = "PWR_1V8_MOCI (BUCK5)";
4146a57f224SMarcel Ziswiler			};
4156a57f224SMarcel Ziswiler
4166a57f224SMarcel Ziswiler			reg_nvcc_dram: BUCK6 {
4176a57f224SMarcel Ziswiler				regulator-always-on;
4186a57f224SMarcel Ziswiler				regulator-boot-on;
4196a57f224SMarcel Ziswiler				regulator-max-microvolt = <1100000>;
4206a57f224SMarcel Ziswiler				regulator-min-microvolt = <1100000>;
42197a07703SMarcel Ziswiler				regulator-name = "On-module +VDD_DDR (BUCK6)";
4226a57f224SMarcel Ziswiler			};
4236a57f224SMarcel Ziswiler
4246a57f224SMarcel Ziswiler			reg_nvcc_snvs: LDO1 {
4256a57f224SMarcel Ziswiler				regulator-always-on;
4266a57f224SMarcel Ziswiler				regulator-boot-on;
4276a57f224SMarcel Ziswiler				regulator-max-microvolt = <1800000>;
4286a57f224SMarcel Ziswiler				regulator-min-microvolt = <1800000>;
42997a07703SMarcel Ziswiler				regulator-name = "On-module +V1.8_SNVS (LDO1)";
4306a57f224SMarcel Ziswiler			};
4316a57f224SMarcel Ziswiler
4326a57f224SMarcel Ziswiler			reg_vdd_snvs: LDO2 {
4336a57f224SMarcel Ziswiler				regulator-always-on;
4346a57f224SMarcel Ziswiler				regulator-boot-on;
435b5a76cb3SPhilippe Schenker				regulator-max-microvolt = <800000>;
4366a57f224SMarcel Ziswiler				regulator-min-microvolt = <800000>;
43797a07703SMarcel Ziswiler				regulator-name = "On-module +V0.8_SNVS (LDO2)";
4386a57f224SMarcel Ziswiler			};
4396a57f224SMarcel Ziswiler
4406a57f224SMarcel Ziswiler			reg_vdda: LDO3 {
4416a57f224SMarcel Ziswiler				regulator-always-on;
4426a57f224SMarcel Ziswiler				regulator-boot-on;
4436a57f224SMarcel Ziswiler				regulator-max-microvolt = <1800000>;
4446a57f224SMarcel Ziswiler				regulator-min-microvolt = <1800000>;
44597a07703SMarcel Ziswiler				regulator-name = "On-module +V1.8A (LDO3)";
4466a57f224SMarcel Ziswiler			};
4476a57f224SMarcel Ziswiler
4486a57f224SMarcel Ziswiler			reg_vdd_phy: LDO4 {
4496a57f224SMarcel Ziswiler				regulator-always-on;
4506a57f224SMarcel Ziswiler				regulator-boot-on;
4516a57f224SMarcel Ziswiler				regulator-max-microvolt = <900000>;
4526a57f224SMarcel Ziswiler				regulator-min-microvolt = <900000>;
45397a07703SMarcel Ziswiler				regulator-name = "On-module +V0.9_MIPI (LDO4)";
4546a57f224SMarcel Ziswiler			};
4556a57f224SMarcel Ziswiler
4566a57f224SMarcel Ziswiler			reg_nvcc_sd: LDO5 {
4576a57f224SMarcel Ziswiler				regulator-max-microvolt = <3300000>;
4586a57f224SMarcel Ziswiler				regulator-min-microvolt = <1800000>;
45997a07703SMarcel Ziswiler				regulator-name = "On-module +V3.3_1.8_SD (LDO5)";
4606a57f224SMarcel Ziswiler			};
4616a57f224SMarcel Ziswiler		};
4626a57f224SMarcel Ziswiler	};
4636a57f224SMarcel Ziswiler
4646a57f224SMarcel Ziswiler	rtc_i2c: rtc@32 {
4656a57f224SMarcel Ziswiler		compatible = "epson,rx8130";
4666a57f224SMarcel Ziswiler		reg = <0x32>;
4676a57f224SMarcel Ziswiler	};
4686a57f224SMarcel Ziswiler
4696a57f224SMarcel Ziswiler	adc@49 {
4706a57f224SMarcel Ziswiler		compatible = "ti,ads1015";
4716a57f224SMarcel Ziswiler		reg = <0x49>;
4726a57f224SMarcel Ziswiler		#address-cells = <1>;
4736a57f224SMarcel Ziswiler		#size-cells = <0>;
4746a57f224SMarcel Ziswiler
4756a57f224SMarcel Ziswiler		/* Verdin I2C_1 (ADC_4 - ADC_3) */
4766a57f224SMarcel Ziswiler		channel@0 {
4776a57f224SMarcel Ziswiler			reg = <0>;
4786a57f224SMarcel Ziswiler			ti,datarate = <4>;
4796a57f224SMarcel Ziswiler			ti,gain = <2>;
4806a57f224SMarcel Ziswiler		};
4816a57f224SMarcel Ziswiler
4826a57f224SMarcel Ziswiler		/* Verdin I2C_1 (ADC_4 - ADC_1) */
4836a57f224SMarcel Ziswiler		channel@1 {
4846a57f224SMarcel Ziswiler			reg = <1>;
4856a57f224SMarcel Ziswiler			ti,datarate = <4>;
4866a57f224SMarcel Ziswiler			ti,gain = <2>;
4876a57f224SMarcel Ziswiler		};
4886a57f224SMarcel Ziswiler
4896a57f224SMarcel Ziswiler		/* Verdin I2C_1 (ADC_3 - ADC_1) */
4906a57f224SMarcel Ziswiler		channel@2 {
4916a57f224SMarcel Ziswiler			reg = <2>;
4926a57f224SMarcel Ziswiler			ti,datarate = <4>;
4936a57f224SMarcel Ziswiler			ti,gain = <2>;
4946a57f224SMarcel Ziswiler		};
4956a57f224SMarcel Ziswiler
4966a57f224SMarcel Ziswiler		/* Verdin I2C_1 (ADC_2 - ADC_1) */
4976a57f224SMarcel Ziswiler		channel@3 {
4986a57f224SMarcel Ziswiler			reg = <3>;
4996a57f224SMarcel Ziswiler			ti,datarate = <4>;
5006a57f224SMarcel Ziswiler			ti,gain = <2>;
5016a57f224SMarcel Ziswiler		};
5026a57f224SMarcel Ziswiler
5036a57f224SMarcel Ziswiler		/* Verdin I2C_1 ADC_4 */
5046a57f224SMarcel Ziswiler		channel@4 {
5056a57f224SMarcel Ziswiler			reg = <4>;
5066a57f224SMarcel Ziswiler			ti,datarate = <4>;
5076a57f224SMarcel Ziswiler			ti,gain = <2>;
5086a57f224SMarcel Ziswiler		};
5096a57f224SMarcel Ziswiler
5106a57f224SMarcel Ziswiler		/* Verdin I2C_1 ADC_3 */
5116a57f224SMarcel Ziswiler		channel@5 {
5126a57f224SMarcel Ziswiler			reg = <5>;
5136a57f224SMarcel Ziswiler			ti,datarate = <4>;
5146a57f224SMarcel Ziswiler			ti,gain = <2>;
5156a57f224SMarcel Ziswiler		};
5166a57f224SMarcel Ziswiler
5176a57f224SMarcel Ziswiler		/* Verdin I2C_1 ADC_2 */
5186a57f224SMarcel Ziswiler		channel@6 {
5196a57f224SMarcel Ziswiler			reg = <6>;
5206a57f224SMarcel Ziswiler			ti,datarate = <4>;
5216a57f224SMarcel Ziswiler			ti,gain = <2>;
5226a57f224SMarcel Ziswiler		};
5236a57f224SMarcel Ziswiler
5246a57f224SMarcel Ziswiler		/* Verdin I2C_1 ADC_1 */
5256a57f224SMarcel Ziswiler		channel@7 {
5266a57f224SMarcel Ziswiler			reg = <7>;
5276a57f224SMarcel Ziswiler			ti,datarate = <4>;
5286a57f224SMarcel Ziswiler			ti,gain = <2>;
5296a57f224SMarcel Ziswiler		};
5306a57f224SMarcel Ziswiler	};
5316a57f224SMarcel Ziswiler
5326a57f224SMarcel Ziswiler	eeprom@50 {
5336a57f224SMarcel Ziswiler		compatible = "st,24c02";
5346a57f224SMarcel Ziswiler		pagesize = <16>;
5356a57f224SMarcel Ziswiler		reg = <0x50>;
5366a57f224SMarcel Ziswiler	};
5376a57f224SMarcel Ziswiler};
5386a57f224SMarcel Ziswiler
5396a57f224SMarcel Ziswiler/* Verdin I2C_2_DSI */
5406a57f224SMarcel Ziswiler&i2c2 {
5416a57f224SMarcel Ziswiler	clock-frequency = <10000>;
5426a57f224SMarcel Ziswiler	pinctrl-names = "default", "gpio";
5436a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_i2c2>;
5446a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_i2c2_gpio>;
5456a57f224SMarcel Ziswiler	scl-gpios = <&gpio5 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5466a57f224SMarcel Ziswiler	sda-gpios = <&gpio5 17 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5476a57f224SMarcel Ziswiler	status = "disabled";
5486a57f224SMarcel Ziswiler};
5496a57f224SMarcel Ziswiler
5506a57f224SMarcel Ziswiler/* Verdin I2C_3_HDMI N/A */
5516a57f224SMarcel Ziswiler
5526a57f224SMarcel Ziswiler/* Verdin I2C_4_CSI */
5536a57f224SMarcel Ziswiler&i2c3 {
5546a57f224SMarcel Ziswiler	clock-frequency = <400000>;
5556a57f224SMarcel Ziswiler	pinctrl-names = "default", "gpio";
5566a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_i2c3>;
5576a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_i2c3_gpio>;
5586a57f224SMarcel Ziswiler	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5596a57f224SMarcel Ziswiler	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5606a57f224SMarcel Ziswiler};
5616a57f224SMarcel Ziswiler
5626a57f224SMarcel Ziswiler/* Verdin I2C_1 */
5636a57f224SMarcel Ziswiler&i2c4 {
5646a57f224SMarcel Ziswiler	clock-frequency = <400000>;
5656a57f224SMarcel Ziswiler	pinctrl-names = "default", "gpio";
5666a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_i2c4>;
5676a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_i2c4_gpio>;
5686a57f224SMarcel Ziswiler	scl-gpios = <&gpio5 20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5696a57f224SMarcel Ziswiler	sda-gpios = <&gpio5 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
5706a57f224SMarcel Ziswiler
5716a57f224SMarcel Ziswiler	gpio_expander_21: gpio-expander@21 {
5726a57f224SMarcel Ziswiler		compatible = "nxp,pcal6416";
5736a57f224SMarcel Ziswiler		#gpio-cells = <2>;
5746a57f224SMarcel Ziswiler		gpio-controller;
5756a57f224SMarcel Ziswiler		reg = <0x21>;
5766a57f224SMarcel Ziswiler		vcc-supply = <&reg_3p3v>;
5776a57f224SMarcel Ziswiler		status = "disabled";
5786a57f224SMarcel Ziswiler	};
5796a57f224SMarcel Ziswiler
5808728c63cSMarcel Ziswiler	lvds_ti_sn65dsi84: bridge@2c {
5818728c63cSMarcel Ziswiler		compatible = "ti,sn65dsi84";
5826a57f224SMarcel Ziswiler		/* Verdin GPIO_9_DSI (SN65DSI84 IRQ, SODIMM 17, unused) */
5836a57f224SMarcel Ziswiler		/* Verdin GPIO_10_DSI (SODIMM 21) */
5846a57f224SMarcel Ziswiler		enable-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
5856a57f224SMarcel Ziswiler		pinctrl-names = "default";
5866a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_gpio_10_dsi>;
5876a57f224SMarcel Ziswiler		reg = <0x2c>;
5886a57f224SMarcel Ziswiler		status = "disabled";
5896a57f224SMarcel Ziswiler	};
5906a57f224SMarcel Ziswiler
5916a57f224SMarcel Ziswiler	/* Current measurement into module VCC */
5926a57f224SMarcel Ziswiler	hwmon: hwmon@40 {
5936a57f224SMarcel Ziswiler		compatible = "ti,ina219";
5946a57f224SMarcel Ziswiler		reg = <0x40>;
5956a57f224SMarcel Ziswiler		shunt-resistor = <10000>;
5966a57f224SMarcel Ziswiler		status = "disabled";
5976a57f224SMarcel Ziswiler	};
5986a57f224SMarcel Ziswiler
5996a57f224SMarcel Ziswiler	hdmi_lontium_lt8912: hdmi@48 {
6006a57f224SMarcel Ziswiler		compatible = "lontium,lt8912b";
6016a57f224SMarcel Ziswiler		pinctrl-names = "default";
6026a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_gpio_10_dsi>, <&pinctrl_pwm_3_dsi_hpd_gpio>;
6036a57f224SMarcel Ziswiler		reg = <0x48>;
6046a57f224SMarcel Ziswiler		/* Verdin GPIO_9_DSI (LT8912 INT, SODIMM 17, unused) */
6056a57f224SMarcel Ziswiler		/* Verdin GPIO_10_DSI (SODIMM 21) */
6066a57f224SMarcel Ziswiler		reset-gpios = <&gpio3 3 GPIO_ACTIVE_LOW>;
6076a57f224SMarcel Ziswiler		status = "disabled";
6086a57f224SMarcel Ziswiler	};
6096a57f224SMarcel Ziswiler
6106a57f224SMarcel Ziswiler	atmel_mxt_ts: touch@4a {
6116a57f224SMarcel Ziswiler		compatible = "atmel,maxtouch";
61298e4f193SMarcel Ziswiler		/*
61398e4f193SMarcel Ziswiler		 * Verdin GPIO_9_DSI
614909c3951SMarcel Ziswiler		 * (TOUCH_INT#, SODIMM 17, also routed to SN65DSI84 IRQ albeit currently unused)
61598e4f193SMarcel Ziswiler		 */
6166a57f224SMarcel Ziswiler		interrupt-parent = <&gpio3>;
6176a57f224SMarcel Ziswiler		interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
6186a57f224SMarcel Ziswiler		pinctrl-names = "default";
6196a57f224SMarcel Ziswiler		pinctrl-0 = <&pinctrl_gpio_9_dsi>, <&pinctrl_i2s_2_bclk_touch_reset>;
6206a57f224SMarcel Ziswiler		reg = <0x4a>;
6216a57f224SMarcel Ziswiler		/* Verdin I2S_2_BCLK (TOUCH_RESET#, SODIMM 42) */
62290974f65SMarcel Ziswiler		reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
6236a57f224SMarcel Ziswiler		status = "disabled";
6246a57f224SMarcel Ziswiler	};
6256a57f224SMarcel Ziswiler
6266a57f224SMarcel Ziswiler	/* Temperature sensor on carrier board */
6276a57f224SMarcel Ziswiler	hwmon_temp: sensor@4f {
6286a57f224SMarcel Ziswiler		compatible = "ti,tmp75c";
6296a57f224SMarcel Ziswiler		reg = <0x4f>;
6306a57f224SMarcel Ziswiler		status = "disabled";
6316a57f224SMarcel Ziswiler	};
6326a57f224SMarcel Ziswiler
6336a57f224SMarcel Ziswiler	/* EEPROM on display adapter (MIPI DSI Display Adapter) */
6346a57f224SMarcel Ziswiler	eeprom_display_adapter: eeprom@50 {
6356a57f224SMarcel Ziswiler		compatible = "st,24c02";
6366a57f224SMarcel Ziswiler		pagesize = <16>;
6376a57f224SMarcel Ziswiler		reg = <0x50>;
6386a57f224SMarcel Ziswiler		status = "disabled";
6396a57f224SMarcel Ziswiler	};
6406a57f224SMarcel Ziswiler
6416a57f224SMarcel Ziswiler	/* EEPROM on carrier board */
6426a57f224SMarcel Ziswiler	eeprom_carrier_board: eeprom@57 {
6436a57f224SMarcel Ziswiler		compatible = "st,24c02";
6446a57f224SMarcel Ziswiler		pagesize = <16>;
6456a57f224SMarcel Ziswiler		reg = <0x57>;
6466a57f224SMarcel Ziswiler		status = "disabled";
6476a57f224SMarcel Ziswiler	};
6486a57f224SMarcel Ziswiler};
6496a57f224SMarcel Ziswiler
6506a57f224SMarcel Ziswiler/* Verdin PCIE_1 */
6516a57f224SMarcel Ziswiler&pcie0 {
6526a57f224SMarcel Ziswiler	assigned-clocks = <&clk IMX8MM_CLK_PCIE1_AUX>,
6536a57f224SMarcel Ziswiler			  <&clk IMX8MM_CLK_PCIE1_CTRL>;
6546a57f224SMarcel Ziswiler	assigned-clock-parents = <&clk IMX8MM_SYS_PLL2_50M>,
6556a57f224SMarcel Ziswiler				 <&clk IMX8MM_SYS_PLL2_250M>;
6566a57f224SMarcel Ziswiler	assigned-clock-rates = <10000000>, <250000000>;
6578fb7256aSMarcel Ziswiler	clocks = <&clk IMX8MM_CLK_PCIE1_ROOT>,
6588fb7256aSMarcel Ziswiler		 <&clk IMX8MM_CLK_PCIE1_AUX>,
6596a57f224SMarcel Ziswiler		 <&clk IMX8MM_CLK_PCIE1_PHY>;
6606a57f224SMarcel Ziswiler	clock-names = "pcie", "pcie_aux", "pcie_bus";
6616a57f224SMarcel Ziswiler	pinctrl-names = "default";
6626a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_pcie0>;
6636a57f224SMarcel Ziswiler	/* PCIE_1_RESET# (SODIMM 244) */
6646a57f224SMarcel Ziswiler	reset-gpio = <&gpio3 19 GPIO_ACTIVE_LOW>;
6656a57f224SMarcel Ziswiler};
6666a57f224SMarcel Ziswiler
6676a57f224SMarcel Ziswiler&pcie_phy {
6686a57f224SMarcel Ziswiler	clocks = <&clk IMX8MM_CLK_PCIE1_PHY>;
6698fb7256aSMarcel Ziswiler	clock-names = "ref";
6706a57f224SMarcel Ziswiler	fsl,clkreq-unsupported;
6716a57f224SMarcel Ziswiler	fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_OUTPUT>;
6726a57f224SMarcel Ziswiler	fsl,tx-deemph-gen1 = <0x2d>;
6736a57f224SMarcel Ziswiler	fsl,tx-deemph-gen2 = <0xf>;
6746a57f224SMarcel Ziswiler};
6756a57f224SMarcel Ziswiler
6766a57f224SMarcel Ziswiler/* Verdin PWM_3_DSI */
6776a57f224SMarcel Ziswiler&pwm1 {
6786a57f224SMarcel Ziswiler	pinctrl-names = "default";
6796a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_pwm_1>;
6806a57f224SMarcel Ziswiler	#pwm-cells = <3>;
6816a57f224SMarcel Ziswiler};
6826a57f224SMarcel Ziswiler
6836a57f224SMarcel Ziswiler/* Verdin PWM_1 */
6846a57f224SMarcel Ziswiler&pwm2 {
6856a57f224SMarcel Ziswiler	pinctrl-names = "default";
6866a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_pwm_2>;
6876a57f224SMarcel Ziswiler	#pwm-cells = <3>;
6886a57f224SMarcel Ziswiler};
6896a57f224SMarcel Ziswiler
6906a57f224SMarcel Ziswiler/* Verdin PWM_2 */
6916a57f224SMarcel Ziswiler&pwm3 {
6926a57f224SMarcel Ziswiler	pinctrl-names = "default";
6936a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_pwm_3>;
6946a57f224SMarcel Ziswiler	#pwm-cells = <3>;
6956a57f224SMarcel Ziswiler};
6966a57f224SMarcel Ziswiler
697473b34b8SMarcel Ziswiler/* Verdin I2S_1 */
6986a57f224SMarcel Ziswiler&sai2 {
6996a57f224SMarcel Ziswiler	#sound-dai-cells = <0>;
7006a57f224SMarcel Ziswiler	assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>;
7016a57f224SMarcel Ziswiler	assigned-clock-rates = <24576000>;
7026a57f224SMarcel Ziswiler	assigned-clocks = <&clk IMX8MM_CLK_SAI2>;
7036a57f224SMarcel Ziswiler	pinctrl-names = "default";
7046a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_sai2>;
7056a57f224SMarcel Ziswiler};
7066a57f224SMarcel Ziswiler
7076a57f224SMarcel Ziswiler&snvs_pwrkey {
7086a57f224SMarcel Ziswiler	status = "okay";
7096a57f224SMarcel Ziswiler};
7106a57f224SMarcel Ziswiler
7116a57f224SMarcel Ziswiler/* Verdin UART_3, used as the Linux console */
7126a57f224SMarcel Ziswiler&uart1 {
7136a57f224SMarcel Ziswiler	pinctrl-names = "default";
7146a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_uart1>;
7156a57f224SMarcel Ziswiler};
7166a57f224SMarcel Ziswiler
7176a57f224SMarcel Ziswiler/* Verdin UART_1 */
7186a57f224SMarcel Ziswiler&uart2 {
7196a57f224SMarcel Ziswiler	pinctrl-names = "default";
7206a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_uart2>;
7216a57f224SMarcel Ziswiler	uart-has-rtscts;
7226a57f224SMarcel Ziswiler};
7236a57f224SMarcel Ziswiler
7246a57f224SMarcel Ziswiler/* Verdin UART_2 */
7256a57f224SMarcel Ziswiler&uart3 {
7266a57f224SMarcel Ziswiler	pinctrl-names = "default";
7276a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_uart3>;
7286a57f224SMarcel Ziswiler	uart-has-rtscts;
7296a57f224SMarcel Ziswiler};
7306a57f224SMarcel Ziswiler
7316a57f224SMarcel Ziswiler/*
73298e4f193SMarcel Ziswiler * Verdin UART_4
7336a57f224SMarcel Ziswiler * Resource allocated to M4 by default, must not be accessed from Cortex-A35 or you get an OOPS
7346a57f224SMarcel Ziswiler */
7356a57f224SMarcel Ziswiler&uart4 {
7366a57f224SMarcel Ziswiler	pinctrl-names = "default";
7376a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_uart4>;
7386a57f224SMarcel Ziswiler};
7396a57f224SMarcel Ziswiler
7406a57f224SMarcel Ziswiler/* Verdin USB_1 */
7416a57f224SMarcel Ziswiler&usbotg1 {
7426a57f224SMarcel Ziswiler	adp-disable;
7436a57f224SMarcel Ziswiler	dr_mode = "otg";
7446a57f224SMarcel Ziswiler	hnp-disable;
7456a57f224SMarcel Ziswiler	over-current-active-low;
7466a57f224SMarcel Ziswiler	samsung,picophy-dc-vol-level-adjust = <7>;
7476a57f224SMarcel Ziswiler	samsung,picophy-pre-emp-curr-control = <3>;
7486a57f224SMarcel Ziswiler	srp-disable;
7496a57f224SMarcel Ziswiler	vbus-supply = <&reg_usb_otg1_vbus>;
7506a57f224SMarcel Ziswiler};
7516a57f224SMarcel Ziswiler
7526a57f224SMarcel Ziswiler/* Verdin USB_2 */
7536a57f224SMarcel Ziswiler&usbotg2 {
7546a57f224SMarcel Ziswiler	dr_mode = "host";
7556a57f224SMarcel Ziswiler	over-current-active-low;
7566a57f224SMarcel Ziswiler	samsung,picophy-dc-vol-level-adjust = <7>;
7576a57f224SMarcel Ziswiler	samsung,picophy-pre-emp-curr-control = <3>;
7586a57f224SMarcel Ziswiler	vbus-supply = <&reg_usb_otg2_vbus>;
7596a57f224SMarcel Ziswiler};
7606a57f224SMarcel Ziswiler
7616a57f224SMarcel Ziswiler&usbphynop1 {
7626a57f224SMarcel Ziswiler	vcc-supply = <&reg_vdd_3v3>;
7636a57f224SMarcel Ziswiler};
7646a57f224SMarcel Ziswiler
7656a57f224SMarcel Ziswiler&usbphynop2 {
7662fa24aa7SPhilippe Schenker	power-domains = <&pgc_otg2>;
7676a57f224SMarcel Ziswiler	vcc-supply = <&reg_vdd_3v3>;
7686a57f224SMarcel Ziswiler};
7696a57f224SMarcel Ziswiler
7706a57f224SMarcel Ziswiler/* On-module eMMC */
7716a57f224SMarcel Ziswiler&usdhc1 {
7726a57f224SMarcel Ziswiler	bus-width = <8>;
7736a57f224SMarcel Ziswiler	keep-power-in-suspend;
7746a57f224SMarcel Ziswiler	non-removable;
7756a57f224SMarcel Ziswiler	pinctrl-names = "default", "state_100mhz", "state_200mhz";
7766a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_usdhc1>;
7776a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
7786a57f224SMarcel Ziswiler	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
7796a57f224SMarcel Ziswiler	status = "okay";
7806a57f224SMarcel Ziswiler};
7816a57f224SMarcel Ziswiler
7826a57f224SMarcel Ziswiler/* Verdin SD_1 */
7836a57f224SMarcel Ziswiler&usdhc2 {
7846a57f224SMarcel Ziswiler	bus-width = <4>;
7856a57f224SMarcel Ziswiler	cd-gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
7866a57f224SMarcel Ziswiler	disable-wp;
7874f6b5de9SMarcel Ziswiler	pinctrl-names = "default", "state_100mhz", "state_200mhz", "sleep";
7886a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_cd>;
7896a57f224SMarcel Ziswiler	pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_cd>;
7906a57f224SMarcel Ziswiler	pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_cd>;
7914f6b5de9SMarcel Ziswiler	pinctrl-3 = <&pinctrl_usdhc2_sleep>, <&pinctrl_usdhc2_cd_sleep>;
7926a57f224SMarcel Ziswiler	vmmc-supply = <&reg_usdhc2_vmmc>;
7936a57f224SMarcel Ziswiler};
7946a57f224SMarcel Ziswiler
7956a57f224SMarcel Ziswiler&wdog1 {
7966a57f224SMarcel Ziswiler	fsl,ext-reset-output;
7976a57f224SMarcel Ziswiler	pinctrl-names = "default";
7986a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_wdog>;
7996a57f224SMarcel Ziswiler	status = "okay";
8006a57f224SMarcel Ziswiler};
8016a57f224SMarcel Ziswiler
8026a57f224SMarcel Ziswiler&iomuxc {
8036a57f224SMarcel Ziswiler	pinctrl-names = "default";
8046a57f224SMarcel Ziswiler	pinctrl-0 = <&pinctrl_gpio1>, <&pinctrl_gpio2>,
8056a57f224SMarcel Ziswiler		    <&pinctrl_gpio3>, <&pinctrl_gpio4>,
8066a57f224SMarcel Ziswiler		    <&pinctrl_gpio7>, <&pinctrl_gpio8>,
8076a57f224SMarcel Ziswiler		    <&pinctrl_gpio_hog1>, <&pinctrl_gpio_hog2>, <&pinctrl_gpio_hog3>,
8086a57f224SMarcel Ziswiler		    <&pinctrl_pmic_tpm_ena>;
8096a57f224SMarcel Ziswiler
8106a57f224SMarcel Ziswiler	pinctrl_can1_int: can1intgrp {
8116a57f224SMarcel Ziswiler		fsl,pins =
81260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO06_GPIO1_IO6		0x146>;	/* CAN_1_SPI_INT#_1.8V */
8136a57f224SMarcel Ziswiler	};
8146a57f224SMarcel Ziswiler
8156a57f224SMarcel Ziswiler	pinctrl_can2_int: can2intgrp {
8166a57f224SMarcel Ziswiler		fsl,pins =
81760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO07_GPIO1_IO7		0x106>;	/* CAN_2_SPI_INT#_1.8V, unused */
8186a57f224SMarcel Ziswiler	};
8196a57f224SMarcel Ziswiler
8206a57f224SMarcel Ziswiler	pinctrl_ctrl_sleep_moci: ctrlsleepmocigrp {
8216a57f224SMarcel Ziswiler		fsl,pins =
82260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_TXD_GPIO5_IO1		0x106>;	/* SODIMM 256 */
8236a57f224SMarcel Ziswiler	};
8246a57f224SMarcel Ziswiler
8256a57f224SMarcel Ziswiler	pinctrl_ecspi2: ecspi2grp {
8266a57f224SMarcel Ziswiler		fsl,pins =
82760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI2_MISO_ECSPI2_MISO		0x6>,	/* SODIMM 198 */
828593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI2_MOSI_ECSPI2_MOSI		0x6>,	/* SODIMM 200 */
829593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI2_SCLK_ECSPI2_SCLK		0x6>,	/* SODIMM 196 */
83060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI2_SS0_GPIO5_IO13		0x6>;	/* SODIMM 202 */
8316a57f224SMarcel Ziswiler	};
8326a57f224SMarcel Ziswiler
8336a57f224SMarcel Ziswiler	pinctrl_ecspi3: ecspi3grp {
8346a57f224SMarcel Ziswiler		fsl,pins =
835593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO05_GPIO1_IO5		0x146>,	/* CAN_2_SPI_CS#_1.8V */
83660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART1_RXD_ECSPI3_SCLK		0x6>,	/* CAN_SPI_SCK_1.8V */
83760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART1_TXD_ECSPI3_MOSI		0x6>,	/* CAN_SPI_MOSI_1.8V */
83860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART2_RXD_ECSPI3_MISO		0x6>,	/* CAN_SPI_MISO_1.8V */
839593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_UART2_TXD_GPIO5_IO25		0x6>;	/* CAN_1_SPI_CS_1.8V# */
8406a57f224SMarcel Ziswiler	};
8416a57f224SMarcel Ziswiler
8426a57f224SMarcel Ziswiler	pinctrl_fec1: fec1grp {
8436a57f224SMarcel Ziswiler		fsl,pins =
8446a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_MDC_ENET1_MDC		0x3>,
8456a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_MDIO_ENET1_MDIO		0x3>,
8466a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD0_ENET1_RGMII_RD0		0x91>,
847593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD1_ENET1_RGMII_RD1		0x91>,
848593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD2_ENET1_RGMII_RD2		0x91>,
849593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD3_ENET1_RGMII_RD3		0x91>,
8506a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RXC_ENET1_RGMII_RXC		0x91>,
8516a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL	0x91>,
852593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD0_ENET1_RGMII_TD0		0x1f>,
853593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD1_ENET1_RGMII_TD1		0x1f>,
854593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD2_ENET1_RGMII_TD2		0x1f>,
855593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD3_ENET1_RGMII_TD3		0x1f>,
856593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TXC_ENET1_RGMII_TXC		0x1f>,
8576a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TX_CTL_ENET1_RGMII_TX_CTL	0x1f>,
85860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO10_GPIO1_IO10		0x146>;
8596a57f224SMarcel Ziswiler	};
8606a57f224SMarcel Ziswiler
8616a57f224SMarcel Ziswiler	pinctrl_fec1_sleep: fec1-sleepgrp {
8626a57f224SMarcel Ziswiler		fsl,pins =
8636a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_MDC_ENET1_MDC		0x3>,
8646a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_MDIO_ENET1_MDIO		0x3>,
8656a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD0_ENET1_RGMII_RD0		0x91>,
866593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD1_ENET1_RGMII_RD1		0x91>,
867593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD2_ENET1_RGMII_RD2		0x91>,
868593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RD3_ENET1_RGMII_RD3		0x91>,
8696a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RXC_ENET1_RGMII_RXC		0x91>,
8706a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_RX_CTL_ENET1_RGMII_RX_CTL	0x91>,
871593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD0_GPIO1_IO21		0x1f>,
872593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD1_GPIO1_IO20		0x1f>,
873593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD2_GPIO1_IO19		0x1f>,
874593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TD3_GPIO1_IO18		0x1f>,
875593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TXC_GPIO1_IO23		0x1f>,
8766a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_ENET_TX_CTL_GPIO1_IO22		0x1f>,
87760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO10_GPIO1_IO10		0x106>;
8786a57f224SMarcel Ziswiler	};
8796a57f224SMarcel Ziswiler
8806a57f224SMarcel Ziswiler	pinctrl_flexspi0: flexspi0grp {
8816a57f224SMarcel Ziswiler		fsl,pins =
88260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_ALE_QSPI_A_SCLK		0x106>,	/* SODIMM 52 */
88360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_CE0_B_QSPI_A_SS0_B		0x106>,	/* SODIMM 54 */
88460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_CE1_B_QSPI_A_SS1_B		0x106>,	/* SODIMM 64 */
88560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA00_QSPI_A_DATA0		0x106>,	/* SODIMM 56 */
88660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA01_QSPI_A_DATA1		0x106>,	/* SODIMM 58 */
88760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA02_QSPI_A_DATA2		0x106>,	/* SODIMM 60 */
888593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA03_QSPI_A_DATA3		0x106>,	/* SODIMM 62 */
889593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DQS_QSPI_A_DQS		0x106>;	/* SODIMM 66 */
8906a57f224SMarcel Ziswiler	};
8916a57f224SMarcel Ziswiler
8926a57f224SMarcel Ziswiler	pinctrl_gpio1: gpio1grp {
8936a57f224SMarcel Ziswiler		fsl,pins =
89460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_CE3_B_GPIO3_IO4		0x106>;	/* SODIMM 206 */
8956a57f224SMarcel Ziswiler	};
8966a57f224SMarcel Ziswiler
8976a57f224SMarcel Ziswiler	pinctrl_gpio2: gpio2grp {
8986a57f224SMarcel Ziswiler		fsl,pins =
89960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SPDIF_EXT_CLK_GPIO5_IO5		0x106>;	/* SODIMM 208 */
9006a57f224SMarcel Ziswiler	};
9016a57f224SMarcel Ziswiler
9026a57f224SMarcel Ziswiler	pinctrl_gpio3: gpio3grp {
9036a57f224SMarcel Ziswiler		fsl,pins =
90460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART3_RXD_GPIO5_IO26		0x106>;	/* SODIMM 210 */
9056a57f224SMarcel Ziswiler	};
9066a57f224SMarcel Ziswiler
9076a57f224SMarcel Ziswiler	pinctrl_gpio4: gpio4grp {
9086a57f224SMarcel Ziswiler		fsl,pins =
90960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART3_TXD_GPIO5_IO27		0x106>;	/* SODIMM 212 */
9106a57f224SMarcel Ziswiler	};
9116a57f224SMarcel Ziswiler
9126a57f224SMarcel Ziswiler	pinctrl_gpio5: gpio5grp {
9136a57f224SMarcel Ziswiler		fsl,pins =
91460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO00_GPIO1_IO0		0x106>;	/* SODIMM 216 */
9156a57f224SMarcel Ziswiler	};
9166a57f224SMarcel Ziswiler
9176a57f224SMarcel Ziswiler	pinctrl_gpio6: gpio6grp {
9186a57f224SMarcel Ziswiler		fsl,pins =
91960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO11_GPIO1_IO11		0x106>;	/* SODIMM 218 */
9206a57f224SMarcel Ziswiler	};
9216a57f224SMarcel Ziswiler
9226a57f224SMarcel Ziswiler	pinctrl_gpio7: gpio7grp {
9236a57f224SMarcel Ziswiler		fsl,pins =
92460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO08_GPIO1_IO8		0x106>;	/* SODIMM 220 */
9256a57f224SMarcel Ziswiler	};
9266a57f224SMarcel Ziswiler
9276a57f224SMarcel Ziswiler	pinctrl_gpio8: gpio8grp {
9286a57f224SMarcel Ziswiler		fsl,pins =
92960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO09_GPIO1_IO9		0x106>;	/* SODIMM 222 */
9306a57f224SMarcel Ziswiler	};
9316a57f224SMarcel Ziswiler
9326a57f224SMarcel Ziswiler	/* Verdin GPIO_9_DSI (pulled-up as active-low) */
9336a57f224SMarcel Ziswiler	pinctrl_gpio_9_dsi: gpio9dsigrp {
9346a57f224SMarcel Ziswiler		fsl,pins =
93560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_RE_B_GPIO3_IO15		0x146>;	/* SODIMM 17 */
9366a57f224SMarcel Ziswiler	};
9376a57f224SMarcel Ziswiler
93860f01b5bSMarcel Ziswiler	/* Verdin GPIO_10_DSI (pulled-up as active-low) */
9396a57f224SMarcel Ziswiler	pinctrl_gpio_10_dsi: gpio10dsigrp {
9406a57f224SMarcel Ziswiler		fsl,pins =
94160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_CE2_B_GPIO3_IO3		0x146>;	/* SODIMM 21 */
9426a57f224SMarcel Ziswiler	};
9436a57f224SMarcel Ziswiler
9446a57f224SMarcel Ziswiler	pinctrl_gpio_hog1: gpiohog1grp {
9456a57f224SMarcel Ziswiler		fsl,pins =
94660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_MCLK_GPIO4_IO20		0x106>,	/* SODIMM 88 */
94760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXC_GPIO4_IO1		0x106>,	/* SODIMM 90 */
94860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD0_GPIO4_IO2		0x106>,	/* SODIMM 92 */
94960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD1_GPIO4_IO3		0x106>,	/* SODIMM 94 */
95060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD2_GPIO4_IO4		0x106>,	/* SODIMM 96 */
95160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD3_GPIO4_IO5		0x106>,	/* SODIMM 100 */
95260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXFS_GPIO4_IO0		0x106>,	/* SODIMM 102 */
95360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXC_GPIO4_IO11		0x106>,	/* SODIMM 104 */
95460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD0_GPIO4_IO12		0x106>,	/* SODIMM 106 */
95560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD1_GPIO4_IO13		0x106>,	/* SODIMM 108 */
95660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD2_GPIO4_IO14		0x106>,	/* SODIMM 112 */
95760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD3_GPIO4_IO15		0x106>,	/* SODIMM 114 */
95860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD4_GPIO4_IO16		0x106>,	/* SODIMM 116 */
95960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD6_GPIO4_IO18		0x106>,	/* SODIMM 118 */
96060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXFS_GPIO4_IO10		0x106>;	/* SODIMM 120 */
9616a57f224SMarcel Ziswiler	};
9626a57f224SMarcel Ziswiler
9636a57f224SMarcel Ziswiler	pinctrl_gpio_hog2: gpiohog2grp {
9646a57f224SMarcel Ziswiler		fsl,pins =
96560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_MCLK_GPIO5_IO2		0x106>;	/* SODIMM 91 */
9666a57f224SMarcel Ziswiler	};
9676a57f224SMarcel Ziswiler
9686a57f224SMarcel Ziswiler	pinctrl_gpio_hog3: gpiohog3grp {
9696a57f224SMarcel Ziswiler		fsl,pins =
97060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO13_GPIO1_IO13		0x146>,	/* SODIMM 157 */
97160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO15_GPIO1_IO15		0x146>;	/* SODIMM 187 */
9726a57f224SMarcel Ziswiler	};
9736a57f224SMarcel Ziswiler
9746a57f224SMarcel Ziswiler	pinctrl_gpio_keys: gpiokeysgrp {
9756a57f224SMarcel Ziswiler		fsl,pins =
97660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_RXFS_GPIO4_IO28		0x146>;	/* SODIMM 252 */
9776a57f224SMarcel Ziswiler	};
9786a57f224SMarcel Ziswiler
9796a57f224SMarcel Ziswiler	/* On-module I2C */
9806a57f224SMarcel Ziswiler	pinctrl_i2c1: i2c1grp {
9816a57f224SMarcel Ziswiler		fsl,pins =
98260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C1_SCL_I2C1_SCL			0x40000146>,	/* PMIC_I2C_SCL */
98360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C1_SDA_I2C1_SDA			0x40000146>;	/* PMIC_I2C_SDA */
9846a57f224SMarcel Ziswiler	};
9856a57f224SMarcel Ziswiler
9866a57f224SMarcel Ziswiler	pinctrl_i2c1_gpio: i2c1gpiogrp {
9876a57f224SMarcel Ziswiler		fsl,pins =
98860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C1_SCL_GPIO5_IO14		0x146>,	/* PMIC_I2C_SCL */
98960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C1_SDA_GPIO5_IO15		0x146>;	/* PMIC_I2C_SDA */
9906a57f224SMarcel Ziswiler	};
9916a57f224SMarcel Ziswiler
9926a57f224SMarcel Ziswiler	/* Verdin I2C_4_CSI */
9936a57f224SMarcel Ziswiler	pinctrl_i2c2: i2c2grp {
9946a57f224SMarcel Ziswiler		fsl,pins =
99560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C2_SCL_I2C2_SCL			0x40000146>,	/* SODIMM 55 */
99660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C2_SDA_I2C2_SDA			0x40000146>;	/* SODIMM 53 */
9976a57f224SMarcel Ziswiler	};
9986a57f224SMarcel Ziswiler
9996a57f224SMarcel Ziswiler	pinctrl_i2c2_gpio: i2c2gpiogrp {
10006a57f224SMarcel Ziswiler		fsl,pins =
100160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C2_SCL_GPIO5_IO16		0x146>,	/* SODIMM 55 */
100260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C2_SDA_GPIO5_IO17		0x146>;	/* SODIMM 53 */
10036a57f224SMarcel Ziswiler	};
10046a57f224SMarcel Ziswiler
10056a57f224SMarcel Ziswiler	/* Verdin I2C_2_DSI */
10066a57f224SMarcel Ziswiler	pinctrl_i2c3: i2c3grp {
10076a57f224SMarcel Ziswiler		fsl,pins =
100860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C3_SCL_I2C3_SCL			0x40000146>,	/* SODIMM 95 */
100960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C3_SDA_I2C3_SDA			0x40000146>;	/* SODIMM 93 */
10106a57f224SMarcel Ziswiler	};
10116a57f224SMarcel Ziswiler
10126a57f224SMarcel Ziswiler	pinctrl_i2c3_gpio: i2c3gpiogrp {
10136a57f224SMarcel Ziswiler		fsl,pins =
101460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C3_SCL_GPIO5_IO18		0x146>,	/* SODIMM 95 */
101560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C3_SDA_GPIO5_IO19		0x146>;	/* SODIMM 93 */
10166a57f224SMarcel Ziswiler	};
10176a57f224SMarcel Ziswiler
10186a57f224SMarcel Ziswiler	/* Verdin I2C_1 */
10196a57f224SMarcel Ziswiler	pinctrl_i2c4: i2c4grp {
10206a57f224SMarcel Ziswiler		fsl,pins =
102160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C4_SCL_I2C4_SCL			0x40000146>,	/* SODIMM 14 */
102260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C4_SDA_I2C4_SDA			0x40000146>;	/* SODIMM 12 */
10236a57f224SMarcel Ziswiler	};
10246a57f224SMarcel Ziswiler
10256a57f224SMarcel Ziswiler	pinctrl_i2c4_gpio: i2c4gpiogrp {
10266a57f224SMarcel Ziswiler		fsl,pins =
102760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C4_SCL_GPIO5_IO20		0x146>,	/* SODIMM 14 */
102860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_I2C4_SDA_GPIO5_IO21		0x146>;	/* SODIMM 12 */
10296a57f224SMarcel Ziswiler	};
10306a57f224SMarcel Ziswiler
10316a57f224SMarcel Ziswiler	/* Verdin I2S_2_BCLK (TOUCH_RESET#) */
10326a57f224SMarcel Ziswiler	pinctrl_i2s_2_bclk_touch_reset: i2s2bclktouchresetgrp {
10336a57f224SMarcel Ziswiler		fsl,pins =
103460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD2_GPIO3_IO23		0x6>;	/* SODIMM 42 */
10356a57f224SMarcel Ziswiler	};
10366a57f224SMarcel Ziswiler
10376a57f224SMarcel Ziswiler	/* Verdin I2S_2_D_OUT shared with SAI5 */
10386a57f224SMarcel Ziswiler	pinctrl_i2s_2_d_out_dsi_1_bkl_en: i2s2doutdsi1bklengrp {
10396a57f224SMarcel Ziswiler		fsl,pins =
104060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD3_GPIO3_IO24		0x6>;	/* SODIMM 46 */
10416a57f224SMarcel Ziswiler	};
10426a57f224SMarcel Ziswiler
10436a57f224SMarcel Ziswiler	pinctrl_pcie0: pcie0grp {
10446a57f224SMarcel Ziswiler		fsl,pins =
10456a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXFS_GPIO3_IO19		0x6>,	/* SODIMM 244 */
10466a57f224SMarcel Ziswiler			/* PMIC_EN_PCIe_CLK, unused */
10476a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_RESET_B_GPIO2_IO19		0x6>;
10486a57f224SMarcel Ziswiler	};
10496a57f224SMarcel Ziswiler
10506a57f224SMarcel Ziswiler	pinctrl_pmic: pmicirqgrp {
10516a57f224SMarcel Ziswiler		fsl,pins =
105260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO03_GPIO1_IO3		0x141>;	/* PMIC_INT# */
10536a57f224SMarcel Ziswiler	};
10546a57f224SMarcel Ziswiler
10556a57f224SMarcel Ziswiler	/* Verdin PWM_3_DSI shared with GPIO1_IO1 */
10566a57f224SMarcel Ziswiler	pinctrl_pwm_1: pwm1grp {
10576a57f224SMarcel Ziswiler		fsl,pins =
10586a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO01_PWM1_OUT		0x6>;	/* SODIMM 19 */
10596a57f224SMarcel Ziswiler	};
10606a57f224SMarcel Ziswiler
10616a57f224SMarcel Ziswiler	pinctrl_pwm_2: pwm2grp {
10626a57f224SMarcel Ziswiler		fsl,pins =
10636a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SPDIF_RX_PWM2_OUT			0x6>;	/* SODIMM 15 */
10646a57f224SMarcel Ziswiler	};
10656a57f224SMarcel Ziswiler
10666a57f224SMarcel Ziswiler	pinctrl_pwm_3: pwm3grp {
10676a57f224SMarcel Ziswiler		fsl,pins =
10686a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SPDIF_TX_PWM3_OUT			0x6>;	/* SODIMM 16 */
10696a57f224SMarcel Ziswiler	};
10706a57f224SMarcel Ziswiler
10716a57f224SMarcel Ziswiler	/* Verdin PWM_3_DSI (pulled-down as active-high) shared with PWM1_OUT */
10726a57f224SMarcel Ziswiler	pinctrl_pwm_3_dsi_hpd_gpio: pwm3dsihpdgpiogrp {
10736a57f224SMarcel Ziswiler		fsl,pins =
107460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO01_GPIO1_IO1		0x106>;	/* SODIMM 19 */
10756a57f224SMarcel Ziswiler	};
10766a57f224SMarcel Ziswiler
10776a57f224SMarcel Ziswiler	pinctrl_reg_eth: regethgrp {
10786a57f224SMarcel Ziswiler		fsl,pins =
107960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_WP_GPIO2_IO20			0x146>;	/* PMIC_EN_ETH */
10806a57f224SMarcel Ziswiler	};
10816a57f224SMarcel Ziswiler
10826a57f224SMarcel Ziswiler	pinctrl_reg_usb1_en: regusb1engrp {
10836a57f224SMarcel Ziswiler		fsl,pins =
108460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO12_GPIO1_IO12		0x106>;	/* SODIMM 155 */
10856a57f224SMarcel Ziswiler	};
10866a57f224SMarcel Ziswiler
10876a57f224SMarcel Ziswiler	pinctrl_reg_usb2_en: regusb2engrp {
10886a57f224SMarcel Ziswiler		fsl,pins =
108960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO14_GPIO1_IO14		0x106>;	/* SODIMM 185 */
10906a57f224SMarcel Ziswiler	};
10916a57f224SMarcel Ziswiler
10926a57f224SMarcel Ziswiler	pinctrl_sai2: sai2grp {
10936a57f224SMarcel Ziswiler		fsl,pins =
109460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_MCLK_SAI2_MCLK		0x6>,	/* SODIMM 38 */
1095593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_TXC_SAI2_TX_BCLK		0x6>,	/* SODIMM 30 */
1096593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_TXFS_SAI2_TX_SYNC		0x6>,	/* SODIMM 32 */
109760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_RXD0_SAI2_RX_DATA0		0x6>,	/* SODIMM 36 */
109860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_TXD0_SAI2_TX_DATA0		0x6>;	/* SODIMM 34 */
10996a57f224SMarcel Ziswiler	};
11006a57f224SMarcel Ziswiler
11016a57f224SMarcel Ziswiler	pinctrl_sai5: sai5grp {
11026a57f224SMarcel Ziswiler		fsl,pins =
110360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD0_SAI5_RX_DATA0		0x6>,	/* SODIMM 48 */
110460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD1_SAI5_TX_SYNC		0x6>,	/* SODIMM 44 */
110560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD2_SAI5_TX_BCLK		0x6>,	/* SODIMM 42 */
110660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXD3_SAI5_TX_DATA0		0x6>;	/* SODIMM 46 */
11076a57f224SMarcel Ziswiler	};
11086a57f224SMarcel Ziswiler
11096a57f224SMarcel Ziswiler	/* control signal for optional ATTPM20P or SE050 */
11106a57f224SMarcel Ziswiler	pinctrl_pmic_tpm_ena: pmictpmenagrp {
11116a57f224SMarcel Ziswiler		fsl,pins =
111260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD7_GPIO4_IO19		0x106>;	/* PMIC_TPM_ENA */
11136a57f224SMarcel Ziswiler	};
11146a57f224SMarcel Ziswiler
11156a57f224SMarcel Ziswiler	pinctrl_tsp: tspgrp {
11166a57f224SMarcel Ziswiler		fsl,pins =
111760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD4_GPIO4_IO6		0x6>,	/* SODIMM 148 */
111860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD5_GPIO4_IO7		0x6>,	/* SODIMM 152 */
111960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD6_GPIO4_IO8		0x6>,	/* SODIMM 154 */
112060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD7_GPIO4_IO9		0x146>,	/* SODIMM 174 */
112160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD5_GPIO4_IO17		0x6>;	/* SODIMM 150 */
11226a57f224SMarcel Ziswiler	};
11236a57f224SMarcel Ziswiler
11246a57f224SMarcel Ziswiler	pinctrl_uart1: uart1grp {
11256a57f224SMarcel Ziswiler		fsl,pins =
1126593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_RXC_UART1_DCE_RX		0x146>,	/* SODIMM 147 */
1127593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI2_RXFS_UART1_DCE_TX		0x146>;	/* SODIMM 149 */
11286a57f224SMarcel Ziswiler	};
11296a57f224SMarcel Ziswiler
11306a57f224SMarcel Ziswiler	pinctrl_uart2: uart2grp {
11316a57f224SMarcel Ziswiler		fsl,pins =
113260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_RXC_UART2_DCE_CTS_B		0x146>,	/* SODIMM 133 */
1133593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_RXD_UART2_DCE_RTS_B		0x146>,	/* SODIMM 135 */
1134593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_TXC_UART2_DCE_TX		0x146>,	/* SODIMM 131 */
1135593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI3_TXFS_UART2_DCE_RX		0x146>;	/* SODIMM 129 */
11366a57f224SMarcel Ziswiler	};
11376a57f224SMarcel Ziswiler
11386a57f224SMarcel Ziswiler	pinctrl_uart3: uart3grp {
11396a57f224SMarcel Ziswiler		fsl,pins =
114060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI1_MISO_UART3_DCE_CTS_B	0x146>,	/* SODIMM 141 */
1141593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI1_MOSI_UART3_DCE_TX		0x146>,	/* SODIMM 139 */
1142593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI1_SCLK_UART3_DCE_RX		0x146>,	/* SODIMM 137 */
114360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_ECSPI1_SS0_UART3_DCE_RTS_B	0x146>;	/* SODIMM 143 */
11446a57f224SMarcel Ziswiler	};
11456a57f224SMarcel Ziswiler
11466a57f224SMarcel Ziswiler	pinctrl_uart4: uart4grp {
11476a57f224SMarcel Ziswiler		fsl,pins =
114860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART4_RXD_UART4_DCE_RX		0x146>,	/* SODIMM 151 */
114960f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_UART4_TXD_UART4_DCE_TX		0x146>;	/* SODIMM 153 */
11506a57f224SMarcel Ziswiler	};
11516a57f224SMarcel Ziswiler
11526a57f224SMarcel Ziswiler	pinctrl_usdhc1: usdhc1grp {
11536a57f224SMarcel Ziswiler		fsl,pins =
11546a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK		0x190>,
11556a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD		0x1d0>,
11566a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0		0x1d0>,
11576a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1		0x1d0>,
11586a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2		0x1d0>,
11596a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3		0x1d0>,
11606a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4		0x1d0>,
11616a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5		0x1d0>,
11626a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6		0x1d0>,
11636a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7		0x1d0>,
11646a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B	0x1d1>,
11656a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x190>;
11666a57f224SMarcel Ziswiler	};
11676a57f224SMarcel Ziswiler
11686a57f224SMarcel Ziswiler	pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
11696a57f224SMarcel Ziswiler		fsl,pins =
11706a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK		0x194>,
11716a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD		0x1d4>,
11726a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0		0x1d4>,
11736a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1		0x1d4>,
11746a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2		0x1d4>,
11756a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3		0x1d4>,
11766a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4		0x1d4>,
11776a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5		0x1d4>,
11786a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6		0x1d4>,
11796a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7		0x1d4>,
11806a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B	0x1d1>,
11816a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x194>;
11826a57f224SMarcel Ziswiler	};
11836a57f224SMarcel Ziswiler
11846a57f224SMarcel Ziswiler	pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
11856a57f224SMarcel Ziswiler		fsl,pins =
11866a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CLK_USDHC1_CLK		0x196>,
11876a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_CMD_USDHC1_CMD		0x1d6>,
11886a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA0_USDHC1_DATA0		0x1d6>,
11896a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA1_USDHC1_DATA1		0x1d6>,
11906a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA2_USDHC1_DATA2		0x1d6>,
11916a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA3_USDHC1_DATA3		0x1d6>,
11926a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA4_USDHC1_DATA4		0x1d6>,
11936a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA5_USDHC1_DATA5		0x1d6>,
11946a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA6_USDHC1_DATA6		0x1d6>,
11956a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_DATA7_USDHC1_DATA7		0x1d6>,
11966a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_RESET_B_USDHC1_RESET_B	0x1d1>,
11976a57f224SMarcel Ziswiler			<MX8MM_IOMUXC_SD1_STROBE_USDHC1_STROBE		0x196>;
11986a57f224SMarcel Ziswiler	};
11996a57f224SMarcel Ziswiler
12006a57f224SMarcel Ziswiler	pinctrl_usdhc2_cd: usdhc2cdgrp {
12016a57f224SMarcel Ziswiler		fsl,pins =
120260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12		0x6>;	/* SODIMM 84 */
12036a57f224SMarcel Ziswiler	};
12046a57f224SMarcel Ziswiler
12054f6b5de9SMarcel Ziswiler	pinctrl_usdhc2_cd_sleep: usdhc2cdslpgrp {
12064f6b5de9SMarcel Ziswiler		fsl,pins =
12074f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CD_B_GPIO2_IO12		0x0>;	/* SODIMM 84 */
12084f6b5de9SMarcel Ziswiler	};
12094f6b5de9SMarcel Ziswiler
12106a57f224SMarcel Ziswiler	pinctrl_usdhc2_pwr_en: usdhc2pwrengrp {
12116a57f224SMarcel Ziswiler		fsl,pins =
121260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_CLE_GPIO3_IO5		0x6>;	/* SODIMM 76 */
12136a57f224SMarcel Ziswiler	};
12146a57f224SMarcel Ziswiler
1215f84ccff6SMarcel Ziswiler	/*
1216f84ccff6SMarcel Ziswiler	 * Note: Due to ERR050080 we use discrete external on-module resistors pulling-up to the
1217f84ccff6SMarcel Ziswiler	 * on-module +V3.3_1.8_SD (LDO5) rail and explicitly disable the internal pull-ups here.
1218f84ccff6SMarcel Ziswiler	 */
12196a57f224SMarcel Ziswiler	pinctrl_usdhc2: usdhc2grp {
12206a57f224SMarcel Ziswiler		fsl,pins =
1221593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0x10>,
122260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK		0x90>,	/* SODIMM 78 */
122360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD		0x90>,	/* SODIMM 74 */
122460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0		0x90>,	/* SODIMM 80 */
122560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1		0x90>,	/* SODIMM 82 */
122660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2		0x90>,	/* SODIMM 70 */
1227593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3		0x90>;	/* SODIMM 72 */
12286a57f224SMarcel Ziswiler	};
12296a57f224SMarcel Ziswiler
12306a57f224SMarcel Ziswiler	pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
12316a57f224SMarcel Ziswiler		fsl,pins =
1232593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0x10>,
123360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK		0x94>,
123460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD		0x94>,
123560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0		0x94>,
123660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1		0x94>,
123760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2		0x94>,
1238593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3		0x94>;
12396a57f224SMarcel Ziswiler	};
12406a57f224SMarcel Ziswiler
12416a57f224SMarcel Ziswiler	pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
12426a57f224SMarcel Ziswiler		fsl,pins =
1243593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0x10>,
124460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK		0x96>,
124560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD		0x96>,
124660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0		0x96>,
124760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1		0x96>,
124860f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2		0x96>,
1249593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3		0x96>;
12506a57f224SMarcel Ziswiler	};
12516a57f224SMarcel Ziswiler
12524f6b5de9SMarcel Ziswiler	/* Avoid backfeeding with removed card power */
12534f6b5de9SMarcel Ziswiler	pinctrl_usdhc2_sleep: usdhc2slpgrp {
12544f6b5de9SMarcel Ziswiler		fsl,pins =
12554f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO04_USDHC2_VSELECT		0x0>,
12564f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CLK_USDHC2_CLK		0x0>,
12574f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_CMD_USDHC2_CMD		0x0>,
12584f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA0_USDHC2_DATA0		0x0>,
12594f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA1_USDHC2_DATA1		0x0>,
12604f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA2_USDHC2_DATA2		0x0>,
12614f6b5de9SMarcel Ziswiler			<MX8MM_IOMUXC_SD2_DATA3_USDHC2_DATA3		0x0>;
12624f6b5de9SMarcel Ziswiler	};
12634f6b5de9SMarcel Ziswiler
126498e4f193SMarcel Ziswiler	/*
126598e4f193SMarcel Ziswiler	 * On-module Wi-Fi/BT or type specific SDHC interface
126698e4f193SMarcel Ziswiler	 * (e.g. on X52 extension slot of Verdin Development Board)
126798e4f193SMarcel Ziswiler	 */
12686a57f224SMarcel Ziswiler	pinctrl_usdhc3: usdhc3grp {
12696a57f224SMarcel Ziswiler		fsl,pins =
127060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA04_USDHC3_DATA0		0x150>,
127160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA05_USDHC3_DATA1		0x150>,
127260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA06_USDHC3_DATA2		0x150>,
1273593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA07_USDHC3_DATA3		0x150>,
1274593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WE_B_USDHC3_CLK		0x150>,
1275593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WP_B_USDHC3_CMD		0x150>;
12766a57f224SMarcel Ziswiler	};
12776a57f224SMarcel Ziswiler
12786a57f224SMarcel Ziswiler	pinctrl_usdhc3_100mhz: usdhc3-100mhzgrp {
12796a57f224SMarcel Ziswiler		fsl,pins =
128060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA04_USDHC3_DATA0		0x154>,
128160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA05_USDHC3_DATA1		0x154>,
128260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA06_USDHC3_DATA2		0x154>,
1283593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA07_USDHC3_DATA3		0x154>,
1284593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WE_B_USDHC3_CLK		0x154>,
1285593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WP_B_USDHC3_CMD		0x154>;
12866a57f224SMarcel Ziswiler	};
12876a57f224SMarcel Ziswiler
12886a57f224SMarcel Ziswiler	pinctrl_usdhc3_200mhz: usdhc3-200mhzgrp {
12896a57f224SMarcel Ziswiler		fsl,pins =
129060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA04_USDHC3_DATA0		0x156>,
129160f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA05_USDHC3_DATA1		0x156>,
129260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA06_USDHC3_DATA2		0x156>,
1293593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_DATA07_USDHC3_DATA3		0x156>,
1294593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WE_B_USDHC3_CLK		0x156>,
1295593c535bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_WP_B_USDHC3_CMD		0x156>;
12966a57f224SMarcel Ziswiler	};
12976a57f224SMarcel Ziswiler
12986a57f224SMarcel Ziswiler	pinctrl_wdog: wdoggrp {
12996a57f224SMarcel Ziswiler		fsl,pins =
130060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_GPIO1_IO02_WDOG1_WDOG_B		0x166>;	/* PMIC_WDI */
13016a57f224SMarcel Ziswiler	};
13026a57f224SMarcel Ziswiler
13036a57f224SMarcel Ziswiler	pinctrl_wifi_ctrl: wifictrlgrp {
13046a57f224SMarcel Ziswiler		fsl,pins =
130560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_NAND_READY_B_GPIO3_IO16		0x46>,	/* WIFI_WKUP_BT */
130660f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD7_GPIO4_IO9		0x146>,	/* WIFI_W_WKUP_HOST */
130760f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_RXC_GPIO3_IO20		0x46>;	/* WIFI_WKUP_WLAN */
13086a57f224SMarcel Ziswiler	};
13096a57f224SMarcel Ziswiler
13106a57f224SMarcel Ziswiler	pinctrl_wifi_i2s: bti2sgrp {
13116a57f224SMarcel Ziswiler		fsl,pins =
131260f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD4_SAI6_TX_BCLK		0x6>,	/* WIFI_TX_BCLK */
131360f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD5_SAI6_TX_DATA0		0x6>,	/* WIFI_TX_DATA0 */
131460f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_RXD6_SAI6_TX_SYNC		0x6>,	/* WIFI_TX_SYNC */
131560f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI1_TXD5_SAI6_RX_DATA0		0x6>;	/* WIFI_RX_DATA0 */
13166a57f224SMarcel Ziswiler	};
13176a57f224SMarcel Ziswiler
13186a57f224SMarcel Ziswiler	pinctrl_wifi_pwr_en: wifipwrengrp {
13196a57f224SMarcel Ziswiler		fsl,pins =
132060f01b5bSMarcel Ziswiler			<MX8MM_IOMUXC_SAI5_MCLK_GPIO3_IO25		0x6>;	/* PMIC_EN_WIFI */
13216a57f224SMarcel Ziswiler	};
13226a57f224SMarcel Ziswiler};
1323