stm32f746.dtsi 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. /*
  2. * Copyright 2016 - Michael Kurz <michi.kurz@gmail.com>
  3. * Copyright 2016 - Vikas MANOCHA <vikas.manocha@st.com>
  4. *
  5. * Based on:
  6. * stm32f429.dtsi from Linux
  7. * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com>
  8. *
  9. * This file is dual-licensed: you can use it either under the terms
  10. * of the GPL or the X11 license, at your option. Note that this dual
  11. * licensing only applies to this file, and not this project as a
  12. * whole.
  13. *
  14. * a) This file is free software; you can redistribute it and/or
  15. * modify it under the terms of the GNU General Public License as
  16. * published by the Free Software Foundation; either version 2 of the
  17. * License, or (at your option) any later version.
  18. *
  19. * This file is distributed in the hope that it will be useful,
  20. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  21. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  22. * GNU General Public License for more details.
  23. *
  24. * Or, alternatively,
  25. *
  26. * b) Permission is hereby granted, free of charge, to any person
  27. * obtaining a copy of this software and associated documentation
  28. * files (the "Software"), to deal in the Software without
  29. * restriction, including without limitation the rights to use,
  30. * copy, modify, merge, publish, distribute, sublicense, and/or
  31. * sell copies of the Software, and to permit persons to whom the
  32. * Software is furnished to do so, subject to the following
  33. * conditions:
  34. *
  35. * The above copyright notice and this permission notice shall be
  36. * included in all copies or substantial portions of the Software.
  37. *
  38. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  39. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  40. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  41. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  42. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  43. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  44. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  45. * OTHER DEALINGS IN THE SOFTWARE.
  46. */
  47. #include "armv7-m.dtsi"
  48. #include <dt-bindings/pinctrl/stm32f746-pinfunc.h>
  49. / {
  50. clocks {
  51. clk_hse: clk-hse {
  52. #clock-cells = <0>;
  53. compatible = "fixed-clock";
  54. clock-frequency = <0>;
  55. };
  56. };
  57. soc {
  58. u-boot,dm-pre-reloc;
  59. mac: ethernet@40028000 {
  60. compatible = "st,stm32-dwmac";
  61. reg = <0x40028000 0x8000>;
  62. reg-names = "stmmaceth";
  63. interrupts = <61>, <62>;
  64. interrupt-names = "macirq", "eth_wake_irq";
  65. snps,pbl = <8>;
  66. snps,mixed-burst;
  67. dma-ranges;
  68. status = "disabled";
  69. };
  70. fmc: fmc@A0000000 {
  71. compatible = "st,stm32-fmc";
  72. reg = <0xA0000000 0x1000>;
  73. u-boot,dm-pre-reloc;
  74. };
  75. qspi: quadspi@A0001000 {
  76. compatible = "st,stm32-qspi";
  77. #address-cells = <1>;
  78. #size-cells = <0>;
  79. reg = <0xA0001000 0x1000>, <0x90000000 0x10000000>;
  80. reg-names = "QuadSPI", "QuadSPI-memory";
  81. interrupts = <92>;
  82. spi-max-frequency = <108000000>;
  83. clocks = <&rcc 0 65>;
  84. status = "disabled";
  85. };
  86. usart1: serial@40011000 {
  87. compatible = "st,stm32-usart", "st,stm32-uart";
  88. reg = <0x40011000 0x400>;
  89. interrupts = <37>;
  90. clocks = <&rcc 0 164>;
  91. status = "disabled";
  92. u-boot,dm-pre-reloc;
  93. };
  94. rcc: rcc@40023810 {
  95. #reset-cells = <1>;
  96. #clock-cells = <2>;
  97. compatible = "st,stm32f42xx-rcc", "st,stm32-rcc";
  98. reg = <0x40023800 0x400>;
  99. clocks = <&clk_hse>;
  100. u-boot,dm-pre-reloc;
  101. };
  102. pinctrl: pin-controller {
  103. #address-cells = <1>;
  104. #size-cells = <1>;
  105. compatible = "st,stm32f746-pinctrl";
  106. ranges = <0 0x40020000 0x3000>;
  107. u-boot,dm-pre-reloc;
  108. pins-are-numbered;
  109. usart1_pins_a: usart1@0 {
  110. pins1 {
  111. pinmux = <STM32F746_PA9_FUNC_USART1_TX>;
  112. bias-disable;
  113. drive-push-pull;
  114. slew-rate = <2>;
  115. };
  116. pins2 {
  117. pinmux = <STM32F746_PB7_FUNC_USART1_RX>;
  118. bias-disable;
  119. };
  120. };
  121. ethernet_mii: mii@0 {
  122. pins {
  123. pinmux = <STM32F746_PG13_FUNC_ETH_MII_TXD0_ETH_RMII_TXD0>,
  124. <STM32F746_PG14_FUNC_ETH_MII_TXD1_ETH_RMII_TXD1>,
  125. <STM32F746_PG11_FUNC_ETH_MII_TX_EN_ETH_RMII_TX_EN>,
  126. <STM32F746_PA2_FUNC_ETH_MDIO>,
  127. <STM32F746_PC1_FUNC_ETH_MDC>,
  128. <STM32F746_PA1_FUNC_ETH_MII_RX_CLK_ETH_RMII_REF_CLK>,
  129. <STM32F746_PA7_FUNC_ETH_MII_RX_DV_ETH_RMII_CRS_DV>,
  130. <STM32F746_PC4_FUNC_ETH_MII_RXD0_ETH_RMII_RXD0>,
  131. <STM32F746_PC5_FUNC_ETH_MII_RXD1_ETH_RMII_RXD1>;
  132. slew-rate = <2>;
  133. };
  134. };
  135. qspi_pins: qspi@0{
  136. pins {
  137. pinmux = <STM32F746_PB2_FUNC_QUADSPI_CLK>,
  138. <STM32F746_PB6_FUNC_QUADSPI_BK1_NCS>,
  139. <STM32F746_PD11_FUNC_QUADSPI_BK1_IO0>,
  140. <STM32F746_PD12_FUNC_QUADSPI_BK1_IO1>,
  141. <STM32F746_PD13_FUNC_QUADSPI_BK1_IO3>,
  142. <STM32F746_PE2_FUNC_QUADSPI_BK1_IO2>;
  143. slew-rate = <2>;
  144. };
  145. };
  146. fmc_pins: fmc@0 {
  147. pins {
  148. pinmux = <STM32F746_PD10_FUNC_FMC_D15>,
  149. <STM32F746_PD9_FUNC_FMC_D14>,
  150. <STM32F746_PD8_FUNC_FMC_D13>,
  151. <STM32F746_PE15_FUNC_FMC_D12>,
  152. <STM32F746_PE14_FUNC_FMC_D11>,
  153. <STM32F746_PE13_FUNC_FMC_D10>,
  154. <STM32F746_PE12_FUNC_FMC_D9>,
  155. <STM32F746_PE11_FUNC_FMC_D8>,
  156. <STM32F746_PE10_FUNC_FMC_D7>,
  157. <STM32F746_PE9_FUNC_FMC_D6>,
  158. <STM32F746_PE8_FUNC_FMC_D5>,
  159. <STM32F746_PE7_FUNC_FMC_D4>,
  160. <STM32F746_PD1_FUNC_FMC_D3>,
  161. <STM32F746_PD0_FUNC_FMC_D2>,
  162. <STM32F746_PD15_FUNC_FMC_D1>,
  163. <STM32F746_PD14_FUNC_FMC_D0>,
  164. <STM32F746_PE1_FUNC_FMC_NBL1>,
  165. <STM32F746_PE0_FUNC_FMC_NBL0>,
  166. <STM32F746_PG5_FUNC_FMC_A15_FMC_BA1>,
  167. <STM32F746_PG4_FUNC_FMC_A14_FMC_BA0>,
  168. <STM32F746_PG1_FUNC_FMC_A11>,
  169. <STM32F746_PG0_FUNC_FMC_A10>,
  170. <STM32F746_PF15_FUNC_FMC_A9>,
  171. <STM32F746_PF14_FUNC_FMC_A8>,
  172. <STM32F746_PF13_FUNC_FMC_A7>,
  173. <STM32F746_PF12_FUNC_FMC_A6>,
  174. <STM32F746_PF5_FUNC_FMC_A5>,
  175. <STM32F746_PF4_FUNC_FMC_A4>,
  176. <STM32F746_PF3_FUNC_FMC_A3>,
  177. <STM32F746_PF2_FUNC_FMC_A2>,
  178. <STM32F746_PF1_FUNC_FMC_A1>,
  179. <STM32F746_PF0_FUNC_FMC_A0>,
  180. <STM32F746_PH3_FUNC_FMC_SDNE0>,
  181. <STM32F746_PH5_FUNC_FMC_SDNWE>,
  182. <STM32F746_PF11_FUNC_FMC_SDNRAS>,
  183. <STM32F746_PG15_FUNC_FMC_SDNCAS>,
  184. <STM32F746_PC3_FUNC_FMC_SDCKE0>,
  185. <STM32F746_PG8_FUNC_FMC_SDCLK>;
  186. slew-rate = <2>;
  187. };
  188. };
  189. };
  190. };
  191. };
  192. &systick {
  193. status = "okay";
  194. };