brcm,bcm6338.dtsi 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /*
  3. * Copyright (C) 2017 Álvaro Fernández Rojas <noltari@gmail.com>
  4. */
  5. #include <dt-bindings/clock/bcm6338-clock.h>
  6. #include <dt-bindings/gpio/gpio.h>
  7. #include <dt-bindings/reset/bcm6338-reset.h>
  8. #include "skeleton.dtsi"
  9. / {
  10. compatible = "brcm,bcm6338";
  11. aliases {
  12. spi0 = &spi;
  13. };
  14. cpus {
  15. reg = <0xfffe0000 0x4>;
  16. #address-cells = <1>;
  17. #size-cells = <0>;
  18. u-boot,dm-pre-reloc;
  19. cpu@0 {
  20. compatible = "brcm,bcm6338-cpu", "mips,mips4Kc";
  21. device_type = "cpu";
  22. reg = <0>;
  23. u-boot,dm-pre-reloc;
  24. };
  25. };
  26. clocks {
  27. compatible = "simple-bus";
  28. #address-cells = <1>;
  29. #size-cells = <1>;
  30. u-boot,dm-pre-reloc;
  31. periph_osc: periph-osc {
  32. compatible = "fixed-clock";
  33. #clock-cells = <0>;
  34. clock-frequency = <50000000>;
  35. u-boot,dm-pre-reloc;
  36. };
  37. periph_clk: periph-clk {
  38. compatible = "brcm,bcm6345-clk";
  39. reg = <0xfffe0004 0x4>;
  40. #clock-cells = <1>;
  41. };
  42. };
  43. pflash: nor@1fc00000 {
  44. compatible = "cfi-flash";
  45. reg = <0x1fc00000 0x400000>;
  46. bank-width = <2>;
  47. #address-cells = <1>;
  48. #size-cells = <1>;
  49. status = "disabled";
  50. };
  51. ubus {
  52. compatible = "simple-bus";
  53. #address-cells = <1>;
  54. #size-cells = <1>;
  55. u-boot,dm-pre-reloc;
  56. pll_cntl: syscon@fffe0008 {
  57. compatible = "syscon";
  58. reg = <0xfffe0008 0x4>;
  59. };
  60. syscon-reboot {
  61. compatible = "syscon-reboot";
  62. regmap = <&pll_cntl>;
  63. offset = <0x0>;
  64. mask = <0x1>;
  65. };
  66. periph_rst: reset-controller@fffe0028 {
  67. compatible = "brcm,bcm6345-reset";
  68. reg = <0xfffe0028 0x4>;
  69. #reset-cells = <1>;
  70. };
  71. wdt: watchdog@fffe021c {
  72. compatible = "brcm,bcm6345-wdt";
  73. reg = <0xfffe021c 0xc>;
  74. clocks = <&periph_osc>;
  75. };
  76. wdt-reboot {
  77. compatible = "wdt-reboot";
  78. wdt = <&wdt>;
  79. };
  80. uart0: serial@fffe0300 {
  81. compatible = "brcm,bcm6345-uart";
  82. reg = <0xfffe0300 0x18>;
  83. clocks = <&periph_osc>;
  84. status = "disabled";
  85. };
  86. gpio: gpio-controller@fffe0404 {
  87. compatible = "brcm,bcm6345-gpio";
  88. reg = <0xfffe0404 0x4>, <0xfffe040c 0x4>;
  89. gpio-controller;
  90. #gpio-cells = <2>;
  91. ngpios = <8>;
  92. status = "disabled";
  93. };
  94. spi: spi@fffe0c00 {
  95. compatible = "brcm,bcm6348-spi";
  96. reg = <0xfffe0c00 0xc0>;
  97. #address-cells = <1>;
  98. #size-cells = <0>;
  99. clocks = <&periph_clk BCM6338_CLK_SPI>;
  100. resets = <&periph_rst BCM6338_RST_SPI>;
  101. spi-max-frequency = <20000000>;
  102. num-cs = <4>;
  103. status = "disabled";
  104. };
  105. memory-controller@fffe3100 {
  106. compatible = "brcm,bcm6338-mc";
  107. reg = <0xfffe3100 0x38>;
  108. u-boot,dm-pre-reloc;
  109. };
  110. };
  111. };