gemini-rut1xx.dts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Device Tree file for Teltonika RUT1xx
  4. */
  5. /dts-v1/;
  6. #include "gemini.dtsi"
  7. #include <dt-bindings/input/input.h>
  8. / {
  9. model = "Teltonika RUT1xx";
  10. compatible = "teltonika,rut1xx", "cortina,gemini";
  11. #address-cells = <1>;
  12. #size-cells = <1>;
  13. memory@0 { /* 128 MB */
  14. device_type = "memory";
  15. reg = <0x00000000 0x8000000>;
  16. };
  17. chosen {
  18. bootargs = "console=ttyS0,115200n8";
  19. stdout-path = &uart0;
  20. };
  21. gpio_keys {
  22. compatible = "gpio-keys";
  23. button-setup {
  24. debounce-interval = <100>;
  25. wakeup-source;
  26. linux,code = <KEY_SETUP>;
  27. label = "Reset to defaults";
  28. /* Conflict with TVC */
  29. gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
  30. };
  31. };
  32. leds {
  33. compatible = "gpio-leds";
  34. led-gsm {
  35. /* FIXME: add the LED color */
  36. label = "rut1xx::gsm";
  37. /* Conflict with ICE */
  38. gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
  39. default-state = "on";
  40. };
  41. led-power {
  42. /* FIXME: add the LED color */
  43. label = "rut1xx::power";
  44. /* Conflict with NAND CE0 */
  45. gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>;
  46. default-state = "off";
  47. linux,default-trigger = "heartbeat";
  48. };
  49. };
  50. mdio0: mdio {
  51. compatible = "virtual,mdio-gpio";
  52. gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
  53. <&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
  54. #address-cells = <1>;
  55. #size-cells = <0>;
  56. phy0: ethernet-phy@1 {
  57. reg = <1>;
  58. device_type = "ethernet-phy";
  59. };
  60. };
  61. soc {
  62. flash@30000000 {
  63. status = "okay";
  64. /* 8MB of flash */
  65. reg = <0x30000000 0x00800000>;
  66. /* TODO: add flash partitions here */
  67. };
  68. syscon: syscon@40000000 {
  69. pinctrl {
  70. /*
  71. * gpio0bgrp cover line 7 used by GSM LED
  72. * gpio0fgrp cover line 17 used by power LED
  73. */
  74. gpio0_default_pins: pinctrl-gpio0 {
  75. mux {
  76. function = "gpio0";
  77. groups = "gpio0bgrp",
  78. "gpio0fgrp";
  79. };
  80. };
  81. /*
  82. * gpio1dgrp cover line 28-31 otherwise used
  83. * by TVC.
  84. */
  85. gpio1_default_pins: pinctrl-gpio1 {
  86. mux {
  87. function = "gpio1";
  88. groups = "gpio1dgrp";
  89. };
  90. };
  91. };
  92. };
  93. gpio0: gpio@4d000000 {
  94. pinctrl-names = "default";
  95. pinctrl-0 = <&gpio0_default_pins>;
  96. };
  97. gpio1: gpio@4e000000 {
  98. pinctrl-names = "default";
  99. pinctrl-0 = <&gpio1_default_pins>;
  100. };
  101. ethernet@60000000 {
  102. status = "okay";
  103. ethernet-port@0 {
  104. phy-mode = "rgmii";
  105. phy-handle = <&phy0>;
  106. };
  107. ethernet-port@1 {
  108. /* Not used in this platform */
  109. };
  110. };
  111. usb@68000000 {
  112. status = "okay";
  113. };
  114. usb@69000000 {
  115. status = "okay";
  116. };
  117. };
  118. };