1279377Simp/* 2279377Simp * Copyright 2012 Armadeus Systems - <support@armadeus.com> 3279377Simp * 4279377Simp * The code contained herein is licensed under the GNU General Public 5279377Simp * License. You may obtain a copy of the GNU General Public License 6279377Simp * Version 2 or later at the following locations: 7279377Simp * 8279377Simp * http://www.opensource.org/licenses/gpl-license.html 9279377Simp * http://www.gnu.org/copyleft/gpl.html 10279377Simp */ 11279377Simp 12279377Simp/* APF28Dev is a docking board for the APF28 SOM */ 13279377Simp#include "imx28-apf28.dts" 14279377Simp 15279377Simp/ { 16279377Simp model = "Armadeus Systems APF28Dev docking/development board"; 17279377Simp compatible = "armadeus,imx28-apf28dev", "armadeus,imx28-apf28", "fsl,imx28"; 18279377Simp 19279377Simp apb@80000000 { 20279377Simp apbh@80000000 { 21279377Simp ssp0: ssp@80010000 { 22279377Simp compatible = "fsl,imx28-mmc"; 23279377Simp pinctrl-names = "default"; 24279377Simp pinctrl-0 = <&mmc0_4bit_pins_a 25279377Simp &mmc0_cd_cfg &mmc0_sck_cfg>; 26279377Simp bus-width = <4>; 27279377Simp status = "okay"; 28279377Simp }; 29279377Simp 30279377Simp ssp2: ssp@80014000 { 31279377Simp compatible = "fsl,imx28-spi"; 32279377Simp pinctrl-names = "default"; 33279377Simp pinctrl-0 = <&spi2_pins_a>; 34279377Simp status = "okay"; 35279377Simp }; 36279377Simp 37279377Simp pinctrl@80018000 { 38279377Simp pinctrl-names = "default"; 39279377Simp pinctrl-0 = <&hog_pins_apf28dev>; 40279377Simp 41279377Simp hog_pins_apf28dev: hog@0 { 42279377Simp reg = <0>; 43279377Simp fsl,pinmux-ids = < 44279377Simp MX28_PAD_LCD_D16__GPIO_1_16 45279377Simp MX28_PAD_LCD_D17__GPIO_1_17 46279377Simp MX28_PAD_LCD_D18__GPIO_1_18 47279377Simp MX28_PAD_LCD_D19__GPIO_1_19 48279377Simp MX28_PAD_LCD_D20__GPIO_1_20 49279377Simp MX28_PAD_LCD_D21__GPIO_1_21 50279377Simp MX28_PAD_LCD_D22__GPIO_1_22 51279377Simp MX28_PAD_GPMI_CE1N__GPIO_0_17 52279377Simp >; 53279377Simp fsl,drive-strength = <MXS_DRIVE_4mA>; 54279377Simp fsl,voltage = <MXS_VOLTAGE_HIGH>; 55279377Simp fsl,pull-up = <MXS_PULL_DISABLE>; 56279377Simp }; 57279377Simp 58279377Simp lcdif_pins_apf28dev: lcdif-apf28dev@0 { 59279377Simp reg = <0>; 60279377Simp fsl,pinmux-ids = < 61279377Simp MX28_PAD_LCD_RD_E__LCD_VSYNC 62279377Simp MX28_PAD_LCD_WR_RWN__LCD_HSYNC 63279377Simp MX28_PAD_LCD_RS__LCD_DOTCLK 64279377Simp MX28_PAD_LCD_CS__LCD_ENABLE 65279377Simp >; 66279377Simp fsl,drive-strength = <MXS_DRIVE_4mA>; 67279377Simp fsl,voltage = <MXS_VOLTAGE_HIGH>; 68279377Simp fsl,pull-up = <MXS_PULL_DISABLE>; 69279377Simp }; 70279377Simp 71279377Simp usb0_otg_apf28dev: otg-apf28dev@0 { 72279377Simp reg = <0>; 73279377Simp fsl,pinmux-ids = < 74279377Simp MX28_PAD_LCD_D23__GPIO_1_23 75279377Simp >; 76279377Simp fsl,drive-strength = <MXS_DRIVE_4mA>; 77279377Simp fsl,voltage = <MXS_VOLTAGE_HIGH>; 78279377Simp fsl,pull-up = <MXS_PULL_DISABLE>; 79279377Simp }; 80279377Simp }; 81279377Simp 82279377Simp lcdif@80030000 { 83279377Simp pinctrl-names = "default"; 84279377Simp pinctrl-0 = <&lcdif_16bit_pins_a 85279377Simp &lcdif_pins_apf28dev>; 86279377Simp display = <&display0>; 87279377Simp status = "okay"; 88279377Simp 89279377Simp display0: display0 { 90279377Simp bits-per-pixel = <16>; 91279377Simp bus-width = <16>; 92279377Simp 93279377Simp display-timings { 94279377Simp native-mode = <&timing0>; 95279377Simp timing0: timing0 { 96279377Simp clock-frequency = <33000033>; 97279377Simp hactive = <800>; 98279377Simp vactive = <480>; 99279377Simp hback-porch = <96>; 100279377Simp hfront-porch = <96>; 101279377Simp vback-porch = <20>; 102279377Simp vfront-porch = <21>; 103279377Simp hsync-len = <64>; 104279377Simp vsync-len = <4>; 105279377Simp hsync-active = <1>; 106279377Simp vsync-active = <1>; 107279377Simp de-active = <1>; 108279377Simp pixelclk-active = <0>; 109279377Simp }; 110279377Simp }; 111279377Simp }; 112279377Simp }; 113295436Sandrew 114295436Sandrew can0: can@80032000 { 115295436Sandrew pinctrl-names = "default"; 116295436Sandrew pinctrl-0 = <&can0_pins_a>; 117295436Sandrew xceiver-supply = <®_can0_vcc>; 118295436Sandrew status = "okay"; 119295436Sandrew }; 120279377Simp }; 121279377Simp 122279377Simp apbx@80040000 { 123279377Simp lradc@80050000 { 124279377Simp fsl,lradc-touchscreen-wires = <4>; 125279377Simp status = "okay"; 126279377Simp }; 127279377Simp 128279377Simp i2c0: i2c@80058000 { 129279377Simp pinctrl-names = "default"; 130279377Simp pinctrl-0 = <&i2c0_pins_a>; 131279377Simp status = "okay"; 132279377Simp }; 133279377Simp 134279377Simp pwm: pwm@80064000 { 135279377Simp pinctrl-names = "default"; 136279377Simp pinctrl-0 = <&pwm3_pins_a &pwm4_pins_a>; 137279377Simp status = "okay"; 138279377Simp }; 139279377Simp 140295436Sandrew auart0: serial@8006a000 { 141295436Sandrew pinctrl-names = "default"; 142295436Sandrew pinctrl-0 = <&auart0_pins_a>; 143295436Sandrew fsl,uart-has-rtscts; 144295436Sandrew status = "okay"; 145295436Sandrew }; 146295436Sandrew 147279377Simp usbphy0: usbphy@8007c000 { 148279377Simp status = "okay"; 149279377Simp }; 150279377Simp 151279377Simp usbphy1: usbphy@8007e000 { 152279377Simp status = "okay"; 153279377Simp }; 154279377Simp }; 155279377Simp }; 156279377Simp 157279377Simp ahb@80080000 { 158279377Simp usb0: usb@80080000 { 159279377Simp pinctrl-names = "default"; 160295436Sandrew pinctrl-0 = <&usb0_otg_apf28dev 161295436Sandrew &usb0_id_pins_b>; 162279377Simp vbus-supply = <®_usb0_vbus>; 163279377Simp status = "okay"; 164279377Simp }; 165279377Simp 166279377Simp usb1: usb@80090000 { 167279377Simp status = "okay"; 168279377Simp }; 169279377Simp 170279377Simp mac1: ethernet@800f4000 { 171279377Simp phy-mode = "rmii"; 172279377Simp pinctrl-names = "default"; 173279377Simp pinctrl-0 = <&mac1_pins_a>; 174295436Sandrew phy-reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>; 175279377Simp status = "okay"; 176279377Simp }; 177279377Simp }; 178279377Simp 179279377Simp regulators { 180279377Simp compatible = "simple-bus"; 181279377Simp #address-cells = <1>; 182279377Simp #size-cells = <0>; 183279377Simp 184279377Simp reg_usb0_vbus: regulator@0 { 185279377Simp compatible = "regulator-fixed"; 186279377Simp reg = <0>; 187279377Simp regulator-name = "usb0_vbus"; 188279377Simp regulator-min-microvolt = <5000000>; 189279377Simp regulator-max-microvolt = <5000000>; 190279377Simp gpio = <&gpio1 23 1>; 191279377Simp enable-active-high; 192279377Simp }; 193295436Sandrew 194295436Sandrew reg_can0_vcc: regulator@1 { 195295436Sandrew compatible = "regulator-fixed"; 196295436Sandrew reg = <1>; 197295436Sandrew regulator-name = "can0_vcc"; 198295436Sandrew regulator-min-microvolt = <5000000>; 199295436Sandrew regulator-max-microvolt = <5000000>; 200295436Sandrew }; 201279377Simp }; 202279377Simp 203279377Simp leds { 204279377Simp compatible = "gpio-leds"; 205279377Simp 206279377Simp user { 207279377Simp label = "Heartbeat"; 208279377Simp gpios = <&gpio0 21 0>; 209279377Simp linux,default-trigger = "heartbeat"; 210279377Simp }; 211279377Simp }; 212279377Simp 213279377Simp backlight { 214279377Simp compatible = "pwm-backlight"; 215279377Simp 216279377Simp pwms = <&pwm 3 191000>; 217279377Simp brightness-levels = <0 4 8 16 32 64 128 255>; 218279377Simp default-brightness-level = <6>; 219279377Simp }; 220279377Simp 221279377Simp gpio-keys { 222279377Simp compatible = "gpio-keys"; 223279377Simp 224279377Simp user-button { 225279377Simp label = "User button"; 226295436Sandrew gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; 227279377Simp linux,code = <0x100>; 228295436Sandrew gpio-key,wakeup; 229279377Simp }; 230279377Simp }; 231279377Simp}; 232