armada-ap810-ap0.dtsi 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Copyright (C) 2017 Marvell Technology Group Ltd.
  4. *
  5. * Device Tree file for Marvell Armada AP810.
  6. */
  7. #include <dt-bindings/interrupt-controller/arm-gic.h>
  8. /dts-v1/;
  9. / {
  10. model = "Marvell Armada AP810";
  11. compatible = "marvell,armada-ap810";
  12. #address-cells = <2>;
  13. #size-cells = <2>;
  14. aliases {
  15. serial0 = &uart0_ap0;
  16. serial1 = &uart1_ap0;
  17. };
  18. psci {
  19. compatible = "arm,psci-0.2";
  20. method = "smc";
  21. };
  22. ap810-ap0 {
  23. #address-cells = <2>;
  24. #size-cells = <2>;
  25. compatible = "simple-bus";
  26. interrupt-parent = <&gic>;
  27. ranges;
  28. config-space@e8000000 {
  29. #address-cells = <1>;
  30. #size-cells = <1>;
  31. compatible = "simple-bus";
  32. ranges = <0x0 0x0 0xe8000000 0x4000000>;
  33. interrupt-parent = <&gic>;
  34. gic: interrupt-controller@3000000 {
  35. compatible = "arm,gic-v3";
  36. #interrupt-cells = <3>;
  37. #address-cells = <1>;
  38. #size-cells = <1>;
  39. interrupt-controller;
  40. interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
  41. ranges;
  42. reg = <0x3000000 0x10000>, /* GICD */
  43. <0x3060000 0x100000>, /* GICR */
  44. <0x00c0000 0x2000>, /* GICC */
  45. <0x00d0000 0x1000>, /* GICH */
  46. <0x00e0000 0x2000>; /* GICV */
  47. gic_its_ap0: interrupt-controller@3040000 {
  48. compatible = "arm,gic-v3-its";
  49. msi-controller;
  50. #msi-cells = <1>;
  51. reg = <0x3040000 0x20000>;
  52. };
  53. };
  54. timer {
  55. compatible = "arm,armv8-timer";
  56. interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
  57. <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
  58. <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
  59. <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
  60. };
  61. xor@400000 {
  62. compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
  63. reg = <0x400000 0x1000>,
  64. <0x410000 0x1000>;
  65. msi-parent = <&gic_its_ap0 0xa0>;
  66. dma-coherent;
  67. };
  68. xor@420000 {
  69. compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
  70. reg = <0x420000 0x1000>,
  71. <0x430000 0x1000>;
  72. msi-parent = <&gic_its_ap0 0xa1>;
  73. dma-coherent;
  74. };
  75. xor@440000 {
  76. compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
  77. reg = <0x440000 0x1000>,
  78. <0x450000 0x1000>;
  79. msi-parent = <&gic_its_ap0 0xa2>;
  80. dma-coherent;
  81. };
  82. xor@460000 {
  83. compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
  84. reg = <0x460000 0x1000>,
  85. <0x470000 0x1000>;
  86. msi-parent = <&gic_its_ap0 0xa3>;
  87. dma-coherent;
  88. };
  89. uart0_ap0: serial@512000 {
  90. compatible = "snps,dw-apb-uart";
  91. reg = <0x512000 0x100>;
  92. reg-shift = <2>;
  93. interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
  94. reg-io-width = <1>;
  95. status = "disabled";
  96. };
  97. uart1_ap0: serial@512100 {
  98. compatible = "snps,dw-apb-uart";
  99. reg = <0x512100 0x100>;
  100. reg-shift = <2>;
  101. interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
  102. reg-io-width = <1>;
  103. status = "disabled";
  104. };
  105. };
  106. };
  107. };