bcm53016-meraki-mr32.dts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. /*
  3. * Broadcom BCM470X / BCM5301X ARM platform code.
  4. * DTS for Meraki MR32 / Codename: Espresso
  5. *
  6. * Copyright (C) 2018-2020 Christian Lamparter <[email protected]>
  7. */
  8. /dts-v1/;
  9. #include "bcm4708.dtsi"
  10. #include "bcm5301x-nand-cs0-bch8.dtsi"
  11. #include <dt-bindings/leds/common.h>
  12. / {
  13. compatible = "meraki,mr32", "brcm,bcm53016", "brcm,bcm4708";
  14. model = "Meraki MR32";
  15. chosen {
  16. bootargs = " console=ttyS0,115200n8 earlycon";
  17. };
  18. memory@0 {
  19. reg = <0x00000000 0x08000000>;
  20. device_type = "memory";
  21. };
  22. aliases {
  23. serial1 = &uart2;
  24. };
  25. leds {
  26. compatible = "gpio-leds";
  27. sysled3 {
  28. function = LED_FUNCTION_FAULT;
  29. color = <LED_COLOR_ID_AMBER>;
  30. gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
  31. panic-indicator;
  32. };
  33. sysled2 {
  34. function = LED_FUNCTION_INDICATOR;
  35. color = <LED_COLOR_ID_WHITE>;
  36. gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>;
  37. };
  38. };
  39. keys {
  40. compatible = "gpio-keys";
  41. button-restart {
  42. label = "Reset";
  43. linux,code = <KEY_RESTART>;
  44. gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>;
  45. };
  46. };
  47. pwm-leds {
  48. compatible = "pwm-leds";
  49. red {
  50. /* SYS-LED 1 - Tricolor */
  51. function = LED_FUNCTION_INDICATOR;
  52. color = <LED_COLOR_ID_RED>;
  53. pwms = <&pwm 0 50000 0>;
  54. max-brightness = <255>;
  55. };
  56. green {
  57. /* SYS-LED 1 - Tricolor */
  58. function = LED_FUNCTION_POWER;
  59. color = <LED_COLOR_ID_GREEN>;
  60. pwms = <&pwm 1 50000 0>;
  61. max-brightness = <255>;
  62. };
  63. blue {
  64. /* SYS-LED 1 - Tricolor */
  65. function = LED_FUNCTION_INDICATOR;
  66. color = <LED_COLOR_ID_BLUE>;
  67. pwms = <&pwm 2 50000 0>;
  68. max-brightness = <255>;
  69. };
  70. };
  71. };
  72. &uart0 {
  73. clock-frequency = <62500000>;
  74. /delete-property/ clocks;
  75. };
  76. &uart1 {
  77. status = "disabled";
  78. };
  79. &uart2 {
  80. status = "okay";
  81. /*
  82. * bluetooth-le {
  83. * compatible = "brcm,bcm20732";
  84. * enable-gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>;
  85. *};
  86. */
  87. };
  88. &gmac0 {
  89. nvmem-cell-names = "mac-address";
  90. nvmem-cells = <&mac_address>;
  91. };
  92. &gmac1 {
  93. status = "disabled";
  94. };
  95. &gmac2 {
  96. status = "disabled";
  97. };
  98. &gmac3 {
  99. status = "disabled";
  100. };
  101. &pwm {
  102. status = "okay";
  103. pinctrl-names = "default";
  104. pinctrl-0 = <&pinmux_pwm>;
  105. };
  106. &nandcs {
  107. nand-ecc-algo = "hw";
  108. partitions {
  109. /*
  110. * The partition autodetection does not work for this device.
  111. * It will only detect the "nvram" partition with an incorrect size.
  112. * [ 1.721667] 1 bcm47xxpart partitions found on MTD device brcmnand.0
  113. * [ 1.727962] Creating 1 MTD partitions on "brcmnand.0":
  114. * [ 1.733117] 0x000000400000-0x000008000000 : "nvram"
  115. */
  116. compatible = "fixed-partitions";
  117. #address-cells = <0x1>;
  118. #size-cells = <0x1>;
  119. partition0@0 {
  120. label = "u-boot";
  121. reg = <0x0 0x100000>;
  122. read-only;
  123. };
  124. partition1@100000 {
  125. label = "bootkernel1";
  126. reg = <0x100000 0x300000>;
  127. read-only;
  128. };
  129. partition2@400000 {
  130. label = "nvram";
  131. reg = <0x400000 0x100000>;
  132. read-only;
  133. };
  134. partition3@500000 {
  135. label = "bootkernel2";
  136. reg = <0x500000 0x300000>;
  137. read-only;
  138. };
  139. partition4@800000 {
  140. label = "ubi";
  141. reg = <0x800000 0x7780000>;
  142. };
  143. };
  144. };
  145. &srab {
  146. status = "okay";
  147. ports {
  148. port@0 {
  149. reg = <0>;
  150. label = "poe";
  151. };
  152. port@5 {
  153. reg = <5>;
  154. label = "cpu";
  155. ethernet = <&gmac0>;
  156. fixed-link {
  157. speed = <1000>;
  158. full-duplex;
  159. };
  160. };
  161. };
  162. };
  163. &i2c0 {
  164. status = "okay";
  165. pinctrl-names = "default";
  166. pinctrl-0 = <&pinmux_i2c>;
  167. clock-frequency = <100000>;
  168. current_sense: ina219@45 {
  169. compatible = "ti,ina219";
  170. reg = <0x45>;
  171. shunt-resistor = <60000>; /* = 60 mOhms */
  172. };
  173. eeprom: eeprom@50 {
  174. compatible = "atmel,24c64";
  175. reg = <0x50>;
  176. pagesize = <32>;
  177. read-only;
  178. #address-cells = <1>;
  179. #size-cells = <1>;
  180. mac_address: mac-address@66 {
  181. reg = <0x66 0x6>;
  182. };
  183. };
  184. };