/* * Copyright 2012 Freescale Semiconductor, Inc. * * Author: Fabio Estevam <fabio.estevam@freescale.com> * * The code contained herein is licensed under the GNU General Public * License. You may obtain a copy of the GNU General Public License * Version 2 or later at the following locations: * * http://www.opensource.org/licenses/gpl-license.html * http://www.gnu.org/copyleft/gpl.html */ /dts-v1/; #include "imx23.dtsi" / { model = "i.MX23 Olinuxino Low Cost Board"; compatible = "olimex,imx23-olinuxino", "fsl,imx23"; memory { reg = <0x40000000 0x04000000>; }; apb@80000000 { apbh@80000000 { ssp0: ssp@80010000 { compatible = "fsl,imx23-mmc"; pinctrl-names = "default"; pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>; bus-width = <4>; broken-cd; status = "okay"; }; pinctrl@80018000 { pinctrl-names = "default"; pinctrl-0 = <&hog_pins_a>; hog_pins_a: hog@0 { reg = <0>; fsl,pinmux-ids = < 0x0113 /* MX23_PAD_GPMI_ALE__GPIO_0_17 */ >; fsl,drive-strength = <0>; fsl,voltage = <1>; fsl,pull-up = <0>; }; led_pin_gpio2_1: led_gpio2_1@0 { reg = <0>; fsl,pinmux-ids = < 0x2013 /* MX23_PAD_SSP1_DETECT__GPIO_2_1 */ >; fsl,drive-strength = <0>; fsl,voltage = <1>; fsl,pull-up = <0>; }; lcdif_16bit_pins_a: lcdif-16bit@0 { reg = <0>; fsl,pinmux-ids = < MX23_PAD_LCD_D00__LCD_D00 MX23_PAD_LCD_D01__LCD_D01 MX23_PAD_LCD_D02__LCD_D02 MX23_PAD_LCD_D03__LCD_D03 MX23_PAD_LCD_D04__LCD_D04 MX23_PAD_LCD_D05__LCD_D05 MX23_PAD_LCD_D06__LCD_D06 MX23_PAD_LCD_D07__LCD_D07 MX23_PAD_LCD_D08__LCD_D08 MX23_PAD_LCD_D09__LCD_D09 MX23_PAD_LCD_D10__LCD_D10 MX23_PAD_LCD_D11__LCD_D11 MX23_PAD_LCD_D12__LCD_D12 MX23_PAD_LCD_D13__LCD_D13 MX23_PAD_LCD_D14__LCD_D14 MX23_PAD_LCD_D15__LCD_D15 MX23_PAD_LCD_DOTCK__LCD_DOTCK MX23_PAD_LCD_ENABLE__LCD_ENABLE MX23_PAD_LCD_HSYNC__LCD_HSYNC MX23_PAD_LCD_VSYNC__LCD_VSYNC >; fsl,drive-strength = <MXS_DRIVE_12mA>; fsl,voltage = <MXS_VOLTAGE_HIGH>; fsl,pull-up = <MXS_PULL_DISABLE>; }; }; ssp1: ssp@80034000 { #address-cells = <1>; #size-cells = <0>; compatible = "fsl,imx23-spi"; pinctrl-names = "default"; pinctrl-0 = <&spi2_pins_a>; status = "okay"; }; lcdif@80030000 { pinctrl-names = "default"; pinctrl-0 = <&lcdif_16bit_pins_a>; display = <&display>; status = "okay"; display: display { bits-per-pixel = <16>; bus-width = <16>; display-timings { native-mode = <&timing0>; timing0: timing0 { clock-frequency = <2000000>; hactive = <960>; /* 960 */ vactive = <8>; hback-porch = <0>; /* can be 0 */ hfront-porch = <1>; /* canNOT be 0 */ vback-porch = <1>; vfront-porch = <0>; hsync-len = <1>; /* Can be 0, but imx does weird things that way... */ vsync-len = <1>; hsync-active = <1>; vsync-active = <1>; de-active = <0>; pixelclk-active = <1>; }; }; }; }; }; apbx@80040000 { lradc@80050000 { status = "okay"; }; duart: serial@80070000 { pinctrl-names = "default"; pinctrl-0 = <&duart_pins_a>; status = "okay"; }; auart0: serial@8006c000 { pinctrl-names = "default"; pinctrl-0 = <&auart0_2pins_a>; status = "okay"; }; usbphy0: usbphy@8007c000 { status = "okay"; }; }; }; ahb@80080000 { usb0: usb@80080000 { vbus-supply = <®_usb0_vbus>; status = "okay"; }; }; regulators { compatible = "simple-bus"; reg_usb0_vbus: usb0_vbus { compatible = "regulator-fixed"; regulator-name = "usb0_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; enable-active-high; startup-delay-us = <300>; /* LAN9215 requires a POR of 200us minimum */ gpio = <&gpio0 17 0>; }; }; leds { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&led_pin_gpio2_1>; user { label = "green"; gpios = <&gpio2 1 1>; }; }; };