at91sam9rlek.dts 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. /*
  2. * at91sam9rlek.dts - Device Tree file for Atmel at91sam9rl reference board
  3. *
  4. * Copyright (C) 2014 Alexandre Belloni <alexandre.belloni@free-electrons.com>
  5. *
  6. * Licensed under GPLv2 only
  7. */
  8. /dts-v1/;
  9. #include "at91sam9rl.dtsi"
  10. / {
  11. model = "Atmel at91sam9rlek";
  12. compatible = "atmel,at91sam9rlek", "atmel,at91sam9rl", "atmel,at91sam9";
  13. chosen {
  14. bootargs = "console=ttyS0,115200 rootfstype=ubifs root=ubi0:rootfs ubi.mtd=5 rw";
  15. };
  16. memory {
  17. reg = <0x20000000 0x4000000>;
  18. };
  19. clocks {
  20. #address-cells = <1>;
  21. #size-cells = <1>;
  22. ranges;
  23. main_clock: clock {
  24. compatible = "atmel,osc", "fixed-clock";
  25. clock-frequency = <12000000>;
  26. };
  27. slow_xtal {
  28. clock-frequency = <32768>;
  29. };
  30. main_xtal {
  31. clock-frequency = <12000000>;
  32. };
  33. };
  34. ahb {
  35. fb0: fb@00500000 {
  36. display = <&display0>;
  37. status = "okay";
  38. display0: display {
  39. bits-per-pixel = <16>;
  40. atmel,lcdcon-backlight;
  41. atmel,dmacon = <0x1>;
  42. atmel,lcdcon2 = <0x80008002>;
  43. atmel,guard-time = <1>;
  44. atmel,lcd-wiring-mode = "RGB";
  45. display-timings {
  46. native-mode = <&timing0>;
  47. timing0: timing0 {
  48. clock-frequency = <4965000>;
  49. hactive = <240>;
  50. vactive = <320>;
  51. hback-porch = <1>;
  52. hfront-porch = <33>;
  53. vback-porch = <1>;
  54. vfront-porch = <0>;
  55. hsync-len = <5>;
  56. vsync-len = <1>;
  57. hsync-active = <1>;
  58. vsync-active = <1>;
  59. };
  60. };
  61. };
  62. };
  63. nand0: nand@40000000 {
  64. nand-bus-width = <8>;
  65. nand-ecc-mode = "soft";
  66. nand-on-flash-bbt = <1>;
  67. status = "okay";
  68. at91bootstrap@0 {
  69. label = "at91bootstrap";
  70. reg = <0x0 0x40000>;
  71. };
  72. bootloader@40000 {
  73. label = "bootloader";
  74. reg = <0x40000 0x80000>;
  75. };
  76. bootloaderenv@c0000 {
  77. label = "bootloader env";
  78. reg = <0xc0000 0xc0000>;
  79. };
  80. dtb@180000 {
  81. label = "device tree";
  82. reg = <0x180000 0x80000>;
  83. };
  84. kernel@200000 {
  85. label = "kernel";
  86. reg = <0x200000 0x600000>;
  87. };
  88. rootfs@800000 {
  89. label = "rootfs";
  90. reg = <0x800000 0x0f800000>;
  91. };
  92. };
  93. apb {
  94. mmc0: mmc@fffa4000 {
  95. pinctrl-0 = <
  96. &pinctrl_board_mmc0
  97. &pinctrl_mmc0_clk
  98. &pinctrl_mmc0_slot0_cmd_dat0
  99. &pinctrl_mmc0_slot0_dat1_3>;
  100. status = "okay";
  101. slot@0 {
  102. reg = <0>;
  103. bus-width = <4>;
  104. cd-gpios = <&pioA 15 GPIO_ACTIVE_HIGH>;
  105. };
  106. };
  107. usart0: serial@fffb0000 {
  108. pinctrl-0 = <
  109. &pinctrl_usart0
  110. &pinctrl_usart0_rts
  111. &pinctrl_usart0_cts>;
  112. status = "okay";
  113. };
  114. adc0: adc@fffd0000 {
  115. pinctrl-names = "default";
  116. pinctrl-0 = <
  117. &pinctrl_adc0_ad0
  118. &pinctrl_adc0_ad1
  119. &pinctrl_adc0_ad2
  120. &pinctrl_adc0_ad3
  121. &pinctrl_adc0_ad4
  122. &pinctrl_adc0_ad5
  123. &pinctrl_adc0_adtrg>;
  124. atmel,adc-ts-wires = <4>;
  125. status = "okay";
  126. };
  127. usb0: gadget@fffd4000 {
  128. atmel,vbus-gpio = <&pioA 8 GPIO_ACTIVE_HIGH>;
  129. status = "okay";
  130. };
  131. spi0: spi@fffcc000 {
  132. status = "okay";
  133. cs-gpios = <&pioA 28 0>, <0>, <0>, <0>;
  134. mtd_dataflash@0 {
  135. compatible = "atmel,at45", "atmel,dataflash";
  136. spi-max-frequency = <15000000>;
  137. reg = <0>;
  138. };
  139. };
  140. pwm0: pwm@fffc8000 {
  141. status = "okay";
  142. pinctrl-names = "default";
  143. pinctrl-0 = <&pinctrl_pwm0_pwm1_2>,
  144. <&pinctrl_pwm0_pwm2_2>;
  145. };
  146. dbgu: serial@fffff200 {
  147. status = "okay";
  148. };
  149. pinctrl@fffff400 {
  150. mmc0 {
  151. pinctrl_board_mmc0: mmc0-board {
  152. atmel,pins =
  153. <AT91_PIOA 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
  154. };
  155. };
  156. };
  157. pmc: pmc@fffffc00 {
  158. main: mainck {
  159. clock-frequency = <12000000>;
  160. };
  161. };
  162. watchdog@fffffd40 {
  163. status = "okay";
  164. };
  165. };
  166. };
  167. pwmleds {
  168. compatible = "pwm-leds";
  169. ds1 {
  170. label = "ds1";
  171. pwms = <&pwm0 1 5000 PWM_POLARITY_INVERTED>;
  172. max-brightness = <255>;
  173. };
  174. ds2 {
  175. label = "ds2";
  176. pwms = <&pwm0 2 5000 PWM_POLARITY_INVERTED>;
  177. max-brightness = <255>;
  178. };
  179. };
  180. leds {
  181. compatible = "gpio-leds";
  182. ds3 {
  183. label = "ds3";
  184. gpios = <&pioD 14 GPIO_ACTIVE_HIGH>;
  185. linux,default-trigger = "heartbeat";
  186. };
  187. };
  188. gpio_keys {
  189. compatible = "gpio-keys";
  190. right_click {
  191. label = "right_click";
  192. gpios = <&pioB 0 GPIO_ACTIVE_LOW>;
  193. linux,code = <273>;
  194. gpio-key,wakeup;
  195. };
  196. left_click {
  197. label = "left_click";
  198. gpios = <&pioB 1 GPIO_ACTIVE_LOW>;
  199. linux,code = <272>;
  200. gpio-key,wakeup;
  201. };
  202. };
  203. i2c@0 {
  204. status = "okay";
  205. };
  206. i2c@1 {
  207. status = "okay";
  208. };
  209. };