mxs: update dts file for Duckbill
[15.05/openwrt.git] / target / linux / mxs / files / arch / arm / boot / dts / imx28-duckbill.dts
1 /*
2  * Copyright (C) 2013-2014 Michael Heimpold <mhei@heimpold.de>
3  *
4  * The code contained herein is licensed under the GNU General Public
5  * License. You may obtain a copy of the GNU General Public License
6  * Version 2 or later at the following locations:
7  *
8  * http://www.opensource.org/licenses/gpl-license.html
9  * http://www.gnu.org/copyleft/gpl.html
10  */
11
12 /dts-v1/;
13 #include "imx28.dtsi"
14
15 / {
16         model = "I2SE Duckbill";
17         compatible = "i2se,duckbill", "fsl,imx28";
18
19         memory {
20                 reg = <0x40000000 0x08000000>;
21         };
22
23         apb@80000000 {
24                 apbh@80000000 {
25                         ssp0: ssp@80010000 {
26                                 compatible = "fsl,imx28-mmc";
27                                 pinctrl-names = "default";
28                                 pinctrl-0 = <&mmc0_4bit_pins_a
29                                         &mmc0_cd_cfg &mmc0_sck_cfg>;
30                                 bus-width = <4>;
31                                 vmmc-supply = <&reg_3p3v>;
32                                 status = "okay";
33                         };
34
35                         ssp2: ssp@80014000 {
36                                 #address-cells = <1>;
37                                 #size-cells = <0>;
38                                 compatible = "fsl,imx28-spi";
39                                 pinctrl-names = "default";
40                                 pinctrl-0 = <&spi2_pins_a>;
41                                 status = "okay";
42
43                                 spidev: spidev@0 {
44                                         compatible = "spidev";
45                                         reg = <0>;
46                                         spi-max-frequency = <1000000>;
47                                 };
48                         };
49
50                         pinctrl@80018000 {
51                                 pinctrl-names = "default";
52                                 pinctrl-0 = <&hog_pins_a>;
53
54                                 hog_pins_a: hog@0 {
55                                         reg = <0>;
56                                         fsl,pinmux-ids = <
57                                                 MX28_PAD_SSP0_DATA7__GPIO_2_7 /* PHY Reset */
58                                         >;
59                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
60                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
61                                         fsl,pull-up = <MXS_PULL_DISABLE>;
62                                 };
63
64                                 led_pins_a: led_gpio@0 {
65                                         reg = <0>;
66                                         fsl,pinmux-ids = <
67                                                 MX28_PAD_AUART1_RX__GPIO_3_4
68                                                 MX28_PAD_AUART1_TX__GPIO_3_5
69                                         >;
70                                         fsl,drive-strength = <MXS_DRIVE_4mA>;
71                                         fsl,voltage = <MXS_VOLTAGE_HIGH>;
72                                         fsl,pull-up = <MXS_PULL_DISABLE>;
73                                 };
74                         };
75                 };
76
77                 apbx@80040000 {
78                         i2c0: i2c@80058000 {
79                                 pinctrl-names = "default";
80                                 pinctrl-0 = <&i2c0_pins_a>;
81                                 status = "okay";
82                         };
83
84                         duart: serial@80074000 {
85                                 pinctrl-names = "default";
86                                 pinctrl-0 = <&duart_pins_a>;
87                                 status = "okay";
88                         };
89
90                         usbphy0: usbphy@8007c000 {
91                                 status = "okay";
92                         };
93                 };
94         };
95
96         ahb@80080000 {
97                 usb0: usb@80080000 {
98                         status = "okay";
99                 };
100
101                 mac0: ethernet@800f0000 {
102                         phy-mode = "rmii";
103                         pinctrl-names = "default";
104                         pinctrl-0 = <&mac0_pins_a>;
105                         phy-supply = <&reg_3p3v>;
106                         phy-reset-gpios = <&gpio2 7 1>;
107                         phy-reset-duration = <100>;
108                         status = "okay";
109                 };
110         };
111
112         regulators {
113                 compatible = "simple-bus";
114
115                 reg_3p3v: 3p3v {
116                         compatible = "regulator-fixed";
117                         regulator-name = "3P3V";
118                         regulator-min-microvolt = <3300000>;
119                         regulator-max-microvolt = <3300000>;
120                         regulator-always-on;
121                 };
122         };
123
124         leds {
125                 compatible = "gpio-leds";
126                 pinctrl-names = "default";
127                 pinctrl-0 = <&led_pins_a>;
128
129                 status {
130                         label = "duckbill:green:status";
131                         gpios = <&gpio3 5 0>;
132                 };
133
134                 failure {
135                         label = "duckbill:red:status";
136                         gpios = <&gpio3 4 0>;
137                 };
138         };
139 };