at91sam9n12ek.dts 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  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. model = "Atmel AT91SAM9N12-EK";
  13. compatible = "atmel,at91sam9n12ek", "atmel,at91sam9n12", "atmel,at91sam9";
  14. chosen {
  15. bootargs = "console=ttyS0,115200 root=/dev/mtdblock1 rw rootfstype=jffs2";
  16. };
  17. memory {
  18. reg = <0x20000000 0x8000000>;
  19. };
  20. clocks {
  21. #address-cells = <1>;
  22. #size-cells = <1>;
  23. ranges;
  24. main_clock: clock@0 {
  25. compatible = "atmel,osc", "fixed-clock";
  26. clock-frequency = <16000000>;
  27. };
  28. slow_xtal {
  29. clock-frequency = <32768>;
  30. };
  31. main_xtal {
  32. clock-frequency = <16000000>;
  33. };
  34. };
  35. ahb {
  36. apb {
  37. dbgu: serial@fffff200 {
  38. status = "okay";
  39. };
  40. ssc0: ssc@f0010000 {
  41. status = "okay";
  42. };
  43. i2c0: i2c@f8010000 {
  44. status = "okay";
  45. wm8904: codec@1a {
  46. compatible = "wm8904";
  47. reg = <0x1a>;
  48. clocks = <&pck0>;
  49. clock-names = "mclk";
  50. };
  51. qt1070: keyboard@1b {
  52. compatible = "qt1070";
  53. reg = <0x1b>;
  54. interrupt-parent = <&pioA>;
  55. interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
  56. pinctrl-names = "default";
  57. pinctrl-0 = <&pinctrl_qt1070_irq>;
  58. };
  59. };
  60. i2c1: i2c@f8014000 {
  61. status = "okay";
  62. };
  63. mmc0: mmc@f0008000 {
  64. pinctrl-0 = <
  65. &pinctrl_board_mmc0
  66. &pinctrl_mmc0_slot0_clk_cmd_dat0
  67. &pinctrl_mmc0_slot0_dat1_3>;
  68. status = "okay";
  69. slot@0 {
  70. reg = <0>;
  71. bus-width = <4>;
  72. cd-gpios = <&pioA 7 GPIO_ACTIVE_HIGH>;
  73. };
  74. };
  75. pinctrl@fffff400 {
  76. mmc0 {
  77. pinctrl_board_mmc0: mmc0-board {
  78. atmel,pins =
  79. <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA7 gpio CD pin pull up and deglitch */
  80. };
  81. };
  82. qt1070 {
  83. pinctrl_qt1070_irq: qt1070_irq {
  84. atmel,pins =
  85. <AT91_PIOA 2 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>;
  86. };
  87. };
  88. sound {
  89. pinctrl_pck0_as_audio_mck: pck0_as_audio_mck {
  90. atmel,pins =
  91. <AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE>;
  92. };
  93. };
  94. };
  95. spi0: spi@f0000000 {
  96. status = "okay";
  97. cs-gpios = <&pioA 14 0>, <0>, <0>, <0>;
  98. m25p80@0 {
  99. compatible = "atmel,at25df321a";
  100. spi-max-frequency = <50000000>;
  101. reg = <0>;
  102. };
  103. };
  104. watchdog@fffffe40 {
  105. status = "okay";
  106. };
  107. };
  108. nand0: nand@40000000 {
  109. nand-bus-width = <8>;
  110. nand-ecc-mode = "hw";
  111. atmel,has-pmecc;
  112. atmel,pmecc-cap = <2>;
  113. atmel,pmecc-sector-size = <512>;
  114. nand-on-flash-bbt;
  115. status = "okay";
  116. };
  117. usb0: ohci@00500000 {
  118. num-ports = <1>;
  119. atmel,vbus-gpio = <&pioB 7 GPIO_ACTIVE_LOW>;
  120. status = "okay";
  121. };
  122. };
  123. leds {
  124. compatible = "gpio-leds";
  125. d8 {
  126. label = "d8";
  127. gpios = <&pioB 4 GPIO_ACTIVE_LOW>;
  128. linux,default-trigger = "mmc0";
  129. };
  130. d9 {
  131. label = "d6";
  132. gpios = <&pioB 5 GPIO_ACTIVE_LOW>;
  133. linux,default-trigger = "nand-disk";
  134. };
  135. d10 {
  136. label = "d7";
  137. gpios = <&pioB 6 GPIO_ACTIVE_HIGH>;
  138. linux,default-trigger = "heartbeat";
  139. };
  140. };
  141. gpio_keys {
  142. compatible = "gpio-keys";
  143. enter {
  144. label = "Enter";
  145. gpios = <&pioB 3 GPIO_ACTIVE_LOW>;
  146. linux,code = <28>;
  147. gpio-key,wakeup;
  148. };
  149. };
  150. sound {
  151. compatible = "atmel,asoc-wm8904";
  152. pinctrl-names = "default";
  153. pinctrl-0 = <&pinctrl_pck0_as_audio_mck>;
  154. atmel,model = "wm8904 @ AT91SAM9N12";
  155. atmel,audio-routing =
  156. "Headphone Jack", "HPOUTL",
  157. "Headphone Jack", "HPOUTR",
  158. "IN2L", "Line In Jack",
  159. "IN2R", "Line In Jack",
  160. "Mic", "MICBIAS",
  161. "IN1L", "Mic";
  162. atmel,ssc-controller = <&ssc0>;
  163. atmel,audio-codec = <&wm8904>;
  164. };
  165. };