1*724ba675SRob Herring/* 2*724ba675SRob Herring * Support for CompuLab CL-SOM-iMX7 System-on-Module 3*724ba675SRob Herring * 4*724ba675SRob Herring * Copyright (C) 2015 CompuLab Ltd. - http://www.compulab.co.il/ 5*724ba675SRob Herring * Author: Ilya Ledvich <ilya@compulab.co.il> 6*724ba675SRob Herring * 7*724ba675SRob Herring * This file is dual-licensed: you can use it either under the terms 8*724ba675SRob Herring * of the GPL or the X11 license, at your option. Note that this dual 9*724ba675SRob Herring * licensing only applies to this file, and not this project as a 10*724ba675SRob Herring * whole. 11*724ba675SRob Herring */ 12*724ba675SRob Herring 13*724ba675SRob Herring/dts-v1/; 14*724ba675SRob Herring 15*724ba675SRob Herring#include "imx7d.dtsi" 16*724ba675SRob Herring 17*724ba675SRob Herring/ { 18*724ba675SRob Herring model = "CompuLab CL-SOM-iMX7"; 19*724ba675SRob Herring compatible = "compulab,cl-som-imx7", "fsl,imx7d"; 20*724ba675SRob Herring 21*724ba675SRob Herring memory@80000000 { 22*724ba675SRob Herring device_type = "memory"; 23*724ba675SRob Herring reg = <0x80000000 0x10000000>; /* 256 MB - minimal configuration */ 24*724ba675SRob Herring }; 25*724ba675SRob Herring 26*724ba675SRob Herring reg_usb_otg1_vbus: regulator-vbus { 27*724ba675SRob Herring compatible = "regulator-fixed"; 28*724ba675SRob Herring regulator-name = "usb_otg1_vbus"; 29*724ba675SRob Herring regulator-min-microvolt = <5000000>; 30*724ba675SRob Herring regulator-max-microvolt = <5000000>; 31*724ba675SRob Herring gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>; 32*724ba675SRob Herring enable-active-high; 33*724ba675SRob Herring }; 34*724ba675SRob Herring}; 35*724ba675SRob Herring 36*724ba675SRob Herring&cpu0 { 37*724ba675SRob Herring cpu-supply = <&sw1a_reg>; 38*724ba675SRob Herring}; 39*724ba675SRob Herring 40*724ba675SRob Herring&cpu1 { 41*724ba675SRob Herring cpu-supply = <&sw1a_reg>; 42*724ba675SRob Herring}; 43*724ba675SRob Herring 44*724ba675SRob Herring&fec1 { 45*724ba675SRob Herring pinctrl-names = "default"; 46*724ba675SRob Herring pinctrl-0 = <&pinctrl_enet1>; 47*724ba675SRob Herring assigned-clocks = <&clks IMX7D_ENET1_TIME_ROOT_SRC>, 48*724ba675SRob Herring <&clks IMX7D_ENET1_TIME_ROOT_CLK>; 49*724ba675SRob Herring assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>; 50*724ba675SRob Herring assigned-clock-rates = <0>, <100000000>; 51*724ba675SRob Herring phy-mode = "rgmii-id"; 52*724ba675SRob Herring phy-handle = <ðphy0>; 53*724ba675SRob Herring fsl,magic-packet; 54*724ba675SRob Herring status = "okay"; 55*724ba675SRob Herring 56*724ba675SRob Herring mdio { 57*724ba675SRob Herring #address-cells = <1>; 58*724ba675SRob Herring #size-cells = <0>; 59*724ba675SRob Herring 60*724ba675SRob Herring ethphy0: ethernet-phy@0 { 61*724ba675SRob Herring compatible = "ethernet-phy-ieee802.3-c22"; 62*724ba675SRob Herring reg = <0>; 63*724ba675SRob Herring }; 64*724ba675SRob Herring 65*724ba675SRob Herring ethphy1: ethernet-phy@1 { 66*724ba675SRob Herring compatible = "ethernet-phy-ieee802.3-c22"; 67*724ba675SRob Herring reg = <1>; 68*724ba675SRob Herring }; 69*724ba675SRob Herring }; 70*724ba675SRob Herring}; 71*724ba675SRob Herring 72*724ba675SRob Herring&fec2 { 73*724ba675SRob Herring pinctrl-names = "default"; 74*724ba675SRob Herring pinctrl-0 = <&pinctrl_enet2>; 75*724ba675SRob Herring assigned-clocks = <&clks IMX7D_ENET2_TIME_ROOT_SRC>, 76*724ba675SRob Herring <&clks IMX7D_ENET2_TIME_ROOT_CLK>; 77*724ba675SRob Herring assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>; 78*724ba675SRob Herring assigned-clock-rates = <0>, <100000000>; 79*724ba675SRob Herring phy-mode = "rgmii-id"; 80*724ba675SRob Herring phy-handle = <ðphy1>; 81*724ba675SRob Herring fsl,magic-packet; 82*724ba675SRob Herring status = "okay"; 83*724ba675SRob Herring}; 84*724ba675SRob Herring 85*724ba675SRob Herring&i2c2 { 86*724ba675SRob Herring pinctrl-names = "default"; 87*724ba675SRob Herring pinctrl-0 = <&pinctrl_i2c2>; 88*724ba675SRob Herring status = "okay"; 89*724ba675SRob Herring 90*724ba675SRob Herring pmic: pmic@8 { 91*724ba675SRob Herring compatible = "fsl,pfuze3000"; 92*724ba675SRob Herring reg = <0x8>; 93*724ba675SRob Herring 94*724ba675SRob Herring regulators { 95*724ba675SRob Herring sw1a_reg: sw1a { 96*724ba675SRob Herring regulator-min-microvolt = <700000>; 97*724ba675SRob Herring regulator-max-microvolt = <3300000>; 98*724ba675SRob Herring regulator-boot-on; 99*724ba675SRob Herring regulator-always-on; 100*724ba675SRob Herring regulator-ramp-delay = <6250>; 101*724ba675SRob Herring }; 102*724ba675SRob Herring 103*724ba675SRob Herring /* use sw1c_reg to align with pfuze100/pfuze200 */ 104*724ba675SRob Herring sw1c_reg: sw1b { 105*724ba675SRob Herring regulator-min-microvolt = <700000>; 106*724ba675SRob Herring regulator-max-microvolt = <1475000>; 107*724ba675SRob Herring regulator-boot-on; 108*724ba675SRob Herring regulator-always-on; 109*724ba675SRob Herring regulator-ramp-delay = <6250>; 110*724ba675SRob Herring }; 111*724ba675SRob Herring 112*724ba675SRob Herring sw2_reg: sw2 { 113*724ba675SRob Herring regulator-min-microvolt = <1500000>; 114*724ba675SRob Herring regulator-max-microvolt = <1850000>; 115*724ba675SRob Herring regulator-boot-on; 116*724ba675SRob Herring regulator-always-on; 117*724ba675SRob Herring }; 118*724ba675SRob Herring 119*724ba675SRob Herring sw3a_reg: sw3 { 120*724ba675SRob Herring regulator-min-microvolt = <900000>; 121*724ba675SRob Herring regulator-max-microvolt = <1650000>; 122*724ba675SRob Herring regulator-boot-on; 123*724ba675SRob Herring regulator-always-on; 124*724ba675SRob Herring }; 125*724ba675SRob Herring 126*724ba675SRob Herring swbst_reg: swbst { 127*724ba675SRob Herring regulator-min-microvolt = <5000000>; 128*724ba675SRob Herring regulator-max-microvolt = <5150000>; 129*724ba675SRob Herring }; 130*724ba675SRob Herring 131*724ba675SRob Herring snvs_reg: vsnvs { 132*724ba675SRob Herring regulator-min-microvolt = <1000000>; 133*724ba675SRob Herring regulator-max-microvolt = <3000000>; 134*724ba675SRob Herring regulator-boot-on; 135*724ba675SRob Herring regulator-always-on; 136*724ba675SRob Herring }; 137*724ba675SRob Herring 138*724ba675SRob Herring vref_reg: vrefddr { 139*724ba675SRob Herring regulator-boot-on; 140*724ba675SRob Herring regulator-always-on; 141*724ba675SRob Herring }; 142*724ba675SRob Herring 143*724ba675SRob Herring vgen1_reg: vldo1 { 144*724ba675SRob Herring regulator-min-microvolt = <1800000>; 145*724ba675SRob Herring regulator-max-microvolt = <3300000>; 146*724ba675SRob Herring regulator-always-on; 147*724ba675SRob Herring }; 148*724ba675SRob Herring 149*724ba675SRob Herring vgen2_reg: vldo2 { 150*724ba675SRob Herring regulator-min-microvolt = <800000>; 151*724ba675SRob Herring regulator-max-microvolt = <1550000>; 152*724ba675SRob Herring }; 153*724ba675SRob Herring 154*724ba675SRob Herring vgen3_reg: vccsd { 155*724ba675SRob Herring regulator-min-microvolt = <2850000>; 156*724ba675SRob Herring regulator-max-microvolt = <3300000>; 157*724ba675SRob Herring regulator-always-on; 158*724ba675SRob Herring }; 159*724ba675SRob Herring 160*724ba675SRob Herring vgen4_reg: v33 { 161*724ba675SRob Herring regulator-min-microvolt = <2850000>; 162*724ba675SRob Herring regulator-max-microvolt = <3300000>; 163*724ba675SRob Herring regulator-always-on; 164*724ba675SRob Herring }; 165*724ba675SRob Herring 166*724ba675SRob Herring vgen5_reg: vldo3 { 167*724ba675SRob Herring regulator-min-microvolt = <1800000>; 168*724ba675SRob Herring regulator-max-microvolt = <3300000>; 169*724ba675SRob Herring regulator-always-on; 170*724ba675SRob Herring }; 171*724ba675SRob Herring 172*724ba675SRob Herring vgen6_reg: vldo4 { 173*724ba675SRob Herring regulator-min-microvolt = <1800000>; 174*724ba675SRob Herring regulator-max-microvolt = <3300000>; 175*724ba675SRob Herring regulator-always-on; 176*724ba675SRob Herring }; 177*724ba675SRob Herring }; 178*724ba675SRob Herring }; 179*724ba675SRob Herring 180*724ba675SRob Herring pca9555: pca9555@20 { 181*724ba675SRob Herring compatible = "nxp,pca9555"; 182*724ba675SRob Herring gpio-controller; 183*724ba675SRob Herring #gpio-cells = <2>; 184*724ba675SRob Herring reg = <0x20>; 185*724ba675SRob Herring }; 186*724ba675SRob Herring 187*724ba675SRob Herring eeprom@50 { 188*724ba675SRob Herring compatible = "atmel,24c08"; 189*724ba675SRob Herring reg = <0x50>; 190*724ba675SRob Herring pagesize = <16>; 191*724ba675SRob Herring }; 192*724ba675SRob Herring}; 193*724ba675SRob Herring 194*724ba675SRob Herring&uart1 { 195*724ba675SRob Herring pinctrl-names = "default"; 196*724ba675SRob Herring pinctrl-0 = <&pinctrl_uart1>; 197*724ba675SRob Herring assigned-clocks = <&clks IMX7D_UART1_ROOT_SRC>; 198*724ba675SRob Herring assigned-clock-parents = <&clks IMX7D_PLL_SYS_MAIN_240M_CLK>; 199*724ba675SRob Herring status = "okay"; 200*724ba675SRob Herring}; 201*724ba675SRob Herring 202*724ba675SRob Herring&usbotg1 { 203*724ba675SRob Herring pinctrl-names = "default"; 204*724ba675SRob Herring pinctrl-0 = <&pinctrl_usbotg1>; 205*724ba675SRob Herring vbus-supply = <®_usb_otg1_vbus>; 206*724ba675SRob Herring status = "okay"; 207*724ba675SRob Herring}; 208*724ba675SRob Herring 209*724ba675SRob Herring&usdhc3 { 210*724ba675SRob Herring pinctrl-names = "default"; 211*724ba675SRob Herring pinctrl-0 = <&pinctrl_usdhc3>; 212*724ba675SRob Herring assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>; 213*724ba675SRob Herring assigned-clock-rates = <400000000>; 214*724ba675SRob Herring bus-width = <8>; 215*724ba675SRob Herring fsl,tuning-step = <2>; 216*724ba675SRob Herring non-removable; 217*724ba675SRob Herring status = "okay"; 218*724ba675SRob Herring}; 219*724ba675SRob Herring 220*724ba675SRob Herring&iomuxc { 221*724ba675SRob Herring pinctrl_enet1: enet1grp { 222*724ba675SRob Herring fsl,pins = < 223*724ba675SRob Herring MX7D_PAD_SD2_CD_B__ENET1_MDIO 0x30 224*724ba675SRob Herring MX7D_PAD_SD2_WP__ENET1_MDC 0x30 225*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TXC__ENET1_RGMII_TXC 0x11 226*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TD0__ENET1_RGMII_TD0 0x11 227*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TD1__ENET1_RGMII_TD1 0x11 228*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TD2__ENET1_RGMII_TD2 0x11 229*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TD3__ENET1_RGMII_TD3 0x11 230*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_TX_CTL__ENET1_RGMII_TX_CTL 0x11 231*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RXC__ENET1_RGMII_RXC 0x11 232*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RD0__ENET1_RGMII_RD0 0x11 233*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RD1__ENET1_RGMII_RD1 0x11 234*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RD2__ENET1_RGMII_RD2 0x11 235*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RD3__ENET1_RGMII_RD3 0x11 236*724ba675SRob Herring MX7D_PAD_ENET1_RGMII_RX_CTL__ENET1_RGMII_RX_CTL 0x11 237*724ba675SRob Herring >; 238*724ba675SRob Herring }; 239*724ba675SRob Herring 240*724ba675SRob Herring pinctrl_enet2: enet2grp { 241*724ba675SRob Herring fsl,pins = < 242*724ba675SRob Herring MX7D_PAD_EPDC_GDSP__ENET2_RGMII_TXC 0x11 243*724ba675SRob Herring MX7D_PAD_EPDC_SDCE2__ENET2_RGMII_TD0 0x11 244*724ba675SRob Herring MX7D_PAD_EPDC_SDCE3__ENET2_RGMII_TD1 0x11 245*724ba675SRob Herring MX7D_PAD_EPDC_GDCLK__ENET2_RGMII_TD2 0x11 246*724ba675SRob Herring MX7D_PAD_EPDC_GDOE__ENET2_RGMII_TD3 0x11 247*724ba675SRob Herring MX7D_PAD_EPDC_GDRL__ENET2_RGMII_TX_CTL 0x11 248*724ba675SRob Herring MX7D_PAD_EPDC_SDCE1__ENET2_RGMII_RXC 0x11 249*724ba675SRob Herring MX7D_PAD_EPDC_SDCLK__ENET2_RGMII_RD0 0x11 250*724ba675SRob Herring MX7D_PAD_EPDC_SDLE__ENET2_RGMII_RD1 0x11 251*724ba675SRob Herring MX7D_PAD_EPDC_SDOE__ENET2_RGMII_RD2 0x11 252*724ba675SRob Herring MX7D_PAD_EPDC_SDSHR__ENET2_RGMII_RD3 0x11 253*724ba675SRob Herring MX7D_PAD_EPDC_SDCE0__ENET2_RGMII_RX_CTL 0x11 254*724ba675SRob Herring >; 255*724ba675SRob Herring }; 256*724ba675SRob Herring 257*724ba675SRob Herring pinctrl_i2c2: i2c2grp { 258*724ba675SRob Herring fsl,pins = < 259*724ba675SRob Herring MX7D_PAD_I2C2_SDA__I2C2_SDA 0x4000007f 260*724ba675SRob Herring MX7D_PAD_I2C2_SCL__I2C2_SCL 0x4000007f 261*724ba675SRob Herring >; 262*724ba675SRob Herring }; 263*724ba675SRob Herring 264*724ba675SRob Herring pinctrl_uart1: uart1grp { 265*724ba675SRob Herring fsl,pins = < 266*724ba675SRob Herring MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x79 267*724ba675SRob Herring MX7D_PAD_UART1_RX_DATA__UART1_DCE_RX 0x79 268*724ba675SRob Herring >; 269*724ba675SRob Herring }; 270*724ba675SRob Herring 271*724ba675SRob Herring pinctrl_usdhc3: usdhc3grp { 272*724ba675SRob Herring fsl,pins = < 273*724ba675SRob Herring MX7D_PAD_SD3_CMD__SD3_CMD 0x59 274*724ba675SRob Herring MX7D_PAD_SD3_CLK__SD3_CLK 0x19 275*724ba675SRob Herring MX7D_PAD_SD3_DATA0__SD3_DATA0 0x59 276*724ba675SRob Herring MX7D_PAD_SD3_DATA1__SD3_DATA1 0x59 277*724ba675SRob Herring MX7D_PAD_SD3_DATA2__SD3_DATA2 0x59 278*724ba675SRob Herring MX7D_PAD_SD3_DATA3__SD3_DATA3 0x59 279*724ba675SRob Herring MX7D_PAD_SD3_DATA4__SD3_DATA4 0x59 280*724ba675SRob Herring MX7D_PAD_SD3_DATA5__SD3_DATA5 0x59 281*724ba675SRob Herring MX7D_PAD_SD3_DATA6__SD3_DATA6 0x59 282*724ba675SRob Herring MX7D_PAD_SD3_DATA7__SD3_DATA7 0x59 283*724ba675SRob Herring MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19 284*724ba675SRob Herring >; 285*724ba675SRob Herring }; 286*724ba675SRob Herring}; 287*724ba675SRob Herring 288*724ba675SRob Herring&iomuxc_lpsr { 289*724ba675SRob Herring pinctrl_usbotg1: usbotg1grp { 290*724ba675SRob Herring fsl,pins = < 291*724ba675SRob Herring MX7D_PAD_LPSR_GPIO1_IO05__GPIO1_IO5 0x14 /* OTG PWREN */ 292*724ba675SRob Herring >; 293*724ba675SRob Herring }; 294*724ba675SRob Herring}; 295