kirkwood-b3.dts 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. /*
  2. * Device Tree file for Excito Bubba B3
  3. *
  4. * Copyright (C) 2013, Andrew Lunn <andrew@lunn.ch>
  5. *
  6. * This program is free software; you can redistribute it and/or
  7. * modify it under the terms of the GNU General Public License
  8. * as published by the Free Software Foundation; either version
  9. * 2 of the License, or (at your option) any later version.
  10. *
  11. * Note: This requires a new'ish version of u-boot, which disables the
  12. * L2 cache. If your B3 silently fails to boot, u-boot is probably too
  13. * old. Either upgrade, or consider the following email:
  14. *
  15. * http://lists.debian.org/debian-arm/2012/08/msg00128.html
  16. */
  17. /dts-v1/;
  18. #include "kirkwood.dtsi"
  19. #include "kirkwood-6281.dtsi"
  20. / {
  21. model = "Excito B3";
  22. compatible = "excito,b3", "marvell,kirkwood-88f6281", "marvell,kirkwood";
  23. memory { /* 512 MB */
  24. device_type = "memory";
  25. reg = <0x00000000 0x20000000>;
  26. };
  27. chosen {
  28. bootargs = "console=ttyS0,115200n8 earlyprintk";
  29. stdout-path = &uart0;
  30. };
  31. ocp@f1000000 {
  32. pinctrl: pin-controller@10000 {
  33. pmx_button_power: pmx-button-power {
  34. marvell,pins = "mpp39";
  35. marvell,function = "gpio";
  36. };
  37. pmx_led_green: pmx-led-green {
  38. marvell,pins = "mpp38";
  39. marvell,function = "gpio";
  40. };
  41. pmx_led_red: pmx-led-red {
  42. marvell,pins = "mpp41";
  43. marvell,function = "gpio";
  44. };
  45. pmx_led_blue: pmx-led-blue {
  46. marvell,pins = "mpp42";
  47. marvell,function = "gpio";
  48. };
  49. pmx_beeper: pmx-beeper {
  50. marvell,pins = "mpp40";
  51. marvell,function = "gpio";
  52. };
  53. };
  54. spi@10600 {
  55. status = "okay";
  56. m25p16@0 {
  57. #address-cells = <1>;
  58. #size-cells = <1>;
  59. compatible = "st,m25p16", "jedec,spi-nor";
  60. reg = <0>;
  61. spi-max-frequency = <40000000>;
  62. mode = <0>;
  63. partition@0 {
  64. reg = <0x0 0xc0000>;
  65. label = "u-boot";
  66. };
  67. partition@c0000 {
  68. reg = <0xc0000 0x20000>;
  69. label = "u-boot env";
  70. };
  71. partition@e0000 {
  72. reg = <0xe0000 0x120000>;
  73. label = "data";
  74. };
  75. };
  76. };
  77. i2c@11000 {
  78. status = "okay";
  79. /*
  80. * There is something on the bus at address 0x64.
  81. * Not yet identified what it is, maybe the eeprom
  82. * for the Atheros WiFi chip?
  83. */
  84. };
  85. serial@12000 {
  86. /* Internal on test pins, 3.3v TTL
  87. * UART0_RX = Testpoint 65
  88. * UART0_TX = Testpoint 66
  89. * See the Excito Wiki for more details.
  90. */
  91. status = "okay";
  92. };
  93. sata@80000 {
  94. /* One internal, the second as eSATA */
  95. status = "okay";
  96. nr-ports = <2>;
  97. };
  98. };
  99. gpio-leds {
  100. /*
  101. * There is one LED "port" on the front and the colours
  102. * mix together giving some interesting combinations.
  103. */
  104. compatible = "gpio-leds";
  105. pinctrl-0 = < &pmx_led_green &pmx_led_red
  106. &pmx_led_blue >;
  107. pinctrl-names = "default";
  108. programming_led {
  109. label = "bubba3:green:programming";
  110. gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
  111. default-state = "off";
  112. };
  113. error_led {
  114. label = "bubba3:red:error";
  115. gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
  116. };
  117. active_led {
  118. label = "bubba3:blue:active";
  119. gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
  120. };
  121. };
  122. gpio-keys {
  123. compatible = "gpio-keys";
  124. pinctrl-0 = <&pmx_button_power>;
  125. pinctrl-names = "default";
  126. power-button {
  127. /* On the back */
  128. label = "Power Button";
  129. linux,code = <KEY_POWER>;
  130. gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
  131. };
  132. };
  133. beeper: beeper {
  134. /* 4KHz Piezoelectric buzzer */
  135. compatible = "gpio-beeper";
  136. pinctrl-0 = <&pmx_beeper>;
  137. pinctrl-names = "default";
  138. gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
  139. };
  140. };
  141. &mdio {
  142. status = "okay";
  143. ethphy0: ethernet-phy@8 {
  144. device_type = "ethernet-phy";
  145. reg = <8>;
  146. };
  147. ethphy1: ethernet-phy@24 {
  148. device_type = "ethernet-phy";
  149. reg = <24>;
  150. };
  151. };
  152. &eth0 {
  153. status = "okay";
  154. ethernet0-port@0 {
  155. phy-handle = <&ethphy0>;
  156. };
  157. };
  158. &eth1 {
  159. status = "okay";
  160. ethernet1-port@0 {
  161. phy-handle = <&ethphy1>;
  162. };
  163. };
  164. /* Wifi model has Atheros chipset on pcie port */
  165. &pciec {
  166. status = "okay";
  167. };
  168. &pcie0 {
  169. status = "okay";
  170. };