blob: 370558a8ba46cdbc5de68b951fde085b836a4905 [file] [log] [blame] [edit]
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
//
// Copyright 2020 CompuLab
#include "imx8mm-ucm-som.dtsi"
#include <dt-bindings/phy/phy-imx8-pcie.h>
/ {
model = "CompuLab i.MX8MM IoT Gateway";
compatible = "compulab,imx8mm-iot-gateway", "compulab,imx8mm-ucm-som", "fsl,imx8mm";
regulator-usbhub-ena {
compatible = "regulator-fixed";
regulator-name = "usbhub_ena";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio4 28 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-usbhub-rst {
compatible = "regulator-fixed";
regulator-name = "usbhub_rst";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio3 24 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-uart1-mode {
compatible = "regulator-fixed";
regulator-name = "uart1_mode";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio4 26 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-uart1-duplex {
compatible = "regulator-fixed";
regulator-name = "uart1_duplex";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio4 27 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-uart1-shdn {
compatible = "regulator-fixed";
regulator-name = "uart1_shdn";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio5 5 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-uart1-trmen {
compatible = "regulator-fixed";
regulator-name = "uart1_trmen";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio4 25 GPIO_ACTIVE_LOW>;
regulator-always-on;
};
regulator-usdhc2-v {
compatible = "regulator-fixed";
regulator-name = "usdhc2_v";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-mpcie2-rst {
compatible = "regulator-fixed";
regulator-name = "mpcie2_rst";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
regulator-mpcie2lora-dis {
compatible = "regulator-fixed";
regulator-name = "mpcie2lora_dis";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio3 21 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-always-on;
};
pcie0_refclk: clock-pcie0-refclk {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <100000000>;
};
};
&i2c1 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c1>;
status = "okay";
eeprom@54 {
compatible = "atmel,24c08";
reg = <0x54>;
pagesize = <16>;
};
};
&ecspi1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>;
cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
status = "okay";
};
&pcie_phy {
fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>;
fsl,tx-deemph-gen1 = <0x2d>;
fsl,tx-deemph-gen2 = <0xf>;
fsl,clkreq-unsupported;
clocks = <&pcie0_refclk>;
clock-names = "ref";
status = "okay";
};
&pcie0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie0>;
reset-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>;
status = "okay";
};
&usbotg1 {
dr_mode = "host";
status = "okay";
};
&usbotg2 {
#address-cells = <1>;
#size-cells = <0>;
dr_mode = "host";
usb-role-switch;
status = "okay";
usbhub@1 {
compatible = "usb424,9514";
reg = <1>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usb9514>;
#address-cells = <1>;
#size-cells = <0>;
ethernet: ethernet@1 {
compatible = "usb424,ec00";
reg = <1>;
};
};
};
&usdhc2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc2>;
bus-width = <4>;
mmc-ddr-1_8v;
non-removable;
status = "okay";
};
&iomuxc {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hog>;
pinctrl_hog: hoggrp {
fsl,pins = <
/* mPCIe2 */
MX8MM_IOMUXC_SAI5_RXD0_GPIO3_IO21 0x140
MX8MM_IOMUXC_SAI5_RXD1_GPIO3_IO22 0x140
>;
};
pinctrl_ecspi1: ecspi1grp {
fsl,pins = <
MX8MM_IOMUXC_ECSPI1_SCLK_ECSPI1_SCLK 0x82
MX8MM_IOMUXC_ECSPI1_MOSI_ECSPI1_MOSI 0x82
MX8MM_IOMUXC_ECSPI1_MISO_ECSPI1_MISO 0x82
>;
};
pinctrl_ecspi1_cs: ecspi1csgrp {
fsl,pins = <
MX8MM_IOMUXC_ECSPI1_SS0_GPIO5_IO9 0x40000
>;
};
pinctrl_pcie0: pcie0grp {
fsl,pins = <
MX8MM_IOMUXC_SAI5_RXC_GPIO3_IO20 0x140
>;
};
pinctrl_usb9514: usb9514grp {
fsl,pins = <
MX8MM_IOMUXC_SAI3_RXFS_GPIO4_IO28 0x140 /* USB_PS_EN */
MX8MM_IOMUXC_SAI5_RXD3_GPIO3_IO24 0x140 /* HUB_RSTn */
>;
};
};