1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * at91-nattis-2-natte-2.dts - Device Tree file for the Linea/Nattis board 4 * 5 * Copyright (C) 2017 Axentia Technologies AB 6 * 7 * Author: Peter Rosin <peda@axentia.se> 8 */ 9/dts-v1/; 10#include "at91-linea.dtsi" 11#include "sama5d3_lcd.dtsi" 12#include "at91-natte.dtsi" 13 14/ { 15 model = "Axentia Linea-Nattis v2 Natte v2"; 16 compatible = "axentia,nattis-2", "axentia,natte-2", "axentia,linea", 17 "atmel,sama5d31", "atmel,sama5d3", "atmel,sama5"; 18 19 gpio-keys { 20 compatible = "gpio-keys"; 21 22 wakeup { 23 label = "Wakeup"; 24 linux,code = <10>; 25 wakeup-source; 26 gpios = <&pioB 27 GPIO_ACTIVE_LOW>; 27 }; 28 }; 29 30 panel_reg: panel-regulator { 31 compatible = "regulator-fixed"; 32 regulator-name = "panel-VCC"; 33 regulator-min-microvolt = <3300000>; 34 regulator-max-microvolt = <3300000>; 35 }; 36 37 bl_reg: backlight-regulator { 38 compatible = "regulator-fixed"; 39 regulator-name = "panel-VDD"; 40 regulator-min-microvolt = <12000000>; 41 regulator-max-microvolt = <12000000>; 42 }; 43 44 panel_bl: backlight { 45 compatible = "pwm-backlight"; 46 pwms = <&hlcdc_pwm 0 100000 0>; 47 48 brightness-levels = < 0 1 2 3 4 5 6 7 8 9 49 10 11 12 13 14 15 16 17 18 19 50 20 21 22 23 24 25 26 27 28 29 51 30 31 32 33 34 35 36 37 38 39 52 40 41 42 43 44 45 46 47 48 49 53 50 51 52 53 54 55 56 57 58 59 54 60 61 62 63 64 65 66 67 68 69 55 70 71 72 73 74 75 76 77 78 79 56 80 81 82 83 84 85 86 87 88 89 57 90 91 92 93 94 95 96 97 98 99 58 100>; 59 default-brightness-level = <40>; 60 61 power-supply = <&bl_reg>; 62 enable-gpios = <&pioA 20 GPIO_ACTIVE_HIGH>; 63 pinctrl-names = "default"; 64 pinctrl-0 = <&pinctrl_blon>; 65 }; 66 67 panel: panel { 68 compatible = "sharp,lq150x1lg11", "panel-lvds"; 69 70 backlight = <&panel_bl>; 71 power-supply = <&panel_reg>; 72 73 width-mm = <304>; 74 height-mm = <228>; 75 76 data-mapping = "jeida-18"; 77 78 panel-timing { 79 // 1024x768 @ 60Hz (typical) 80 clock-frequency = <50000000 65000000 80000000>; 81 hactive = <1024>; 82 vactive = <768>; 83 hfront-porch = <48 88 88>; 84 hback-porch = <96 168 168>; 85 hsync-len = <32 64 64>; 86 vsync-len = <3 13 74>; 87 vfront-porch = <3 13 74>; 88 vback-porch = <3 12 74>; 89 }; 90 91 port { 92 panel_input: endpoint { 93 remote-endpoint = <&lvds_encoder_output>; 94 }; 95 }; 96 }; 97 98 lvds-encoder { 99 compatible = "ti,ds90c185", "lvds-encoder"; 100 101 pinctrl-names = "default"; 102 pinctrl-0 = <&pinctrl_lvds_prlud0 &pinctrl_lvds_hipow0>; 103 104 ports { 105 #address-cells = <1>; 106 #size-cells = <0>; 107 108 port@0 { 109 reg = <0>; 110 111 lvds_encoder_input: endpoint { 112 remote-endpoint = <&hlcdc_output>; 113 }; 114 }; 115 116 port@1 { 117 reg = <1>; 118 119 lvds_encoder_output: endpoint { 120 remote-endpoint = <&panel_input>; 121 }; 122 }; 123 }; 124 }; 125 126 sound { 127 compatible = "simple-audio-card"; 128 129 simple-audio-card,name = "nattis-tfa9879"; 130 simple-audio-card,format = "i2s"; 131 simple-audio-card,bitclock-master = <&cpu_dai>; 132 simple-audio-card,frame-master = <&cpu_dai>; 133 simple-audio-card,widgets = "Line", "Line Out Jack"; 134 simple-audio-card,routing = "Line Out Jack", "LINEOUT"; 135 136 cpu_dai: simple-audio-card,cpu { 137 sound-dai = <&ssc0>; 138 }; 139 140 simple-audio-card,codec { 141 sound-dai = <&>; 142 }; 143 }; 144}; 145 146&pinctrl { 147 nattis { 148 pinctrl_usba_vbus: usba_vbus { 149 atmel,pins = <AT91_PIOD 28 AT91_PERIPH_GPIO 150 AT91_PINCTRL_DEGLITCH>; 151 }; 152 153 pinctrl_mmc0_cd: mmc0_cd { 154 atmel,pins = <AT91_PIOD 5 AT91_PERIPH_GPIO 155 AT91_PINCTRL_PULL_UP_DEGLITCH>; 156 }; 157 158 pinctrl_lvds_prlud0: lvds_prlud0 { 159 atmel,pins = <AT91_PIOA 21 AT91_PERIPH_GPIO 160 (AT91_PINCTRL_OUTPUT | 161 AT91_PINCTRL_OUTPUT_VAL(0))>; 162 }; 163 164 pinctrl_lvds_hipow0: lvds_hipow0 { 165 atmel,pins = <AT91_PIOA 23 AT91_PERIPH_GPIO 166 (AT91_PINCTRL_OUTPUT | 167 AT91_PINCTRL_OUTPUT_VAL(0))>; 168 }; 169 170 pinctrl_blon: blon { 171 atmel,pins = <AT91_PIOA 20 AT91_PERIPH_GPIO 172 (AT91_PINCTRL_OUTPUT | 173 AT91_PINCTRL_OUTPUT_VAL(0))>; 174 }; 175 }; 176}; 177 178&watchdog { 179 status = "okay"; 180}; 181 182&i2c0 { 183 status = "okay"; 184 185 clock-frequency = <100000>; 186 187 temp@18 { 188 compatible = "nxp,se97b", "jedec,jc-42.4-temp"; 189 reg = <0x18>; 190 smbus-timeout-disable; 191 }; 192 193 eeprom@50 { 194 compatible = "nxp,se97b", "atmel,24c02"; 195 reg = <0x50>; 196 pagesize = <16>; 197 }; 198 199 amp: amplifier@6c { 200 compatible = "nxp,tfa9879"; 201 reg = <0x6c>; 202 #sound-dai-cells = <0>; 203 }; 204}; 205 206&ssc0 { 207 status = "okay"; 208 209 atmel,clk-from-rk-pin; 210 #sound-dai-cells = <0>; 211}; 212 213&hlcdc { 214 status = "okay"; 215 216 hlcdc-display-controller { 217 pinctrl-names = "default"; 218 pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb565>; 219 220 port@0 { 221 hlcdc_output: endpoint { 222 remote-endpoint = <&lvds_encoder_input>; 223 bus-width = <16>; 224 }; 225 }; 226 }; 227}; 228 229&mmc0 { 230 status = "okay"; 231 232 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 233 &pinctrl_mmc0_dat1_3 234 &pinctrl_mmc0_cd>; 235 236 slot@0 { 237 reg = <0>; 238 bus-width = <4>; 239 cd-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; 240 cd-inverted; 241 }; 242}; 243 244&usart0 { 245 status = "okay"; 246 247 pinctrl-names = "default"; 248 pinctrl-0 = <&pinctrl_usart0>; 249 atmel,use-dma-rx; 250}; 251 252&nand { 253 partitions { 254 compatible = "fixed-partitions"; 255 #address-cells = <1>; 256 #size-cells = <1>; 257 258 at91bootstrap@0 { 259 label = "at91bootstrap"; 260 reg = <0x0 0x40000>; 261 }; 262 263 barebox@40000 { 264 label = "barebox"; 265 reg = <0x40000 0x60000>; 266 }; 267 268 bareboxenv@c0000 { 269 label = "bareboxenv"; 270 reg = <0xc0000 0x40000>; 271 }; 272 273 bareboxenv2@100000 { 274 label = "bareboxenv2"; 275 reg = <0x100000 0x40000>; 276 }; 277 278 oftree@180000 { 279 label = "oftree"; 280 reg = <0x180000 0x20000>; 281 }; 282 283 kernel@200000 { 284 label = "kernel"; 285 reg = <0x200000 0x500000>; 286 }; 287 288 rootfs@800000 { 289 label = "rootfs"; 290 reg = <0x800000 0x1f800000>; 291 }; 292 }; 293}; 294 295&dbgu { 296 status = "okay"; 297 298 atmel,use-dma-rx; 299}; 300 301&usb0 { 302 status = "okay"; 303 304 atmel,vbus-gpio = <&pioD 28 GPIO_ACTIVE_HIGH>; 305 pinctrl-names = "default"; 306 pinctrl-0 = <&pinctrl_usba_vbus>; 307}; 308