armada-xp-theadorable.dts 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. /*
  2. * Device Tree file for Marvell Armada XP theadorable board
  3. *
  4. * Copyright (C) 2013-2014 Marvell
  5. *
  6. * Lior Amsalem <alior@marvell.com>
  7. * Gregory CLEMENT <gregory.clement@free-electrons.com>
  8. * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  9. *
  10. * This file is dual-licensed: you can use it either under the terms
  11. * of the GPL or the X11 license, at your option. Note that this dual
  12. * licensing only applies to this file, and not this project as a
  13. * whole.
  14. *
  15. * a) This file is free software; you can redistribute it and/or
  16. * modify it under the terms of the GNU General Public License as
  17. * published by the Free Software Foundation; either version 2 of the
  18. * License, or (at your option) any later version.
  19. *
  20. * This file is distributed in the hope that it will be useful
  21. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  22. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  23. * GNU General Public License for more details.
  24. *
  25. * Or, alternatively
  26. *
  27. * b) Permission is hereby granted, free of charge, to any person
  28. * obtaining a copy of this software and associated documentation
  29. * files (the "Software"), to deal in the Software without
  30. * restriction, including without limitation the rights to use
  31. * copy, modify, merge, publish, distribute, sublicense, and/or
  32. * sell copies of the Software, and to permit persons to whom the
  33. * Software is furnished to do so, subject to the following
  34. * conditions:
  35. *
  36. * The above copyright notice and this permission notice shall be
  37. * included in all copies or substantial portions of the Software.
  38. *
  39. * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
  40. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  41. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  42. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  43. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
  44. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  45. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  46. * OTHER DEALINGS IN THE SOFTWARE.
  47. *
  48. * Note: this Device Tree assumes that the bootloader has remapped the
  49. * internal registers to 0xf1000000 (instead of the default
  50. * 0xd0000000). The 0xf1000000 is the default used by the recent,
  51. * DT-capable, U-Boot bootloaders provided by Marvell. Some earlier
  52. * boards were delivered with an older version of the bootloader that
  53. * left internal registers mapped at 0xd0000000. If you are in this
  54. * situation, you should either update your bootloader (preferred
  55. * solution) or the below Device Tree should be adjusted.
  56. */
  57. /dts-v1/;
  58. #include <dt-bindings/gpio/gpio.h>
  59. #include "armada-xp-mv78260.dtsi"
  60. / {
  61. model = "Marvell Armada XP theadorable";
  62. compatible = "marvell,armadaxp-mv78260", "marvell,armadaxp", "marvell,armada-370-xp";
  63. chosen {
  64. stdout-path = "serial0:115200n8";
  65. };
  66. aliases {
  67. spi0 = &spi0;
  68. spi1 = &spi1;
  69. ethernet0 = &eth0;
  70. };
  71. memory {
  72. device_type = "memory";
  73. reg = <0x00000000 0x00000000 0x00000000 0x80000000>;
  74. };
  75. soc {
  76. ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xf1000000 0x100000
  77. MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000
  78. MBUS_ID(0x01, 0x2f) 0 0 0xf0000000 0x1000000>;
  79. internal-regs {
  80. serial@12000 {
  81. status = "okay";
  82. u-boot,dm-pre-reloc;
  83. };
  84. serial@12100 {
  85. status = "okay";
  86. };
  87. serial@12200 {
  88. status = "okay";
  89. };
  90. serial@12300 {
  91. status = "okay";
  92. };
  93. sata@a0000 {
  94. nr-ports = <2>;
  95. status = "okay";
  96. };
  97. mdio {
  98. phy0: ethernet-phy@0 {
  99. reg = <0>;
  100. };
  101. };
  102. ethernet@70000 {
  103. status = "okay";
  104. phy = <&phy0>;
  105. phy-mode = "sgmii";
  106. };
  107. usb@50000 {
  108. status = "okay";
  109. };
  110. usb@51000 {
  111. status = "okay";
  112. };
  113. spi0: spi@10600 {
  114. status = "okay";
  115. u-boot,dm-pre-reloc;
  116. spi-flash@0 {
  117. u-boot,dm-pre-reloc;
  118. #address-cells = <1>;
  119. #size-cells = <1>;
  120. compatible = "n25q128a13", "jedec,spi-nor";
  121. reg = <0>; /* Chip select 0 */
  122. spi-max-frequency = <27777777>;
  123. };
  124. fpga@1 {
  125. #address-cells = <1>;
  126. #size-cells = <1>;
  127. compatible = "spi-generic-device";
  128. reg = <1>; /* Chip select 1 */
  129. spi-max-frequency = <27777777>;
  130. };
  131. };
  132. spi1: spi@10680 {
  133. status = "okay";
  134. fpga@2 {
  135. #address-cells = <1>;
  136. #size-cells = <1>;
  137. compatible = "spi-generic-device";
  138. reg = <2>; /* Chip select 2 */
  139. spi-max-frequency = <27777777>;
  140. };
  141. };
  142. };
  143. };
  144. };