1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com>
4 * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de>
8 #include <dt-bindings/interrupt-controller/irq.h>
9 #include <dt-bindings/gpio/gpio.h>
13 model = "I2SE Duckbill 2 485";
14 compatible = "i2se,duckbill-2-485", "i2se,duckbill-2", "fsl,imx28";
17 device_type = "memory";
18 reg = <0x40000000 0x08000000>;
24 compatible = "fsl,imx28-mmc";
25 pinctrl-names = "default";
26 pinctrl-0 = <&mmc0_8bit_pins_a
27 &mmc0_cd_cfg &mmc0_sck_cfg>;
29 vmmc-supply = <®_3p3v>;
35 compatible = "fsl,imx28-mmc";
36 pinctrl-names = "default";
37 pinctrl-0 = <&mmc2_4bit_pins_b
38 &mmc2_cd_cfg &mmc2_sck_cfg_b>;
40 vmmc-supply = <®_3p3v>;
45 pinctrl-names = "default";
46 pinctrl-0 = <&hog_pins_a>;
51 MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */
53 fsl,drive-strength = <MXS_DRIVE_4mA>;
54 fsl,voltage = <MXS_VOLTAGE_HIGH>;
55 fsl,pull-up = <MXS_PULL_DISABLE>;
58 mac0_phy_reset_pin: mac0-phy-reset@0 {
61 MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */
63 fsl,drive-strength = <MXS_DRIVE_4mA>;
64 fsl,voltage = <MXS_VOLTAGE_HIGH>;
65 fsl,pull-up = <MXS_PULL_DISABLE>;
68 mac0_phy_int_pin: mac0-phy-int@0 {
71 MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */
73 fsl,drive-strength = <MXS_DRIVE_4mA>;
74 fsl,voltage = <MXS_VOLTAGE_HIGH>;
75 fsl,pull-up = <MXS_PULL_DISABLE>;
81 MX28_PAD_SAIF0_MCLK__GPIO_3_20
82 MX28_PAD_SAIF0_LRCLK__GPIO_3_21
83 MX28_PAD_I2C0_SCL__GPIO_3_24
84 MX28_PAD_I2C0_SDA__GPIO_3_25
86 fsl,drive-strength = <MXS_DRIVE_4mA>;
87 fsl,voltage = <MXS_VOLTAGE_HIGH>;
88 fsl,pull-up = <MXS_PULL_DISABLE>;
98 auart0: serial@8006a000 {
99 pinctrl-names = "default";
100 pinctrl-0 = <&auart0_2pins_a>;
104 duart: serial@80074000 {
105 pinctrl-names = "default";
106 pinctrl-0 = <&duart_pins_a>;
110 usbphy0: usbphy@8007c000 {
119 dr_mode = "peripheral";
122 mac0: ethernet@800f0000 {
124 pinctrl-names = "default";
125 pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>;
126 phy-supply = <®_3p3v>;
127 phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
128 phy-reset-duration = <25>;
129 phy-handle = <ðphy>;
133 #address-cells = <1>;
136 ethphy: ethernet-phy@0 {
137 compatible = "ethernet-phy-ieee802.3-c22";
139 pinctrl-names = "default";
140 pinctrl-0 = <&mac0_phy_int_pin>;
141 interrupt-parent = <&gpio0>;
142 interrupts = <7 IRQ_TYPE_EDGE_FALLING>;
149 reg_3p3v: regulator-3p3v {
150 compatible = "regulator-fixed";
151 regulator-name = "3P3V";
152 regulator-min-microvolt = <3300000>;
153 regulator-max-microvolt = <3300000>;
158 compatible = "gpio-leds";
159 pinctrl-names = "default";
160 pinctrl-0 = <&led_pins>;
163 label = "duckbill:red:status";
164 gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
165 linux,default-trigger = "default-on";
169 label = "duckbill:green:status";
170 gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
171 linux,default-trigger = "heartbeat";
175 label = "duckbill:red:rs485";
176 gpios = <&gpio3 24 GPIO_ACTIVE_LOW>;
180 label = "duckbill:green:rs485";
181 gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;