1 // SPDX-License-Identifier: GPL-2.0
3 * Device Tree file for D-Link DNS-313 1-Bay Network Storage Enclosure
9 #include <dt-bindings/input/input.h>
10 #include <dt-bindings/thermal/thermal.h>
13 model = "D-Link DNS-313 1-Bay Network Storage Enclosure";
14 compatible = "dlink,dir-313", "cortina,gemini";
19 /* 64 MB SDRAM in a Nanya NT5DS32M16BS-6K package */
20 device_type = "memory";
21 reg = <0x00000000 0x4000000>;
29 stdout-path = "uart0:19200n8";
33 compatible = "gpio-keys";
37 debounce_interval = <50>;
39 linux,code = <KEY_ESC>;
41 gpios = <&gpio1 31 GPIO_ACTIVE_LOW>;
46 compatible = "gpio-leds";
48 label = "dns313:blue:power";
49 gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>;
51 linux,default-trigger = "heartbeat";
54 label = "dns313:blue:disk";
55 gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
56 default-state = "off";
59 label = "dns313:green:disk";
60 gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>;
61 default-state = "off";
62 linux,default-trigger = "ide-disk";
63 /* Ideally should activate while reading */
66 label = "dns313:red:disk";
67 gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
68 default-state = "off";
69 /* Ideally should activate while writing */
74 * This is a ADDA AD0405GB-G73 fan @3000 and 6000 RPM.
77 compatible = "gpio-fan";
78 gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>,
79 <&gpio0 12 GPIO_ACTIVE_HIGH>;
80 gpio-fan,speed-map = <0 0>, <3000 1>, <6000 2>;
85 /* Global Mixed-Mode Technology G751 mounted on GPIO I2C */
87 compatible = "i2c-gpio";
88 sda-gpios = <&gpio0 15 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
89 scl-gpios = <&gpio0 16 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
93 g751: temperature-sensor@48 {
94 compatible = "gmt,g751";
96 #thermal-sensor-cells = <0>;
102 /* Poll every 20 seconds */
103 polling-delay = <20000>;
104 /* Poll every 2nd second when cooling */
105 polling-delay-passive = <2000>;
107 thermal-sensors = <&g751>;
109 /* Tripping points from the fan.script in the rootfs */
111 chassis_alert0: chassis-alert0 {
112 /* At 43 degrees turn on low speed */
113 temperature = <43000>;
117 chassis_alert1: chassis-alert1 {
118 /* At 47 degrees turn on high speed */
119 temperature = <47000>;
123 chassis_crit: chassis-crit {
124 /* Just shut down at 60 degrees */
125 temperature = <60000>;
133 trip = <&chassis_alert0>;
134 cooling-device = <&fan0 1 1>;
137 trip = <&chassis_alert1>;
138 cooling-device = <&fan0 2 2>;
144 mdio0: ethernet-phy {
145 compatible = "virtual,mdio-gpio";
146 /* Uses MDC and MDIO */
147 gpios = <&gpio0 22 GPIO_ACTIVE_HIGH>, /* MDC */
148 <&gpio0 21 GPIO_ACTIVE_HIGH>; /* MDIO */
149 #address-cells = <1>;
152 /* This is a Realtek RTL8211B Gigabit ethernet transceiver */
153 phy0: ethernet-phy@1 {
155 device_type = "ethernet-phy";
163 reg = <0x30000000 0x00080000>;
166 * This "RedBoot" is the Storlink derivative.
170 reg = <0x00000000 0x00040000>;
175 reg = <0x00040000 0x00020000>;
180 reg = <0x00060000 0x00020000>;
185 syscon: syscon@40000000 {
189 gpio0_default_pins: pinctrl-gpio0 {
193 /* Used by LEDs conflicts ICE */
195 /* Used by ? conflicts ICE */
198 * Used by fan & G751, conflicts LPC,
199 * UART modem lines, SSP
208 gpio1_default_pins: pinctrl-gpio1 {
211 /* Used by "reset" button */
212 groups = "gpio1dgrp";
218 groups = "gmii_gmac0_grp";
221 * In the vendor Linux tree, these values are set for the C3
222 * version of the SL3512 ASIC with the comment "benson suggest"
225 pins = "R8 GMAC0 RXDV", "U11 GMAC1 RXDV";
229 pins = "T8 GMAC0 RXC";
233 pins = "T11 GMAC1 RXC";
237 pins = "P8 GMAC0 TXEN", "V11 GMAC1 TXEN";
241 pins = "V7 GMAC0 TXC", "P10 GMAC1 TXC";
245 /* The data lines all have default skew */
246 pins = "U8 GMAC0 RXD0", "V8 GMAC0 RXD1",
247 "P9 GMAC0 RXD2", "R9 GMAC0 RXD3",
248 "R11 GMAC1 RXD0", "P11 GMAC1 RXD1",
249 "V12 GMAC1 RXD2", "U12 GMAC1 RXD3",
250 "R10 GMAC1 TXD0", "T10 GMAC1 TXD1",
251 "U10 GMAC1 TXD2", "V10 GMAC1 TXD3";
255 pins = "U7 GMAC0 TXD0", "T7 GMAC0 TXD1",
256 "R7 GMAC0 TXD2", "P7 GMAC0 TXD3";
259 /* Set up drive strength on GMAC0 to 16 mA */
261 groups = "gmii_gmac0_grp";
262 drive-strength = <16>;
268 sata: sata@46000000 {
269 /* The ROM uses this muxmode */
270 cortina,gemini-ata-muxmode = <0>;
271 cortina,gemini-enable-sata-bridge;
275 gpio0: gpio@4d000000 {
276 pinctrl-names = "default";
277 pinctrl-0 = <&gpio0_default_pins>;
280 gpio1: gpio@4e000000 {
281 pinctrl-names = "default";
282 pinctrl-0 = <&gpio1_default_pins>;
290 phy-handle = <&phy0>;
293 /* Not used in this platform */