fu540-c000-u-boot.dtsi 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. // SPDX-License-Identifier: (GPL-2.0 OR MIT)
  2. /*
  3. * (C) Copyright 2019 SiFive, Inc
  4. */
  5. #include <dt-bindings/reset/sifive-fu540-prci.h>
  6. / {
  7. cpus {
  8. assigned-clocks = <&prci PRCI_CLK_COREPLL>;
  9. assigned-clock-rates = <1000000000>;
  10. u-boot,dm-spl;
  11. cpu0: cpu@0 {
  12. clocks = <&prci PRCI_CLK_COREPLL>;
  13. u-boot,dm-spl;
  14. status = "okay";
  15. cpu0_intc: interrupt-controller {
  16. u-boot,dm-spl;
  17. };
  18. };
  19. cpu1: cpu@1 {
  20. clocks = <&prci PRCI_CLK_COREPLL>;
  21. u-boot,dm-spl;
  22. cpu1_intc: interrupt-controller {
  23. u-boot,dm-spl;
  24. };
  25. };
  26. cpu2: cpu@2 {
  27. clocks = <&prci PRCI_CLK_COREPLL>;
  28. u-boot,dm-spl;
  29. cpu2_intc: interrupt-controller {
  30. u-boot,dm-spl;
  31. };
  32. };
  33. cpu3: cpu@3 {
  34. clocks = <&prci PRCI_CLK_COREPLL>;
  35. u-boot,dm-spl;
  36. cpu3_intc: interrupt-controller {
  37. u-boot,dm-spl;
  38. };
  39. };
  40. cpu4: cpu@4 {
  41. clocks = <&prci PRCI_CLK_COREPLL>;
  42. u-boot,dm-spl;
  43. cpu4_intc: interrupt-controller {
  44. u-boot,dm-spl;
  45. };
  46. };
  47. };
  48. soc {
  49. u-boot,dm-spl;
  50. otp: otp@10070000 {
  51. compatible = "sifive,fu540-c000-otp";
  52. reg = <0x0 0x10070000 0x0 0x1000>;
  53. fuse-count = <0x1000>;
  54. };
  55. clint: clint@2000000 {
  56. compatible = "riscv,clint0";
  57. interrupts-extended = <&cpu0_intc 3 &cpu0_intc 7
  58. &cpu1_intc 3 &cpu1_intc 7
  59. &cpu2_intc 3 &cpu2_intc 7
  60. &cpu3_intc 3 &cpu3_intc 7
  61. &cpu4_intc 3 &cpu4_intc 7>;
  62. reg = <0x0 0x2000000 0x0 0x10000>;
  63. u-boot,dm-spl;
  64. };
  65. prci: clock-controller@10000000 {
  66. #reset-cells = <1>;
  67. resets = <&prci PRCI_RST_DDR_CTRL_N>,
  68. <&prci PRCI_RST_DDR_AXI_N>,
  69. <&prci PRCI_RST_DDR_AHB_N>,
  70. <&prci PRCI_RST_DDR_PHY_N>,
  71. <&prci PRCI_RST_GEMGXL_N>;
  72. reset-names = "ddr_ctrl", "ddr_axi", "ddr_ahb",
  73. "ddr_phy", "gemgxl_reset";
  74. };
  75. dmc: dmc@100b0000 {
  76. compatible = "sifive,fu540-c000-ddr";
  77. reg = <0x0 0x100b0000 0x0 0x0800
  78. 0x0 0x100b2000 0x0 0x2000
  79. 0x0 0x100b8000 0x0 0x1000>;
  80. clocks = <&prci PRCI_CLK_DDRPLL>;
  81. clock-frequency = <933333324>;
  82. u-boot,dm-spl;
  83. };
  84. };
  85. };
  86. &prci {
  87. u-boot,dm-spl;
  88. };
  89. &uart0 {
  90. u-boot,dm-spl;
  91. };
  92. &qspi2 {
  93. u-boot,dm-spl;
  94. };
  95. &eth0 {
  96. assigned-clocks = <&prci PRCI_CLK_GEMGXLPLL>;
  97. assigned-clock-rates = <125000000>;
  98. };
  99. &l2cache {
  100. status = "okay";
  101. };