0001 // SPDX-License-Identifier: GPL-2.0
0002 /*
0003 * Device Tree file for Teltonika RUT1xx
0004 */
0005
0006 /dts-v1/;
0007
0008 #include "gemini.dtsi"
0009 #include <dt-bindings/input/input.h>
0010
0011 / {
0012 model = "Teltonika RUT1xx";
0013 compatible = "teltonika,rut1xx", "cortina,gemini";
0014 #address-cells = <1>;
0015 #size-cells = <1>;
0016
0017 memory@0 { /* 128 MB */
0018 device_type = "memory";
0019 reg = <0x00000000 0x8000000>;
0020 };
0021
0022 chosen {
0023 bootargs = "console=ttyS0,115200n8";
0024 stdout-path = &uart0;
0025 };
0026
0027 gpio_keys {
0028 compatible = "gpio-keys";
0029
0030 button-setup {
0031 debounce-interval = <100>;
0032 wakeup-source;
0033 linux,code = <KEY_SETUP>;
0034 label = "Reset to defaults";
0035 /* Conflict with TVC */
0036 gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
0037 };
0038 };
0039
0040 leds {
0041 compatible = "gpio-leds";
0042 led-gsm {
0043 /* FIXME: add the LED color */
0044 label = "rut1xx::gsm";
0045 /* Conflict with ICE */
0046 gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
0047 default-state = "on";
0048 };
0049 led-power {
0050 /* FIXME: add the LED color */
0051 label = "rut1xx::power";
0052 /* Conflict with NAND CE0 */
0053 gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>;
0054 default-state = "off";
0055 linux,default-trigger = "heartbeat";
0056 };
0057 };
0058
0059 mdio0: mdio {
0060 compatible = "virtual,mdio-gpio";
0061 gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
0062 <&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
0063 #address-cells = <1>;
0064 #size-cells = <0>;
0065
0066 phy0: ethernet-phy@1 {
0067 reg = <1>;
0068 device_type = "ethernet-phy";
0069 };
0070 };
0071
0072 soc {
0073 flash@30000000 {
0074 status = "okay";
0075 /* 8MB of flash */
0076 reg = <0x30000000 0x00800000>;
0077 /* TODO: add flash partitions here */
0078 };
0079
0080 syscon: syscon@40000000 {
0081 pinctrl {
0082 /*
0083 * gpio0bgrp cover line 7 used by GSM LED
0084 * gpio0fgrp cover line 17 used by power LED
0085 */
0086 gpio0_default_pins: pinctrl-gpio0 {
0087 mux {
0088 function = "gpio0";
0089 groups = "gpio0bgrp",
0090 "gpio0fgrp";
0091 };
0092 };
0093 /*
0094 * gpio1dgrp cover line 28-31 otherwise used
0095 * by TVC.
0096 */
0097 gpio1_default_pins: pinctrl-gpio1 {
0098 mux {
0099 function = "gpio1";
0100 groups = "gpio1dgrp";
0101 };
0102 };
0103 };
0104 };
0105
0106 gpio0: gpio@4d000000 {
0107 pinctrl-names = "default";
0108 pinctrl-0 = <&gpio0_default_pins>;
0109 };
0110
0111 gpio1: gpio@4e000000 {
0112 pinctrl-names = "default";
0113 pinctrl-0 = <&gpio1_default_pins>;
0114 };
0115
0116 ethernet@60000000 {
0117 status = "okay";
0118
0119 ethernet-port@0 {
0120 phy-mode = "rgmii";
0121 phy-handle = <&phy0>;
0122 };
0123 ethernet-port@1 {
0124 /* Not used in this platform */
0125 };
0126 };
0127
0128 usb@68000000 {
0129 status = "okay";
0130 };
0131
0132 usb@69000000 {
0133 status = "okay";
0134 };
0135 };
0136 };