stm32h750i-art-pi.dts 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. /*
  2. * Copyright 2021 - Dillon Min <[email protected]>
  3. *
  4. * This file is dual-licensed: you can use it either under the terms
  5. * of the GPL or the X11 license, at your option. Note that this dual
  6. * licensing only applies to this file, and not this project as a
  7. * whole.
  8. *
  9. * a) This file is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU General Public License as
  11. * published by the Free Software Foundation; either version 2 of the
  12. * License, or (at your option) any later version.
  13. *
  14. * This file is distributed in the hope that it will be useful,
  15. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  17. * GNU General Public License for more details.
  18. *
  19. * Or, alternatively,
  20. *
  21. * b) Permission is hereby granted, free of charge, to any person
  22. * obtaining a copy of this software and associated documentation
  23. * files (the "Software"), to deal in the Software without
  24. * restriction, including without limitation the rights to use,
  25. * copy, modify, merge, publish, distribute, sublicense, and/or
  26. * sell copies of the Software, and to permit persons to whom the
  27. * Software is furnished to do so, subject to the following
  28. * conditions:
  29. *
  30. * The above copyright notice and this permission notice shall be
  31. * included in all copies or substantial portions of the Software.
  32. *
  33. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  34. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  35. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  36. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  37. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  38. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  39. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  40. * OTHER DEALINGS IN THE SOFTWARE.
  41. *
  42. * For art-pi board resources, you can refer to link:
  43. * https://art-pi.gitee.io/website/
  44. */
  45. /dts-v1/;
  46. #include "stm32h750.dtsi"
  47. #include "stm32h7-pinctrl.dtsi"
  48. #include <dt-bindings/interrupt-controller/irq.h>
  49. #include <dt-bindings/gpio/gpio.h>
  50. / {
  51. model = "RT-Thread STM32H750i-ART-PI board";
  52. compatible = "st,stm32h750i-art-pi", "st,stm32h750";
  53. chosen {
  54. bootargs = "root=/dev/ram";
  55. stdout-path = "serial0:2000000n8";
  56. };
  57. memory@c0000000 {
  58. device_type = "memory";
  59. reg = <0xc0000000 0x2000000>;
  60. };
  61. reserved-memory {
  62. #address-cells = <1>;
  63. #size-cells = <1>;
  64. ranges;
  65. linux,cma {
  66. compatible = "shared-dma-pool";
  67. no-map;
  68. size = <0x100000>;
  69. linux,dma-default;
  70. };
  71. };
  72. aliases {
  73. serial0 = &uart4;
  74. serial1 = &usart3;
  75. };
  76. leds {
  77. compatible = "gpio-leds";
  78. led-red {
  79. gpios = <&gpioi 8 0>;
  80. };
  81. led-green {
  82. gpios = <&gpioc 15 0>;
  83. linux,default-trigger = "heartbeat";
  84. };
  85. };
  86. v3v3: regulator-v3v3 {
  87. compatible = "regulator-fixed";
  88. regulator-name = "v3v3";
  89. regulator-min-microvolt = <3300000>;
  90. regulator-max-microvolt = <3300000>;
  91. regulator-always-on;
  92. };
  93. wlan_pwr: regulator-wlan {
  94. compatible = "regulator-fixed";
  95. regulator-name = "wl-reg";
  96. regulator-min-microvolt = <3300000>;
  97. regulator-max-microvolt = <3300000>;
  98. gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
  99. enable-active-high;
  100. };
  101. };
  102. &clk_hse {
  103. clock-frequency = <25000000>;
  104. };
  105. &dma1 {
  106. status = "okay";
  107. };
  108. &dma2 {
  109. status = "okay";
  110. };
  111. &mac {
  112. status = "disabled";
  113. pinctrl-0 = <&ethernet_rmii>;
  114. pinctrl-names = "default";
  115. phy-mode = "rmii";
  116. phy-handle = <&phy0>;
  117. mdio0 {
  118. #address-cells = <1>;
  119. #size-cells = <0>;
  120. compatible = "snps,dwmac-mdio";
  121. phy0: ethernet-phy@0 {
  122. reg = <0>;
  123. };
  124. };
  125. };
  126. &sdmmc1 {
  127. pinctrl-names = "default", "opendrain", "sleep";
  128. pinctrl-0 = <&sdmmc1_b4_pins_a>;
  129. pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
  130. pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>;
  131. broken-cd;
  132. st,neg-edge;
  133. bus-width = <4>;
  134. vmmc-supply = <&v3v3>;
  135. status = "okay";
  136. };
  137. &sdmmc2 {
  138. pinctrl-names = "default", "opendrain", "sleep";
  139. pinctrl-0 = <&sdmmc2_b4_pins_a>;
  140. pinctrl-1 = <&sdmmc2_b4_od_pins_a>;
  141. pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>;
  142. broken-cd;
  143. non-removable;
  144. st,neg-edge;
  145. bus-width = <4>;
  146. vmmc-supply = <&wlan_pwr>;
  147. status = "okay";
  148. #address-cells = <1>;
  149. #size-cells = <0>;
  150. brcmf: bcrmf@1 {
  151. reg = <1>;
  152. compatible = "brcm,bcm4329-fmac";
  153. };
  154. };
  155. &spi1 {
  156. status = "okay";
  157. pinctrl-0 = <&spi1_pins>;
  158. pinctrl-names = "default";
  159. cs-gpios = <&gpioa 4 GPIO_ACTIVE_LOW>;
  160. dmas = <&dmamux1 37 0x400 0x05>,
  161. <&dmamux1 38 0x400 0x05>;
  162. dma-names = "rx", "tx";
  163. flash@0 {
  164. #address-cells = <1>;
  165. #size-cells = <1>;
  166. compatible = "winbond,w25q128", "jedec,spi-nor";
  167. reg = <0>;
  168. spi-max-frequency = <80000000>;
  169. partition@0 {
  170. label = "root filesystem";
  171. reg = <0 0x1000000>;
  172. };
  173. };
  174. };
  175. &usart2 {
  176. pinctrl-0 = <&usart2_pins>;
  177. pinctrl-names = "default";
  178. status = "disabled";
  179. };
  180. &usart3 {
  181. pinctrl-names = "default";
  182. pinctrl-0 = <&usart3_pins>;
  183. dmas = <&dmamux1 45 0x400 0x05>,
  184. <&dmamux1 46 0x400 0x05>;
  185. dma-names = "rx", "tx";
  186. st,hw-flow-ctrl;
  187. status = "okay";
  188. bluetooth {
  189. compatible = "brcm,bcm43438-bt";
  190. host-wakeup-gpios = <&gpioc 0 GPIO_ACTIVE_HIGH>;
  191. device-wakeup-gpios = <&gpioi 10 GPIO_ACTIVE_HIGH>;
  192. shutdown-gpios = <&gpioi 11 GPIO_ACTIVE_HIGH>;
  193. max-speed = <115200>;
  194. };
  195. };
  196. &uart4 {
  197. pinctrl-0 = <&uart4_pins>;
  198. pinctrl-names = "default";
  199. status = "okay";
  200. };