1/* 2 * at91sam9n12ek.dts - Device Tree file for AT91SAM9N12-EK board 3 * 4 * Copyright (C) 2012 Atmel, 5 * 2012 Hong Xu <hong.xu@atmel.com> 6 * 7 * Licensed under GPLv2 or later. 8 */ 9/dts-v1/; 10#include "at91sam9n12.dtsi" 11 12/ { 13 model = "Atmel AT91SAM9N12-EK"; 14 compatible = "atmel,at91sam9n12ek", "atmel,at91sam9n12", "atmel,at91sam9"; 15 16 chosen { 17 bootargs = "root=/dev/mtdblock1 rw rootfstype=jffs2"; 18 stdout-path = "serial0:115200n8"; 19 }; 20 21 memory { 22 reg = <0x20000000 0x8000000>; 23 }; 24 25 clocks { 26 slow_xtal { 27 clock-frequency = <32768>; 28 }; 29 30 main_xtal { 31 clock-frequency = <16000000>; 32 }; 33 }; 34 35 ahb { 36 apb { 37 dbgu: serial@fffff200 { 38 status = "okay"; 39 }; 40 41 ssc0: ssc@f0010000 { 42 status = "okay"; 43 }; 44 45 i2c0: i2c@f8010000 { 46 status = "okay"; 47 48 wm8904: codec@1a { 49 compatible = "wlf,wm8904"; 50 reg = <0x1a>; 51 clocks = <&pck0>; 52 clock-names = "mclk"; 53 }; 54 55 qt1070: keyboard@1b { 56 compatible = "qt1070"; 57 reg = <0x1b>; 58 interrupt-parent = <&pioA>; 59 interrupts = <2 IRQ_TYPE_EDGE_FALLING>; 60 pinctrl-names = "default"; 61 pinctrl-0 = <&pinctrl_qt1070_irq>; 62 }; 63 }; 64 65 mmc0: mmc@f0008000 { 66 pinctrl-0 = < 67 &pinctrl_board_mmc0 68 &pinctrl_mmc0_slot0_clk_cmd_dat0 69 &pinctrl_mmc0_slot0_dat1_3>; 70 status = "okay"; 71 slot@0 { 72 reg = <0>; 73 bus-width = <4>; 74 cd-gpios = <&pioA 7 GPIO_ACTIVE_HIGH>; 75 }; 76 }; 77 78 pinctrl@fffff400 { 79 mmc0 { 80 pinctrl_board_mmc0: mmc0-board { 81 atmel,pins = 82 <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA7 gpio CD pin pull up and deglitch */ 83 }; 84 }; 85 86 qt1070 { 87 pinctrl_qt1070_irq: qt1070_irq { 88 atmel,pins = 89 <AT91_PIOA 2 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 90 }; 91 }; 92 93 sound { 94 pinctrl_pck0_as_audio_mck: pck0_as_audio_mck { 95 atmel,pins = 96 <AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE>; 97 }; 98 }; 99 100 usb1 { 101 pinctrl_usb1_vbus_sense: usb1_vbus_sense { 102 atmel,pins = 103 <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PB16 gpio usb vbus sense, no pull up and deglitch */ 104 }; 105 }; 106 }; 107 108 spi0: spi@f0000000 { 109 status = "okay"; 110 cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; 111 m25p80@0 { 112 compatible = "atmel,at25df321a"; 113 spi-max-frequency = <50000000>; 114 reg = <0>; 115 }; 116 }; 117 118 hlcdc: hlcdc@f8038000 { 119 status = "okay"; 120 121 hlcdc-display-controller { 122 pinctrl-names = "default"; 123 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; 124 125 port@0 { 126 hlcdc_panel_output: endpoint@0 { 127 reg = <0>; 128 remote-endpoint = <&panel_input>; 129 }; 130 }; 131 }; 132 }; 133 134 usb1: gadget@f803c000 { 135 pinctrl-names = "default"; 136 pinctrl-0 = <&pinctrl_usb1_vbus_sense>; 137 atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; 138 status = "okay"; 139 }; 140 141 watchdog@fffffe40 { 142 status = "okay"; 143 }; 144 145 rtc@fffffeb0 { 146 status = "okay"; 147 }; 148 }; 149 150 nand0: nand@40000000 { 151 nand-bus-width = <8>; 152 nand-ecc-mode = "hw"; 153 atmel,has-pmecc; 154 atmel,pmecc-cap = <2>; 155 atmel,pmecc-sector-size = <512>; 156 nand-on-flash-bbt; 157 status = "okay"; 158 }; 159 160 usb0: ohci@00500000 { 161 num-ports = <1>; 162 atmel,vbus-gpio = <&pioB 7 GPIO_ACTIVE_LOW>; 163 status = "okay"; 164 }; 165 }; 166 167 backlight: backlight { 168 compatible = "pwm-backlight"; 169 pwms = <&hlcdc_pwm 0 50000 0>; 170 brightness-levels = <0 4 8 16 32 64 128 255>; 171 default-brightness-level = <6>; 172 power-supply = <&bl_reg>; 173 status = "okay"; 174 }; 175 176 bl_reg: backlight_regulator { 177 compatible = "regulator-fixed"; 178 regulator-name = "backlight-power-supply"; 179 regulator-min-microvolt = <5000000>; 180 regulator-max-microvolt = <5000000>; 181 status = "okay"; 182 }; 183 184 leds { 185 compatible = "gpio-leds"; 186 187 d8 { 188 label = "d8"; 189 gpios = <&pioB 4 GPIO_ACTIVE_LOW>; 190 linux,default-trigger = "mmc0"; 191 }; 192 193 d9 { 194 label = "d9"; 195 gpios = <&pioB 5 GPIO_ACTIVE_LOW>; 196 linux,default-trigger = "nand-disk"; 197 }; 198 199 d10 { 200 label = "d10"; 201 gpios = <&pioB 6 GPIO_ACTIVE_HIGH>; 202 linux,default-trigger = "heartbeat"; 203 }; 204 }; 205 206 gpio_keys { 207 compatible = "gpio-keys"; 208 209 enter { 210 label = "Enter"; 211 gpios = <&pioB 3 GPIO_ACTIVE_LOW>; 212 linux,code = <28>; 213 wakeup-source; 214 }; 215 }; 216 217 panel: panel { 218 compatible = "qd,qd43003c0-40", "simple-panel"; 219 backlight = <&backlight>; 220 power-supply = <&panel_reg>; 221 #address-cells = <1>; 222 #size-cells = <0>; 223 status = "okay"; 224 225 port@0 { 226 reg = <0>; 227 #address-cells = <1>; 228 #size-cells = <0>; 229 230 panel_input: endpoint@0 { 231 reg = <0>; 232 remote-endpoint = <&hlcdc_panel_output>; 233 }; 234 }; 235 }; 236 237 panel_reg: panel_regulator { 238 compatible = "regulator-fixed"; 239 regulator-name = "panel-power-supply"; 240 regulator-min-microvolt = <3300000>; 241 regulator-max-microvolt = <3300000>; 242 status = "okay"; 243 }; 244 245 sound { 246 compatible = "atmel,asoc-wm8904"; 247 pinctrl-names = "default"; 248 pinctrl-0 = <&pinctrl_pck0_as_audio_mck>; 249 250 atmel,model = "wm8904 @ AT91SAM9N12"; 251 atmel,audio-routing = 252 "Headphone Jack", "HPOUTL", 253 "Headphone Jack", "HPOUTR", 254 "IN2L", "Line In Jack", 255 "IN2R", "Line In Jack", 256 "Mic", "MICBIAS", 257 "IN1L", "Mic"; 258 259 atmel,ssc-controller = <&ssc0>; 260 atmel,audio-codec = <&wm8904>; 261 }; 262}; 263