// SPDX-License-Identifier: (GPL-2.0 OR MIT) /* * Copyright (C) 2018 Zodiac Inflight Innovations */ /dts-v1/; #include "imx51.dtsi" / { model = "ZII SCU2 Mezz Board"; compatible = "zii,imx51-scu2-mezz", "fsl,imx51"; chosen { stdout-path = &uart1; }; /* Will be filled by the bootloader */ memory@90000000 { device_type = "memory"; reg = <0x90000000 0>; }; aliases { mdio-gpio0 = &mdio_gpio; }; usb_vbus: regulator-usb-vbus { compatible = "regulator-fixed"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usb_mmc_reset>; gpio = <&gpio3 13 GPIO_ACTIVE_LOW>; startup-delay-us = <150000>; regulator-name = "usb_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; }; mdio_gpio: mdio-gpio { compatible = "virtual,mdio-gpio"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_swmdio>; gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>, /* mdc */ <&gpio2 6 GPIO_ACTIVE_HIGH>; /* mdio */ #address-cells = <1>; #size-cells = <0>; switch@0 { compatible = "marvell,mv88e6085"; reg = <0>; dsa,member = <0 0>; eeprom-length = <512>; interrupt-parent = <&gpio1>; interrupts = <7 IRQ_TYPE_LEVEL_LOW>; interrupt-controller; #interrupt-cells = <2>; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; label = "port4"; }; port@1 { reg = <1>; label = "port5"; }; port@2 { reg = <2>; label = "port6"; }; port@3 { reg = <3>; label = "port7"; }; port@4 { reg = <4>; label = "cpu"; ethernet = <&fec>; fixed-link { speed = <100>; full-duplex; }; }; port@5 { reg = <5>; label = "mezz2esb"; phy-mode = "sgmii"; fixed-link { speed = <1000>; full-duplex; }; }; }; }; }; }; &cpu { cpu-supply = <&sw1_reg>; }; &ecspi1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ecspi1>; cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>, <&gpio4 25 GPIO_ACTIVE_LOW>; status = "okay"; pmic@0 { compatible = "fsl,mc13892"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pmic>; spi-max-frequency = <6000000>; spi-cs-high; reg = <0>; interrupt-parent = <&gpio1>; interrupts = <8 IRQ_TYPE_LEVEL_HIGH>; fsl,mc13xxx-uses-adc; regulators { sw1_reg: sw1 { regulator-min-microvolt = <600000>; regulator-max-microvolt = <1375000>; regulator-boot-on; regulator-always-on; }; sw2_reg: sw2 { regulator-min-microvolt = <900000>; regulator-max-microvolt = <1850000>; regulator-boot-on; regulator-always-on; }; sw3_reg: sw3 { regulator-min-microvolt = <1100000>; regulator-max-microvolt = <1850000>; regulator-boot-on; regulator-always-on; }; sw4_reg: sw4 { regulator-min-microvolt = <1100000>; regulator-max-microvolt = <1850000>; regulator-boot-on; regulator-always-on; }; vpll_reg: vpll { regulator-min-microvolt = <1050000>; regulator-max-microvolt = <1800000>; regulator-boot-on; regulator-always-on; }; vdig_reg: vdig { regulator-min-microvolt = <1650000>; regulator-max-microvolt = <1650000>; regulator-boot-on; }; vsd_reg: vsd { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <3150000>; regulator-always-on; }; vusb_reg: vusb { regulator-always-on; }; vusb2_reg: vusb2 { regulator-min-microvolt = <2400000>; regulator-max-microvolt = <2775000>; regulator-boot-on; regulator-always-on; }; vvideo_reg: vvideo { regulator-min-microvolt = <2775000>; regulator-max-microvolt = <2775000>; }; vaudio_reg: vaudio { regulator-min-microvolt = <2300000>; regulator-max-microvolt = <3000000>; }; vcam_reg: vcam { regulator-min-microvolt = <2500000>; regulator-max-microvolt = <3000000>; }; vgen1_reg: vgen1 { regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; }; vgen2_reg: vgen2 { regulator-min-microvolt = <1200000>; regulator-max-microvolt = <3150000>; regulator-always-on; }; vgen3_reg: vgen3 { regulator-min-microvolt = <1800000>; regulator-max-microvolt = <2900000>; regulator-always-on; }; }; leds { #address-cells = <1>; #size-cells = <0>; led-control = <0x0 0x0 0x3f83f8 0x0>; sysled3: led3@3 { reg = <3>; label = "system:red:power"; linux,default-trigger = "default-on"; }; sysled4: led4@4 { reg = <4>; label = "system:green:act"; linux,default-trigger = "heartbeat"; }; }; }; flash@1 { compatible = "atmel,at45", "atmel,dataflash"; reg = <1>; spi-max-frequency = <25000000>; }; }; &esdhc1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_esdhc1>; bus-width = <8>; non-removable; no-1-8-v; no-sdio; no-sd; status = "okay"; }; &esdhc4 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_esdhc4>; bus-width = <4>; no-1-8-v; no-sdio; cd-gpios = <&gpio4 8 GPIO_ACTIVE_LOW>; status = "okay"; }; &fec { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_fec>; phy-mode = "mii"; status = "okay"; phy-reset-gpios = <&gpio2 14 GPIO_ACTIVE_LOW>; phy-reset-duration = <1>; phy-supply = <&vgen3_reg>; phy-handle = <ðphy>; mdio { #address-cells = <1>; #size-cells = <0>; ethphy: ethernet-phy@0 { reg = <0>; max-speed = <100>; }; }; }; &i2c2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c2>; status = "okay"; eeprom@50 { compatible = "atmel,24c04"; pagesize = <16>; reg = <0x50>; }; }; &uart1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; status = "okay"; }; &uart3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; status = "okay"; mcu { compatible = "zii,rave-sp-mezz"; current-speed = <57600>; #address-cells = <1>; #size-cells = <1>; watchdog { compatible = "zii,rave-sp-watchdog-legacy"; }; eeprom@a4 { compatible = "zii,rave-sp-eeprom"; reg = <0xa4 0x4000>; #address-cells = <1>; #size-cells = <1>; zii,eeprom-name = "main-eeprom"; }; }; }; &usbotg { dr_mode = "host"; disable-over-current; phy_type = "utmi_wide"; vbus-supply = <&usb_vbus>; status = "okay"; }; &usbphy0 { vcc-supply = <&vusb2_reg>; }; &vpu { status = "disabled"; }; &wdog1 { status = "disabled"; }; &iomuxc { pinctrl_ecspi1: ecspi1grp { fsl,pins = < MX51_PAD_CSPI1_MISO__ECSPI1_MISO 0x185 MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI 0x185 MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK 0x185 MX51_PAD_CSPI1_SS0__GPIO4_24 0x85 MX51_PAD_CSPI1_SS1__GPIO4_25 0x85 >; }; pinctrl_esdhc1: esdhc1grp { fsl,pins = < MX51_PAD_SD1_CMD__SD1_CMD 0x400020d5 MX51_PAD_SD1_CLK__SD1_CLK 0x20d5 MX51_PAD_SD1_DATA0__SD1_DATA0 0x20d5 MX51_PAD_SD1_DATA1__SD1_DATA1 0x20d5 MX51_PAD_SD1_DATA2__SD1_DATA2 0x20d5 MX51_PAD_SD1_DATA3__SD1_DATA3 0x20d5 MX51_PAD_SD2_DATA0__SD1_DAT4 0x20d5 MX51_PAD_SD2_DATA1__SD1_DAT5 0x20d5 MX51_PAD_SD2_DATA2__SD1_DAT6 0x20d5 MX51_PAD_SD2_DATA3__SD1_DAT7 0x20d5 >; }; pinctrl_esdhc4: esdhc4grp { fsl,pins = < MX51_PAD_NANDF_RB1__SD4_CMD 0x400020d5 MX51_PAD_NANDF_CS2__SD4_CLK 0x20d5 MX51_PAD_NANDF_CS3__SD4_DAT0 0x20d5 MX51_PAD_NANDF_CS4__SD4_DAT1 0x20d5 MX51_PAD_NANDF_CS5__SD4_DAT2 0x20d5 MX51_PAD_NANDF_CS6__SD4_DAT3 0x20d5 MX51_PAD_NANDF_D0__GPIO4_8 0x100 >; }; pinctrl_fec: fecgrp { fsl,pins = < MX51_PAD_DISP2_DAT15__FEC_TDATA0 0x2004 MX51_PAD_DISP2_DAT6__FEC_TDATA1 0x2004 MX51_PAD_DISP2_DAT7__FEC_TDATA2 0x2004 MX51_PAD_DISP2_DAT8__FEC_TDATA3 0x2004 MX51_PAD_DISP2_DAT9__FEC_TX_EN 0x2004 MX51_PAD_DISP2_DAT10__FEC_COL 0x0180 MX51_PAD_DISP2_DAT11__FEC_RX_CLK 0x0180 MX51_PAD_DISP2_DAT12__FEC_RX_DV 0x20a4 MX51_PAD_DISP2_DAT1__FEC_RX_ER 0x20a4 MX51_PAD_DISP2_DAT13__FEC_TX_CLK 0x2180 MX51_PAD_DI_GP3__FEC_TX_ER 0x2004 MX51_PAD_DISP2_DAT14__FEC_RDATA0 0x2180 MX51_PAD_DI2_DISP_CLK__FEC_RDATA1 0x0085 MX51_PAD_DI_GP4__FEC_RDATA2 0x0085 MX51_PAD_DISP2_DAT0__FEC_RDATA3 0x0085 MX51_PAD_DI2_PIN2__FEC_MDC 0x2004 MX51_PAD_DI2_PIN3__FEC_MDIO 0x01f5 MX51_PAD_DI2_PIN4__FEC_CRS 0x0180 MX51_PAD_EIM_A20__GPIO2_14 0x0085 MX51_PAD_EIM_A21__GPIO2_15 0x00e5 >; }; pinctrl_i2c2: i2c2grp { fsl,pins = < MX51_PAD_KEY_COL4__I2C2_SCL 0x400001ed MX51_PAD_KEY_COL5__I2C2_SDA 0x400001ed >; }; pinctrl_pmic: pmicgrp { fsl,pins = < MX51_PAD_GPIO1_4__GPIO1_4 0x85 MX51_PAD_GPIO1_8__GPIO1_8 0xe5 >; }; pinctrl_swmdio: swmdiogrp { fsl,pins = < MX51_PAD_EIM_D22__GPIO2_6 0x100 MX51_PAD_EIM_D23__GPIO2_7 0x100 >; }; pinctrl_uart1: uart1grp { fsl,pins = < MX51_PAD_UART1_RXD__UART1_RXD 0x1c5 MX51_PAD_UART1_TXD__UART1_TXD 0x1c5 >; }; pinctrl_uart3: uart3grp { fsl,pins = < MX51_PAD_UART3_RXD__UART3_RXD 0x1c5 MX51_PAD_UART3_TXD__UART3_TXD 0x1c5 >; }; pinctrl_usb_mmc_reset: usbmmcgrp { fsl,pins = < MX51_PAD_CSI1_D9__GPIO3_13 0x85 >; }; };