1// SPDX-License-Identifier: GPL-2.0-or-later 2/* 3 * Copyright (C) 2013-2014,2016 Michael Heimpold <mhei@heimpold.de> 4 * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> 5 */ 6 7/dts-v1/; 8#include <dt-bindings/gpio/gpio.h> 9#include "imx28.dtsi" 10 11/ { 12 model = "I2SE Duckbill"; 13 compatible = "i2se,duckbill", "fsl,imx28"; 14 15 memory@40000000 { 16 device_type = "memory"; 17 reg = <0x40000000 0x08000000>; 18 }; 19 20 reg_3p3v: regulator-3p3v { 21 compatible = "regulator-fixed"; 22 regulator-name = "3P3V"; 23 regulator-min-microvolt = <3300000>; 24 regulator-max-microvolt = <3300000>; 25 regulator-always-on; 26 }; 27 28 leds { 29 compatible = "gpio-leds"; 30 pinctrl-names = "default"; 31 pinctrl-0 = <&led_pins>; 32 33 status-red { 34 label = "duckbill:red:status"; 35 gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>; 36 linux,default-trigger = "default-on"; 37 }; 38 39 status-green { 40 label = "duckbill:green:status"; 41 gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>; 42 linux,default-trigger = "heartbeat"; 43 }; 44 }; 45}; 46 47&auart0 { 48 pinctrl-names = "default"; 49 pinctrl-0 = <&auart0_2pins_a>; 50 status = "okay"; 51}; 52 53&duart { 54 pinctrl-names = "default"; 55 pinctrl-0 = <&duart_pins_a>; 56 status = "okay"; 57}; 58 59&lradc { 60 status = "okay"; 61}; 62 63&i2c0 { 64 pinctrl-names = "default"; 65 pinctrl-0 = <&i2c0_pins_a>; 66 status = "okay"; 67}; 68 69&mac0 { 70 phy-mode = "rmii"; 71 pinctrl-names = "default"; 72 pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; 73 phy-supply = <®_3p3v>; 74 phy-reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>; 75 phy-reset-duration = <25>; 76 status = "okay"; 77}; 78 79&pinctrl { 80 pinctrl-names = "default"; 81 pinctrl-0 = <&hog_pins_a>; 82 83 hog_pins_a: hog@0 { 84 reg = <0>; 85 fsl,pinmux-ids = < 86 MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ 87 >; 88 fsl,drive-strength = <MXS_DRIVE_4mA>; 89 fsl,voltage = <MXS_VOLTAGE_HIGH>; 90 fsl,pull-up = <MXS_PULL_DISABLE>; 91 }; 92 93 mac0_phy_reset_pin: mac0-phy-reset@0 { 94 reg = <0>; 95 fsl,pinmux-ids = < 96 MX28_PAD_SSP0_DATA7__GPIO_2_7 /* PHY Reset */ 97 >; 98 fsl,drive-strength = <MXS_DRIVE_4mA>; 99 fsl,voltage = <MXS_VOLTAGE_HIGH>; 100 fsl,pull-up = <MXS_PULL_DISABLE>; 101 }; 102 103 led_pins: leds@0 { 104 reg = <0>; 105 fsl,pinmux-ids = < 106 MX28_PAD_AUART1_RX__GPIO_3_4 107 MX28_PAD_AUART1_TX__GPIO_3_5 108 >; 109 fsl,drive-strength = <MXS_DRIVE_4mA>; 110 fsl,voltage = <MXS_VOLTAGE_HIGH>; 111 fsl,pull-up = <MXS_PULL_DISABLE>; 112 }; 113}; 114 115&ssp0 { 116 compatible = "fsl,imx28-mmc"; 117 pinctrl-names = "default"; 118 pinctrl-0 = <&mmc0_4bit_pins_a 119 &mmc0_cd_cfg &mmc0_sck_cfg>; 120 bus-width = <4>; 121 vmmc-supply = <®_3p3v>; 122 status = "okay"; 123}; 124 125&ssp2 { 126 compatible = "fsl,imx28-spi"; 127 pinctrl-names = "default"; 128 pinctrl-0 = <&spi2_pins_a>; 129 status = "okay"; 130}; 131 132&usb0 { 133 dr_mode = "peripheral"; 134 status = "okay"; 135}; 136 137&usbphy0 { 138 status = "okay"; 139}; 140