0001 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
0002 /*
0003 * Copyright 2014-2022 Toradex
0004 * Copyright 2012 Freescale Semiconductor, Inc.
0005 * Copyright 2011 Linaro Ltd.
0006 */
0007
0008 /dts-v1/;
0009
0010 #include <dt-bindings/gpio/gpio.h>
0011 #include <dt-bindings/input/input.h>
0012 #include <dt-bindings/interrupt-controller/irq.h>
0013 #include "imx6q.dtsi"
0014 #include "imx6qdl-apalis.dtsi"
0015
0016 / {
0017 model = "Toradex Apalis iMX6Q/D Module on Apalis Evaluation Board";
0018 compatible = "toradex,apalis_imx6q-eval", "toradex,apalis_imx6q",
0019 "fsl,imx6q";
0020
0021 aliases {
0022 i2c0 = &i2c1;
0023 i2c1 = &i2c3;
0024 i2c2 = &i2c2;
0025 rtc0 = &rtc_i2c;
0026 rtc1 = &snvs_rtc;
0027 };
0028
0029 chosen {
0030 stdout-path = "serial0:115200n8";
0031 };
0032
0033 reg_pcie_switch: regulator-pcie-switch {
0034 compatible = "regulator-fixed";
0035 enable-active-high;
0036 gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
0037 regulator-max-microvolt = <1800000>;
0038 regulator-min-microvolt = <1800000>;
0039 regulator-name = "pcie_switch";
0040 startup-delay-us = <100000>;
0041 status = "okay";
0042 };
0043
0044 reg_3v3_sw: regulator-3v3-sw {
0045 compatible = "regulator-fixed";
0046 regulator-always-on;
0047 regulator-max-microvolt = <3300000>;
0048 regulator-min-microvolt = <3300000>;
0049 regulator-name = "3.3V_SW";
0050 };
0051 };
0052
0053 &can1 {
0054 xceiver-supply = <®_3v3_sw>;
0055 status = "okay";
0056 };
0057
0058 &can2 {
0059 xceiver-supply = <®_3v3_sw>;
0060 status = "okay";
0061 };
0062
0063 /* I2C1_SDA/SCL on MXM3 209/211 (e.g. RTC on carrier board) */
0064 &i2c1 {
0065 status = "okay";
0066
0067 pcie-switch@58 {
0068 compatible = "plx,pex8605";
0069 reg = <0x58>;
0070 };
0071
0072 /* M41T0M6 real time clock on carrier board */
0073 rtc_i2c: rtc@68 {
0074 compatible = "st,m41t0";
0075 reg = <0x68>;
0076 };
0077 };
0078
0079 /*
0080 * I2C3_SDA/SCL (CAM) on MXM3 pin 201/203 (e.g. camera sensor on carrier
0081 * board)
0082 */
0083 &i2c3 {
0084 status = "okay";
0085 };
0086
0087 &pcie {
0088 pinctrl-names = "default";
0089 pinctrl-0 = <&pinctrl_reset_moci>;
0090 /* active-high meaning opposite of regular PERST# active-low polarity */
0091 reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
0092 reset-gpio-active-high;
0093 vpcie-supply = <®_pcie_switch>;
0094 status = "okay";
0095 };
0096
0097 &pwm1 {
0098 status = "okay";
0099 };
0100
0101 &pwm2 {
0102 status = "okay";
0103 };
0104
0105 &pwm3 {
0106 status = "okay";
0107 };
0108
0109 &pwm4 {
0110 status = "okay";
0111 };
0112
0113 ®_usb_host_vbus {
0114 status = "okay";
0115 };
0116
0117 ®_usb_otg_vbus {
0118 status = "okay";
0119 };
0120
0121 &sata {
0122 status = "okay";
0123 };
0124
0125 &sound_spdif {
0126 status = "okay";
0127 };
0128
0129 &spdif {
0130 status = "okay";
0131 };
0132
0133 &uart1 {
0134 status = "okay";
0135 };
0136
0137 &uart2 {
0138 status = "okay";
0139 };
0140
0141 &uart4 {
0142 status = "okay";
0143 };
0144
0145 &uart5 {
0146 status = "okay";
0147 };
0148
0149 &usbh1 {
0150 vbus-supply = <®_usb_host_vbus>;
0151 status = "okay";
0152 };
0153
0154 &usbotg {
0155 vbus-supply = <®_usb_otg_vbus>;
0156 status = "okay";
0157 };
0158
0159 /* MMC1 */
0160 &usdhc1 {
0161 status = "okay";
0162 };
0163
0164 /* SD1 */
0165 &usdhc2 {
0166 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
0167 pinctrl-names = "default";
0168 pinctrl-0 = <&pinctrl_usdhc2 &pinctrl_sd_cd>;
0169 status = "okay";
0170 };