1/*
2 * Copyright 2012 Freescale Semiconductor, Inc.
3 *
4 * Author: Fabio Estevam <fabio.estevam@freescale.com>
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 or later at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14/dts-v1/;
15#include <dt-bindings/gpio/gpio.h>
16#include "imx23.dtsi"
17
18/ {
19	model = "i.MX23 Olinuxino Low Cost Board";
20	compatible = "olimex,imx23-olinuxino", "fsl,imx23";
21
22	memory {
23		reg = <0x40000000 0x04000000>;
24	};
25
26	apb@80000000 {
27		apbh@80000000 {
28			ssp0: ssp@80010000 {
29				compatible = "fsl,imx23-mmc";
30				pinctrl-names = "default";
31				pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>;
32				bus-width = <4>;
33				broken-cd;
34				status = "okay";
35			};
36
37			pinctrl@80018000 {
38				pinctrl-names = "default";
39				pinctrl-0 = <&hog_pins_a>;
40
41				hog_pins_a: hog@0 {
42					reg = <0>;
43					fsl,pinmux-ids = <
44						MX23_PAD_GPMI_ALE__GPIO_0_17
45					>;
46					fsl,drive-strength = <MXS_DRIVE_4mA>;
47					fsl,voltage = <MXS_VOLTAGE_HIGH>;
48					fsl,pull-up = <MXS_PULL_DISABLE>;
49				};
50
51				led_pin_gpio2_1: led_gpio2_1@0 {
52					reg = <0>;
53					fsl,pinmux-ids = <
54						MX23_PAD_SSP1_DETECT__GPIO_2_1
55					>;
56					fsl,drive-strength = <MXS_DRIVE_4mA>;
57					fsl,voltage = <MXS_VOLTAGE_HIGH>;
58					fsl,pull-up = <MXS_PULL_DISABLE>;
59				};
60			};
61
62			ssp1: ssp@80034000 {
63				#address-cells = <1>;
64				#size-cells = <0>;
65				compatible = "fsl,imx23-spi";
66				pinctrl-names = "default";
67				pinctrl-0 = <&spi2_pins_a>;
68				status = "okay";
69			};
70		};
71
72		apbx@80040000 {
73			lradc@80050000 {
74				status = "okay";
75			};
76
77			i2c: i2c@80058000 {
78				pinctrl-names = "default";
79				pinctrl-0 = <&i2c_pins_b>;
80				status = "okay";
81			};
82
83			duart: serial@80070000 {
84				pinctrl-names = "default";
85				pinctrl-0 = <&duart_pins_a>;
86				status = "okay";
87			};
88
89			auart0: serial@8006c000 {
90				pinctrl-names = "default";
91				pinctrl-0 = <&auart0_2pins_a>;
92				status = "okay";
93			};
94
95			usbphy0: usbphy@8007c000 {
96				status = "okay";
97			};
98		};
99	};
100
101	ahb@80080000 {
102		usb0: usb@80080000 {
103			dr_mode = "host";
104			vbus-supply = <&reg_usb0_vbus>;
105			status = "okay";
106		};
107	};
108
109	regulators {
110		compatible = "simple-bus";
111		#address-cells = <1>;
112		#size-cells = <0>;
113
114		reg_usb0_vbus: regulator@0 {
115			compatible = "regulator-fixed";
116			reg = <0>;
117			regulator-name = "usb0_vbus";
118			regulator-min-microvolt = <5000000>;
119			regulator-max-microvolt = <5000000>;
120			enable-active-high;
121			startup-delay-us = <300>; /* LAN9215 requires a POR of 200us minimum */
122			gpio = <&gpio0 17 0>;
123		};
124	};
125
126	leds {
127		compatible = "gpio-leds";
128		pinctrl-names = "default";
129		pinctrl-0 = <&led_pin_gpio2_1>;
130
131		user {
132			label = "green";
133			gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
134		};
135	};
136};
137