1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> 4*f126890aSEmmanuel Vadot * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de> 5*f126890aSEmmanuel Vadot */ 6*f126890aSEmmanuel Vadot 7*f126890aSEmmanuel Vadot/dts-v1/; 8*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 9*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 10*f126890aSEmmanuel Vadot#include "imx28.dtsi" 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadot/ { 13*f126890aSEmmanuel Vadot model = "I2SE Duckbill 2"; 14*f126890aSEmmanuel Vadot compatible = "i2se,duckbill-2", "fsl,imx28"; 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot memory@40000000 { 17*f126890aSEmmanuel Vadot device_type = "memory"; 18*f126890aSEmmanuel Vadot reg = <0x40000000 0x08000000>; 19*f126890aSEmmanuel Vadot }; 20*f126890aSEmmanuel Vadot 21*f126890aSEmmanuel Vadot reg_3p3v: regulator-3p3v { 22*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 23*f126890aSEmmanuel Vadot regulator-name = "3P3V"; 24*f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 25*f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 26*f126890aSEmmanuel Vadot regulator-always-on; 27*f126890aSEmmanuel Vadot }; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot leds { 30*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 31*f126890aSEmmanuel Vadot pinctrl-names = "default"; 32*f126890aSEmmanuel Vadot pinctrl-0 = <&led_pins>; 33*f126890aSEmmanuel Vadot 34*f126890aSEmmanuel Vadot status-red { 35*f126890aSEmmanuel Vadot label = "duckbill:red:status"; 36*f126890aSEmmanuel Vadot gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; 37*f126890aSEmmanuel Vadot linux,default-trigger = "default-on"; 38*f126890aSEmmanuel Vadot }; 39*f126890aSEmmanuel Vadot 40*f126890aSEmmanuel Vadot status-green { 41*f126890aSEmmanuel Vadot label = "duckbill:green:status"; 42*f126890aSEmmanuel Vadot gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>; 43*f126890aSEmmanuel Vadot linux,default-trigger = "heartbeat"; 44*f126890aSEmmanuel Vadot }; 45*f126890aSEmmanuel Vadot }; 46*f126890aSEmmanuel Vadot}; 47*f126890aSEmmanuel Vadot 48*f126890aSEmmanuel Vadot&auart0 { 49*f126890aSEmmanuel Vadot pinctrl-names = "default"; 50*f126890aSEmmanuel Vadot pinctrl-0 = <&auart0_2pins_a>; 51*f126890aSEmmanuel Vadot status = "okay"; 52*f126890aSEmmanuel Vadot}; 53*f126890aSEmmanuel Vadot 54*f126890aSEmmanuel Vadot&duart { 55*f126890aSEmmanuel Vadot pinctrl-names = "default"; 56*f126890aSEmmanuel Vadot pinctrl-0 = <&duart_pins_a>; 57*f126890aSEmmanuel Vadot status = "okay"; 58*f126890aSEmmanuel Vadot}; 59*f126890aSEmmanuel Vadot 60*f126890aSEmmanuel Vadot&i2c0 { 61*f126890aSEmmanuel Vadot pinctrl-names = "default"; 62*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins_a>; 63*f126890aSEmmanuel Vadot status = "okay"; 64*f126890aSEmmanuel Vadot}; 65*f126890aSEmmanuel Vadot 66*f126890aSEmmanuel Vadot&lradc { 67*f126890aSEmmanuel Vadot status = "okay"; 68*f126890aSEmmanuel Vadot}; 69*f126890aSEmmanuel Vadot 70*f126890aSEmmanuel Vadot&mac0 { 71*f126890aSEmmanuel Vadot phy-mode = "rmii"; 72*f126890aSEmmanuel Vadot pinctrl-names = "default"; 73*f126890aSEmmanuel Vadot pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; 74*f126890aSEmmanuel Vadot phy-supply = <®_3p3v>; 75*f126890aSEmmanuel Vadot phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; 76*f126890aSEmmanuel Vadot phy-reset-duration = <25>; 77*f126890aSEmmanuel Vadot phy-handle = <ðphy>; 78*f126890aSEmmanuel Vadot status = "okay"; 79*f126890aSEmmanuel Vadot 80*f126890aSEmmanuel Vadot mdio { 81*f126890aSEmmanuel Vadot #address-cells = <1>; 82*f126890aSEmmanuel Vadot #size-cells = <0>; 83*f126890aSEmmanuel Vadot 84*f126890aSEmmanuel Vadot ethphy: ethernet-phy@0 { 85*f126890aSEmmanuel Vadot compatible = "ethernet-phy-ieee802.3-c22"; 86*f126890aSEmmanuel Vadot reg = <0>; 87*f126890aSEmmanuel Vadot pinctrl-names = "default"; 88*f126890aSEmmanuel Vadot pinctrl-0 = <&mac0_phy_int_pin>; 89*f126890aSEmmanuel Vadot interrupt-parent = <&gpio0>; 90*f126890aSEmmanuel Vadot interrupts = <7 IRQ_TYPE_EDGE_FALLING>; 91*f126890aSEmmanuel Vadot max-speed = <100>; 92*f126890aSEmmanuel Vadot }; 93*f126890aSEmmanuel Vadot }; 94*f126890aSEmmanuel Vadot}; 95*f126890aSEmmanuel Vadot 96*f126890aSEmmanuel Vadot&pinctrl { 97*f126890aSEmmanuel Vadot pinctrl-names = "default"; 98*f126890aSEmmanuel Vadot pinctrl-0 = <&hog_pins_a>; 99*f126890aSEmmanuel Vadot 100*f126890aSEmmanuel Vadot hog_pins_a: hog@0 { 101*f126890aSEmmanuel Vadot reg = <0>; 102*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 103*f126890aSEmmanuel Vadot MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ 104*f126890aSEmmanuel Vadot >; 105*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 106*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 107*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_DISABLE>; 108*f126890aSEmmanuel Vadot }; 109*f126890aSEmmanuel Vadot 110*f126890aSEmmanuel Vadot mac0_phy_reset_pin: mac0-phy-reset@0 { 111*f126890aSEmmanuel Vadot reg = <0>; 112*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 113*f126890aSEmmanuel Vadot MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */ 114*f126890aSEmmanuel Vadot >; 115*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 116*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 117*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_DISABLE>; 118*f126890aSEmmanuel Vadot }; 119*f126890aSEmmanuel Vadot 120*f126890aSEmmanuel Vadot mac0_phy_int_pin: mac0-phy-int@0 { 121*f126890aSEmmanuel Vadot reg = <0>; 122*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 123*f126890aSEmmanuel Vadot MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */ 124*f126890aSEmmanuel Vadot >; 125*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 126*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 127*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_DISABLE>; 128*f126890aSEmmanuel Vadot }; 129*f126890aSEmmanuel Vadot 130*f126890aSEmmanuel Vadot led_pins: leds@0 { 131*f126890aSEmmanuel Vadot reg = <0>; 132*f126890aSEmmanuel Vadot fsl,pinmux-ids = < 133*f126890aSEmmanuel Vadot MX28_PAD_SAIF0_MCLK__GPIO_3_20 134*f126890aSEmmanuel Vadot MX28_PAD_SAIF0_LRCLK__GPIO_3_21 135*f126890aSEmmanuel Vadot >; 136*f126890aSEmmanuel Vadot fsl,drive-strength = <MXS_DRIVE_4mA>; 137*f126890aSEmmanuel Vadot fsl,voltage = <MXS_VOLTAGE_HIGH>; 138*f126890aSEmmanuel Vadot fsl,pull-up = <MXS_PULL_DISABLE>; 139*f126890aSEmmanuel Vadot }; 140*f126890aSEmmanuel Vadot}; 141*f126890aSEmmanuel Vadot 142*f126890aSEmmanuel Vadot&ssp0 { 143*f126890aSEmmanuel Vadot compatible = "fsl,imx28-mmc"; 144*f126890aSEmmanuel Vadot pinctrl-names = "default"; 145*f126890aSEmmanuel Vadot pinctrl-0 = <&mmc0_8bit_pins_a 146*f126890aSEmmanuel Vadot &mmc0_cd_cfg &mmc0_sck_cfg>; 147*f126890aSEmmanuel Vadot bus-width = <8>; 148*f126890aSEmmanuel Vadot vmmc-supply = <®_3p3v>; 149*f126890aSEmmanuel Vadot status = "okay"; 150*f126890aSEmmanuel Vadot non-removable; 151*f126890aSEmmanuel Vadot}; 152*f126890aSEmmanuel Vadot 153*f126890aSEmmanuel Vadot&ssp2 { 154*f126890aSEmmanuel Vadot compatible = "fsl,imx28-mmc"; 155*f126890aSEmmanuel Vadot pinctrl-names = "default"; 156*f126890aSEmmanuel Vadot pinctrl-0 = <&mmc2_4bit_pins_b 157*f126890aSEmmanuel Vadot &mmc2_cd_cfg &mmc2_sck_cfg_b>; 158*f126890aSEmmanuel Vadot bus-width = <4>; 159*f126890aSEmmanuel Vadot vmmc-supply = <®_3p3v>; 160*f126890aSEmmanuel Vadot status = "okay"; 161*f126890aSEmmanuel Vadot}; 162*f126890aSEmmanuel Vadot 163*f126890aSEmmanuel Vadot&usb0 { 164*f126890aSEmmanuel Vadot status = "okay"; 165*f126890aSEmmanuel Vadot dr_mode = "peripheral"; 166*f126890aSEmmanuel Vadot}; 167*f126890aSEmmanuel Vadot 168*f126890aSEmmanuel Vadot&usbphy0 { 169*f126890aSEmmanuel Vadot status = "okay"; 170*f126890aSEmmanuel Vadot}; 171