ea3250.dts revision 302408
1/* 2 * Embedded Artists LPC3250 board 3 * 4 * Copyright 2012 Roland Stigge <stigge@antcom.de> 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 "lpc32xx.dtsi" 16 17/ { 18 model = "Embedded Artists LPC3250 board based on NXP LPC3250"; 19 compatible = "ea,ea3250", "nxp,lpc3250"; 20 #address-cells = <1>; 21 #size-cells = <1>; 22 23 memory { 24 device_type = "memory"; 25 reg = <0x80000000 0x4000000>; 26 }; 27 28 ahb { 29 mac: ethernet@31060000 { 30 phy-mode = "rmii"; 31 use-iram; 32 }; 33 34 /* 128MB Flash via SLC NAND controller */ 35 slc: flash@20020000 { 36 status = "okay"; 37 #address-cells = <1>; 38 #size-cells = <1>; 39 40 nxp,wdr-clks = <14>; 41 nxp,wwidth = <260000000>; 42 nxp,whold = <104000000>; 43 nxp,wsetup = <200000000>; 44 nxp,rdr-clks = <14>; 45 nxp,rwidth = <34666666>; 46 nxp,rhold = <104000000>; 47 nxp,rsetup = <200000000>; 48 nand-on-flash-bbt; 49 gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */ 50 51 mtd0@00000000 { 52 label = "ea3250-boot"; 53 reg = <0x00000000 0x00080000>; 54 read-only; 55 }; 56 57 mtd1@00080000 { 58 label = "ea3250-uboot"; 59 reg = <0x00080000 0x000c0000>; 60 read-only; 61 }; 62 63 mtd2@00140000 { 64 label = "ea3250-kernel"; 65 reg = <0x00140000 0x00400000>; 66 }; 67 68 mtd3@00540000 { 69 label = "ea3250-rootfs"; 70 reg = <0x00540000 0x07ac0000>; 71 }; 72 }; 73 74 apb { 75 uart5: serial@40090000 { 76 status = "okay"; 77 }; 78 79 uart3: serial@40080000 { 80 status = "okay"; 81 }; 82 83 uart6: serial@40098000 { 84 status = "okay"; 85 }; 86 87 i2c1: i2c@400A0000 { 88 clock-frequency = <100000>; 89 90 eeprom@50 { 91 compatible = "at,24c256"; 92 reg = <0x50>; 93 }; 94 95 eeprom@57 { 96 compatible = "at,24c64"; 97 reg = <0x57>; 98 }; 99 100 uda1380: uda1380@18 { 101 compatible = "nxp,uda1380"; 102 reg = <0x18>; 103 power-gpio = <&gpio 0x59 0>; 104 reset-gpio = <&gpio 0x51 0>; 105 dac-clk = "wspll"; 106 }; 107 108 pca9532: pca9532@60 { 109 compatible = "nxp,pca9532"; 110 gpio-controller; 111 #gpio-cells = <2>; 112 reg = <0x60>; 113 }; 114 }; 115 116 i2c2: i2c@400A8000 { 117 clock-frequency = <100000>; 118 }; 119 120 sd@20098000 { 121 wp-gpios = <&pca9532 5 0>; 122 cd-gpios = <&pca9532 4 0>; 123 cd-inverted; 124 bus-width = <4>; 125 status = "okay"; 126 }; 127 }; 128 129 fab { 130 uart1: serial@40014000 { 131 status = "okay"; 132 }; 133 134 /* 3-axis accelerometer X,Y,Z (or AD-IN instead of Z) */ 135 adc@40048000 { 136 status = "okay"; 137 }; 138 }; 139 }; 140 141 gpio_keys { 142 compatible = "gpio-keys"; 143 #address-cells = <1>; 144 #size-cells = <0>; 145 autorepeat; 146 button@21 { 147 label = "Interrupt Key"; 148 linux,code = <103>; 149 gpios = <&gpio 4 1 0>; /* GPI_P3 1 */ 150 }; 151 key1 { 152 label = "KEY1"; 153 linux,code = <1>; 154 gpios = <&pca9532 0 0>; 155 }; 156 key2 { 157 label = "KEY2"; 158 linux,code = <2>; 159 gpios = <&pca9532 1 0>; 160 }; 161 key3 { 162 label = "KEY3"; 163 linux,code = <3>; 164 gpios = <&pca9532 2 0>; 165 }; 166 key4 { 167 label = "KEY4"; 168 linux,code = <4>; 169 gpios = <&pca9532 3 0>; 170 }; 171 joy0 { 172 label = "Joystick Key 0"; 173 linux,code = <10>; 174 gpios = <&gpio 2 0 0>; /* P2.0 */ 175 }; 176 joy1 { 177 label = "Joystick Key 1"; 178 linux,code = <11>; 179 gpios = <&gpio 2 1 0>; /* P2.1 */ 180 }; 181 joy2 { 182 label = "Joystick Key 2"; 183 linux,code = <12>; 184 gpios = <&gpio 2 2 0>; /* P2.2 */ 185 }; 186 joy3 { 187 label = "Joystick Key 3"; 188 linux,code = <13>; 189 gpios = <&gpio 2 3 0>; /* P2.3 */ 190 }; 191 joy4 { 192 label = "Joystick Key 4"; 193 linux,code = <14>; 194 gpios = <&gpio 2 4 0>; /* P2.4 */ 195 }; 196 }; 197 198 leds { 199 compatible = "gpio-leds"; 200 201 /* LEDs on OEM Board */ 202 203 led1 { 204 gpios = <&gpio 5 14 1>; /* GPO_P3 14, GPIO 93, active low */ 205 linux,default-trigger = "timer"; 206 default-state = "off"; 207 }; 208 209 led2 { 210 gpios = <&gpio 2 10 1>; /* P2.10, active low */ 211 default-state = "off"; 212 }; 213 214 led3 { 215 gpios = <&gpio 2 11 1>; /* P2.11, active low */ 216 default-state = "off"; 217 }; 218 219 led4 { 220 gpios = <&gpio 2 12 1>; /* P2.12, active low */ 221 default-state = "off"; 222 }; 223 224 /* LEDs on Base Board */ 225 226 lede1 { 227 gpios = <&pca9532 8 0>; 228 default-state = "off"; 229 }; 230 lede2 { 231 gpios = <&pca9532 9 0>; 232 default-state = "off"; 233 }; 234 lede3 { 235 gpios = <&pca9532 10 0>; 236 default-state = "off"; 237 }; 238 lede4 { 239 gpios = <&pca9532 11 0>; 240 default-state = "off"; 241 }; 242 lede5 { 243 gpios = <&pca9532 12 0>; 244 default-state = "off"; 245 }; 246 lede6 { 247 gpios = <&pca9532 13 0>; 248 default-state = "off"; 249 }; 250 lede7 { 251 gpios = <&pca9532 14 0>; 252 default-state = "off"; 253 }; 254 lede8 { 255 gpios = <&pca9532 15 0>; 256 default-state = "off"; 257 }; 258 }; 259}; 260 261/* Here, choose exactly one from: ohci, usbd */ 262&ohci /* &usbd */ { 263 transceiver = <&isp1301>; 264 status = "okay"; 265}; 266 267&i2cusb { 268 clock-frequency = <100000>; 269 270 isp1301: usb-transceiver@2d { 271 compatible = "nxp,isp1301"; 272 reg = <0x2d>; 273 }; 274}; 275