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