xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/armada-385-clearfog-gtr.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Device Tree file for Clearfog GTR machines rev 1.0 (88F6825)
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun *  Rabeeh Khoury <rabeeh@solid-run.com>, based on Russell King clearfog work
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun/*
9*4882a593Smuzhiyun	SERDES mapping -
10*4882a593Smuzhiyun	0. SATA1 on CON18, or optionally mini PCIe CON3 - PCIe0
11*4882a593Smuzhiyun	1. 6141 switch (2.5Gbps capable)
12*4882a593Smuzhiyun	2. SATA0 on CON17, or optionally mini PCIe CON4 - PCIe1
13*4882a593Smuzhiyun	3. USB 3.0 Host
14*4882a593Smuzhiyun	4. mini PCIe CON2 - PCIe2
15*4882a593Smuzhiyun	5. SFP connector, or optionally SGMII Ethernet 1512 PHY
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun	USB 2.0 mapping -
18*4882a593Smuzhiyun	0. USB 2.0 - 0 USB pins header CON12
19*4882a593Smuzhiyun	1. USB 2.0 - 1 mini PCIe CON2
20*4882a593Smuzhiyun	2. USB 2.0 - 2 to USB 3.0 connector (used with SERDES #3)
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	Pin mapping -
23*4882a593Smuzhiyun	0,1 - console UART
24*4882a593Smuzhiyun	2,3 - I2C0 - connected to I2C EEPROM, two temperature sensors,
25*4882a593Smuzhiyun	      front panel and PSE controller
26*4882a593Smuzhiyun	4,5 - MDC/MDIO
27*4882a593Smuzhiyun	6..17 - RGMII
28*4882a593Smuzhiyun	18 - Topaz switch reset (active low)
29*4882a593Smuzhiyun	19 - 1512 phy reset
30*4882a593Smuzhiyun	20 - 1512 phy reset (eth2, optional)
31*4882a593Smuzhiyun	21,28,37,38,39,40 - SD0
32*4882a593Smuzhiyun	22 - USB 3.0 current limiter enable (active high)
33*4882a593Smuzhiyun	24 - SFP TX fault (input active high)
34*4882a593Smuzhiyun	25 - SFP present (input active low)
35*4882a593Smuzhiyun	26,27 - I2C1 - connected to SFP
36*4882a593Smuzhiyun	29 - Fan PWM
37*4882a593Smuzhiyun	30 - CON4 mini PCIe wifi disable
38*4882a593Smuzhiyun	31 - CON3 mini PCIe wifi disable
39*4882a593Smuzhiyun	32 - Fuse programming power toggle (1.8v)
40*4882a593Smuzhiyun	33 - CON4 mini PCIe reset
41*4882a593Smuzhiyun	34 - CON2 mini PCIe wifi disable
42*4882a593Smuzhiyun	35 - CON3 mini PCIe reset
43*4882a593Smuzhiyun	36 - Rear button (GPIO active low)
44*4882a593Smuzhiyun	41 - CON1 front panel connector
45*4882a593Smuzhiyun	42 - Front LED1, or front panel CON1
46*4882a593Smuzhiyun	43 - Micron L-PBGA 24 ball SPI (1Gb) CS, or TPM SPI CS
47*4882a593Smuzhiyun	44 - CON2 mini PCIe reset
48*4882a593Smuzhiyun	45 - TPM PIRQ signal, or front panel CON1
49*4882a593Smuzhiyun	46 - SFP TX disable
50*4882a593Smuzhiyun	47 - Control isolation of boot sensitive SAR signals
51*4882a593Smuzhiyun	48 - PSE reset
52*4882a593Smuzhiyun	49 - PSE OSS signal
53*4882a593Smuzhiyun	50 - PSE interrupt
54*4882a593Smuzhiyun	52 - Front LED2, or front panel
55*4882a593Smuzhiyun	53 - Front button
56*4882a593Smuzhiyun	54 - SFP LOS (input active high)
57*4882a593Smuzhiyun	55 - Fan sense
58*4882a593Smuzhiyun	56(mosi),57(clk),58(miso) - SPI interface - 32Mb SPI, 1Gb SPI and TPM
59*4882a593Smuzhiyun	59 - SPI 32Mb W25Q32BVZPIG CS0 chip select (bootable)
60*4882a593Smuzhiyun*/
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun/dts-v1/;
63*4882a593Smuzhiyun#include <dt-bindings/input/input.h>
64*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
65*4882a593Smuzhiyun#include <dt-bindings/leds/common.h>
66*4882a593Smuzhiyun#include "armada-385.dtsi"
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun/ {
69*4882a593Smuzhiyun	compatible = "marvell,armada385", "marvell,armada380";
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun	aliases {
72*4882a593Smuzhiyun		/* So that mvebu u-boot can update the MAC addresses */
73*4882a593Smuzhiyun		ethernet1 = &eth0;
74*4882a593Smuzhiyun		ethernet2 = &eth1;
75*4882a593Smuzhiyun		ethernet3 = &eth2;
76*4882a593Smuzhiyun		i2c0 = &i2c0;
77*4882a593Smuzhiyun		i2c1 = &i2c1;
78*4882a593Smuzhiyun	};
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun	chosen {
81*4882a593Smuzhiyun		stdout-path = "serial0:115200n8";
82*4882a593Smuzhiyun	};
83*4882a593Smuzhiyun
84*4882a593Smuzhiyun	memory {
85*4882a593Smuzhiyun		device_type = "memory";
86*4882a593Smuzhiyun		reg = <0x00000000 0x10000000>; /* 256 MB */
87*4882a593Smuzhiyun	};
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun	reg_3p3v: regulator-3p3v {
90*4882a593Smuzhiyun		compatible = "regulator-fixed";
91*4882a593Smuzhiyun		regulator-name = "3P3V";
92*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
93*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
94*4882a593Smuzhiyun		regulator-always-on;
95*4882a593Smuzhiyun	};
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun	reg_5p0v: regulator-5p0v {
98*4882a593Smuzhiyun		compatible = "regulator-fixed";
99*4882a593Smuzhiyun		regulator-name = "5P0V";
100*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
101*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
102*4882a593Smuzhiyun		regulator-always-on;
103*4882a593Smuzhiyun	};
104*4882a593Smuzhiyun
105*4882a593Smuzhiyun	v_usb3_con: regulator-v-usb3-con {
106*4882a593Smuzhiyun		compatible = "regulator-fixed";
107*4882a593Smuzhiyun		gpio = <&gpio0 22 GPIO_ACTIVE_LOW>;
108*4882a593Smuzhiyun		pinctrl-names = "default";
109*4882a593Smuzhiyun		pinctrl-0 = <&cf_gtr_usb3_con_vbus>;
110*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
111*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
112*4882a593Smuzhiyun		regulator-name = "v_usb3_con";
113*4882a593Smuzhiyun		vin-supply = <&reg_5p0v>;
114*4882a593Smuzhiyun		regulator-boot-on;
115*4882a593Smuzhiyun		regulator-always-on;
116*4882a593Smuzhiyun	};
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun	soc {
119*4882a593Smuzhiyun		ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
120*4882a593Smuzhiyun			  MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000
121*4882a593Smuzhiyun			  MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000
122*4882a593Smuzhiyun			  MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000
123*4882a593Smuzhiyun			  MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>;
124*4882a593Smuzhiyun
125*4882a593Smuzhiyun		internal-regs {
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun			rtc@a3800 {
128*4882a593Smuzhiyun				status = "okay";
129*4882a593Smuzhiyun			};
130*4882a593Smuzhiyun
131*4882a593Smuzhiyun			i2c@11000 { /* ROM, temp sensor and front panel */
132*4882a593Smuzhiyun				pinctrl-0 = <&i2c0_pins>;
133*4882a593Smuzhiyun				pinctrl-names = "default";
134*4882a593Smuzhiyun				status = "okay";
135*4882a593Smuzhiyun			};
136*4882a593Smuzhiyun
137*4882a593Smuzhiyun			i2c@11100 { /* SFP (CON5/CON6) */
138*4882a593Smuzhiyun				pinctrl-0 = <&cf_gtr_i2c1_pins>;
139*4882a593Smuzhiyun				pinctrl-names = "default";
140*4882a593Smuzhiyun				status = "okay";
141*4882a593Smuzhiyun			};
142*4882a593Smuzhiyun
143*4882a593Smuzhiyun			pinctrl@18000 {
144*4882a593Smuzhiyun				cf_gtr_switch_reset_pins: cf-gtr-switch-reset-pins {
145*4882a593Smuzhiyun					marvell,pins = "mpp18";
146*4882a593Smuzhiyun					marvell,function = "gpio";
147*4882a593Smuzhiyun				};
148*4882a593Smuzhiyun
149*4882a593Smuzhiyun				cf_gtr_usb3_con_vbus: cf-gtr-usb3-con-vbus {
150*4882a593Smuzhiyun					marvell,pins = "mpp22";
151*4882a593Smuzhiyun					marvell,function = "gpio";
152*4882a593Smuzhiyun				};
153*4882a593Smuzhiyun
154*4882a593Smuzhiyun				cf_gtr_fan_pwm: cf-gtr-fan-pwm {
155*4882a593Smuzhiyun					marvell,pins = "mpp23";
156*4882a593Smuzhiyun					marvell,function = "gpio";
157*4882a593Smuzhiyun				};
158*4882a593Smuzhiyun
159*4882a593Smuzhiyun				cf_gtr_i2c1_pins: i2c1-pins {
160*4882a593Smuzhiyun					/* SFP */
161*4882a593Smuzhiyun					marvell,pins = "mpp26", "mpp27";
162*4882a593Smuzhiyun					marvell,function = "i2c1";
163*4882a593Smuzhiyun				};
164*4882a593Smuzhiyun
165*4882a593Smuzhiyun				cf_gtr_sdhci_pins: cf-gtr-sdhci-pins {
166*4882a593Smuzhiyun					marvell,pins = "mpp21", "mpp28",
167*4882a593Smuzhiyun						       "mpp37", "mpp38",
168*4882a593Smuzhiyun						       "mpp39", "mpp40";
169*4882a593Smuzhiyun					marvell,function = "sd0";
170*4882a593Smuzhiyun				};
171*4882a593Smuzhiyun
172*4882a593Smuzhiyun				cf_gtr_isolation_pins: cf-gtr-isolation-pins {
173*4882a593Smuzhiyun					marvell,pins = "mpp47";
174*4882a593Smuzhiyun					marvell,function = "gpio";
175*4882a593Smuzhiyun				};
176*4882a593Smuzhiyun
177*4882a593Smuzhiyun				cf_gtr_poe_reset_pins: cf-gtr-poe-reset-pins {
178*4882a593Smuzhiyun					marvell,pins = "mpp48";
179*4882a593Smuzhiyun					marvell,function = "gpio";
180*4882a593Smuzhiyun				};
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun				cf_gtr_spi1_cs_pins: spi1-cs-pins {
183*4882a593Smuzhiyun					marvell,pins = "mpp59";
184*4882a593Smuzhiyun					marvell,function = "spi1";
185*4882a593Smuzhiyun				};
186*4882a593Smuzhiyun
187*4882a593Smuzhiyun				cf_gtr_front_button_pins: cf-gtr-front-button-pins {
188*4882a593Smuzhiyun					marvell,pins = "mpp53";
189*4882a593Smuzhiyun					marvell,function = "gpio";
190*4882a593Smuzhiyun				};
191*4882a593Smuzhiyun
192*4882a593Smuzhiyun				cf_gtr_rear_button_pins: cf-gtr-rear-button-pins {
193*4882a593Smuzhiyun					marvell,pins = "mpp36";
194*4882a593Smuzhiyun					marvell,function = "gpio";
195*4882a593Smuzhiyun				};
196*4882a593Smuzhiyun			};
197*4882a593Smuzhiyun
198*4882a593Smuzhiyun			sdhci@d8000 {
199*4882a593Smuzhiyun				bus-width = <4>;
200*4882a593Smuzhiyun				no-1-8-v;
201*4882a593Smuzhiyun				non-removable;
202*4882a593Smuzhiyun				pinctrl-0 = <&cf_gtr_sdhci_pins>;
203*4882a593Smuzhiyun				pinctrl-names = "default";
204*4882a593Smuzhiyun				status = "okay";
205*4882a593Smuzhiyun				vmmc = <&reg_3p3v>;
206*4882a593Smuzhiyun				wp-inverted;
207*4882a593Smuzhiyun			};
208*4882a593Smuzhiyun
209*4882a593Smuzhiyun			usb@58000 {
210*4882a593Smuzhiyun				status = "okay";
211*4882a593Smuzhiyun			};
212*4882a593Smuzhiyun
213*4882a593Smuzhiyun			usb3@f0000 {
214*4882a593Smuzhiyun				status = "okay";
215*4882a593Smuzhiyun			};
216*4882a593Smuzhiyun
217*4882a593Smuzhiyun			usb3@f8000 {
218*4882a593Smuzhiyun				vbus-supply = <&v_usb3_con>;
219*4882a593Smuzhiyun				status = "okay";
220*4882a593Smuzhiyun			};
221*4882a593Smuzhiyun		};
222*4882a593Smuzhiyun
223*4882a593Smuzhiyun		pcie {
224*4882a593Smuzhiyun			status = "okay";
225*4882a593Smuzhiyun			/*
226*4882a593Smuzhiyun			 * The PCIe units are accessible through
227*4882a593Smuzhiyun			 * the mini-PCIe connectors on the board.
228*4882a593Smuzhiyun			 */
229*4882a593Smuzhiyun			pcie@1,0 {
230*4882a593Smuzhiyun				reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
231*4882a593Smuzhiyun				status = "okay";
232*4882a593Smuzhiyun			};
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun			pcie@2,0 {
235*4882a593Smuzhiyun				reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
236*4882a593Smuzhiyun				status = "okay";
237*4882a593Smuzhiyun			};
238*4882a593Smuzhiyun
239*4882a593Smuzhiyun			pcie@3,0 {
240*4882a593Smuzhiyun				reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
241*4882a593Smuzhiyun				status = "okay";
242*4882a593Smuzhiyun			};
243*4882a593Smuzhiyun		};
244*4882a593Smuzhiyun	};
245*4882a593Smuzhiyun
246*4882a593Smuzhiyun	sfp0: sfp {
247*4882a593Smuzhiyun		compatible = "sff,sfp";
248*4882a593Smuzhiyun		i2c-bus = <&i2c1>;
249*4882a593Smuzhiyun		los-gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>;
250*4882a593Smuzhiyun		mod-def0-gpio = <&gpio0 25 GPIO_ACTIVE_LOW>;
251*4882a593Smuzhiyun		tx-disable-gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>;
252*4882a593Smuzhiyun	};
253*4882a593Smuzhiyun
254*4882a593Smuzhiyun	gpio-keys {
255*4882a593Smuzhiyun		compatible = "gpio-keys";
256*4882a593Smuzhiyun		pinctrl-0 = <&cf_gtr_rear_button_pins &cf_gtr_front_button_pins>;
257*4882a593Smuzhiyun		pinctrl-names = "default";
258*4882a593Smuzhiyun
259*4882a593Smuzhiyun		button_0 {
260*4882a593Smuzhiyun			label = "Rear Button";
261*4882a593Smuzhiyun			gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
262*4882a593Smuzhiyun			linux,can-disable;
263*4882a593Smuzhiyun			linux,code = <BTN_0>;
264*4882a593Smuzhiyun		};
265*4882a593Smuzhiyun
266*4882a593Smuzhiyun		button_1 {
267*4882a593Smuzhiyun			label = "Front Button";
268*4882a593Smuzhiyun			gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
269*4882a593Smuzhiyun			linux,can-disable;
270*4882a593Smuzhiyun			linux,code = <BTN_1>;
271*4882a593Smuzhiyun		};
272*4882a593Smuzhiyun	};
273*4882a593Smuzhiyun
274*4882a593Smuzhiyun	gpio-leds {
275*4882a593Smuzhiyun		compatible = "gpio-leds";
276*4882a593Smuzhiyun
277*4882a593Smuzhiyun		led1 {
278*4882a593Smuzhiyun			function = LED_FUNCTION_CPU;
279*4882a593Smuzhiyun			color = <LED_COLOR_ID_GREEN>;
280*4882a593Smuzhiyun			gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
281*4882a593Smuzhiyun		};
282*4882a593Smuzhiyun
283*4882a593Smuzhiyun		led2 {
284*4882a593Smuzhiyun			function = LED_FUNCTION_HEARTBEAT;
285*4882a593Smuzhiyun			color = <LED_COLOR_ID_GREEN>;
286*4882a593Smuzhiyun			gpios = <&gpio1 20 GPIO_ACTIVE_HIGH>;
287*4882a593Smuzhiyun		};
288*4882a593Smuzhiyun	};
289*4882a593Smuzhiyun};
290*4882a593Smuzhiyun
291*4882a593Smuzhiyun&bm {
292*4882a593Smuzhiyun	status = "okay";
293*4882a593Smuzhiyun};
294*4882a593Smuzhiyun
295*4882a593Smuzhiyun&bm_bppi {
296*4882a593Smuzhiyun	status = "okay";
297*4882a593Smuzhiyun};
298*4882a593Smuzhiyun
299*4882a593Smuzhiyun&eth0 {
300*4882a593Smuzhiyun	/* ethernet@70000 */
301*4882a593Smuzhiyun	pinctrl-0 = <&ge0_rgmii_pins>;
302*4882a593Smuzhiyun	pinctrl-names = "default";
303*4882a593Smuzhiyun	phy = <&phy_dedicated>;
304*4882a593Smuzhiyun	phy-mode = "rgmii-id";
305*4882a593Smuzhiyun	buffer-manager = <&bm>;
306*4882a593Smuzhiyun	bm,pool-long = <0>;
307*4882a593Smuzhiyun	bm,pool-short = <1>;
308*4882a593Smuzhiyun	status = "okay";
309*4882a593Smuzhiyun};
310*4882a593Smuzhiyun
311*4882a593Smuzhiyun&eth1 {
312*4882a593Smuzhiyun	/* ethernet@30000 */
313*4882a593Smuzhiyun	bm,pool-long = <2>;
314*4882a593Smuzhiyun	bm,pool-short = <1>;
315*4882a593Smuzhiyun	buffer-manager = <&bm>;
316*4882a593Smuzhiyun	phys = <&comphy1 1>;
317*4882a593Smuzhiyun	phy-mode = "2500base-x";
318*4882a593Smuzhiyun	status = "okay";
319*4882a593Smuzhiyun
320*4882a593Smuzhiyun	fixed-link {
321*4882a593Smuzhiyun		speed = <2500>;
322*4882a593Smuzhiyun		full-duplex;
323*4882a593Smuzhiyun	};
324*4882a593Smuzhiyun};
325*4882a593Smuzhiyun
326*4882a593Smuzhiyun&eth2 {
327*4882a593Smuzhiyun	/* ethernet@34000 */
328*4882a593Smuzhiyun	bm,pool-long = <3>;
329*4882a593Smuzhiyun	bm,pool-short = <1>;
330*4882a593Smuzhiyun	buffer-manager = <&bm>;
331*4882a593Smuzhiyun	managed = "in-band-status";
332*4882a593Smuzhiyun	phys = <&comphy5 1>;
333*4882a593Smuzhiyun	phy-mode = "sgmii";
334*4882a593Smuzhiyun	sfp = <&sfp0>;
335*4882a593Smuzhiyun	status = "okay";
336*4882a593Smuzhiyun};
337*4882a593Smuzhiyun
338*4882a593Smuzhiyun&mdio {
339*4882a593Smuzhiyun	pinctrl-names = "default";
340*4882a593Smuzhiyun	pinctrl-0 = <&mdio_pins>;
341*4882a593Smuzhiyun	status = "okay";
342*4882a593Smuzhiyun
343*4882a593Smuzhiyun	phy_dedicated: ethernet-phy@0 {
344*4882a593Smuzhiyun		/*
345*4882a593Smuzhiyun		 * Annoyingly, the marvell phy driver configures the LED
346*4882a593Smuzhiyun		 * register, rather than preserving reset-loaded setting.
347*4882a593Smuzhiyun		 * We undo that rubbish here.
348*4882a593Smuzhiyun		 */
349*4882a593Smuzhiyun		marvell,reg-init = <3 16 0 0x1017>;
350*4882a593Smuzhiyun		reg = <0>;
351*4882a593Smuzhiyun	};
352*4882a593Smuzhiyun};
353*4882a593Smuzhiyun
354*4882a593Smuzhiyun&uart0 {
355*4882a593Smuzhiyun	pinctrl-0 = <&uart0_pins>;
356*4882a593Smuzhiyun	pinctrl-names = "default";
357*4882a593Smuzhiyun	status = "okay";
358*4882a593Smuzhiyun};
359*4882a593Smuzhiyun
360*4882a593Smuzhiyun&spi1 {
361*4882a593Smuzhiyun	/*
362*4882a593Smuzhiyun	 * CS0: W25Q32 flash
363*4882a593Smuzhiyun	 */
364*4882a593Smuzhiyun	pinctrl-0 = <&spi1_pins &cf_gtr_spi1_cs_pins>;
365*4882a593Smuzhiyun	pinctrl-names = "default";
366*4882a593Smuzhiyun	status = "okay";
367*4882a593Smuzhiyun
368*4882a593Smuzhiyun	spi-flash@0 {
369*4882a593Smuzhiyun		#address-cells = <1>;
370*4882a593Smuzhiyun		#size-cells = <0>;
371*4882a593Smuzhiyun		compatible = "w25q32", "jedec,spi-nor";
372*4882a593Smuzhiyun		reg = <0>; /* Chip select 0 */
373*4882a593Smuzhiyun		spi-max-frequency = <3000000>;
374*4882a593Smuzhiyun		status = "okay";
375*4882a593Smuzhiyun	};
376*4882a593Smuzhiyun};
377*4882a593Smuzhiyun
378*4882a593Smuzhiyun&i2c0 {
379*4882a593Smuzhiyun	pinctrl-0 = <&i2c0_pins>;
380*4882a593Smuzhiyun	pinctrl-names = "default";
381*4882a593Smuzhiyun	status = "okay";
382*4882a593Smuzhiyun
383*4882a593Smuzhiyun	/* U26 temperature sensor placed near SoC */
384*4882a593Smuzhiyun	temp1: nct75@4c {
385*4882a593Smuzhiyun		compatible = "lm75";
386*4882a593Smuzhiyun		reg = <0x4c>;
387*4882a593Smuzhiyun	};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun	/* U27 temperature sensor placed near RTC battery */
390*4882a593Smuzhiyun	temp2: nct75@4d {
391*4882a593Smuzhiyun		compatible = "lm75";
392*4882a593Smuzhiyun		reg = <0x4d>;
393*4882a593Smuzhiyun	};
394*4882a593Smuzhiyun
395*4882a593Smuzhiyun	/* 2Kb eeprom */
396*4882a593Smuzhiyun	eeprom@53 {
397*4882a593Smuzhiyun		compatible = "atmel,24c02";
398*4882a593Smuzhiyun		reg = <0x53>;
399*4882a593Smuzhiyun	};
400*4882a593Smuzhiyun};
401*4882a593Smuzhiyun
402*4882a593Smuzhiyun&ahci0 {
403*4882a593Smuzhiyun	status = "okay";
404*4882a593Smuzhiyun};
405*4882a593Smuzhiyun
406*4882a593Smuzhiyun&ahci1 {
407*4882a593Smuzhiyun	status = "okay";
408*4882a593Smuzhiyun};
409*4882a593Smuzhiyun
410*4882a593Smuzhiyun&gpio0 {
411*4882a593Smuzhiyun	pinctrl-0 = <&cf_gtr_fan_pwm>;
412*4882a593Smuzhiyun	pinctrl-names = "default";
413*4882a593Smuzhiyun
414*4882a593Smuzhiyun	wifi-disable {
415*4882a593Smuzhiyun		gpio-hog;
416*4882a593Smuzhiyun		gpios = <30 GPIO_ACTIVE_LOW>, <31 GPIO_ACTIVE_LOW>;
417*4882a593Smuzhiyun		output-low;
418*4882a593Smuzhiyun		line-name = "wifi-disable";
419*4882a593Smuzhiyun	};
420*4882a593Smuzhiyun};
421*4882a593Smuzhiyun
422*4882a593Smuzhiyun&gpio1 {
423*4882a593Smuzhiyun	pinctrl-0 = <&cf_gtr_isolation_pins &cf_gtr_poe_reset_pins>;
424*4882a593Smuzhiyun	pinctrl-names = "default";
425*4882a593Smuzhiyun
426*4882a593Smuzhiyun	lte-disable {
427*4882a593Smuzhiyun		gpio-hog;
428*4882a593Smuzhiyun		gpios = <2 GPIO_ACTIVE_LOW>;
429*4882a593Smuzhiyun		output-low;
430*4882a593Smuzhiyun		line-name = "lte-disable";
431*4882a593Smuzhiyun	};
432*4882a593Smuzhiyun
433*4882a593Smuzhiyun	/*
434*4882a593Smuzhiyun	 * This signal, when asserted, isolates Armada 38x sample at reset pins
435*4882a593Smuzhiyun	 * from control of external devices. Should be de-asserted after reset.
436*4882a593Smuzhiyun	 */
437*4882a593Smuzhiyun	sar-isolation {
438*4882a593Smuzhiyun		gpio-hog;
439*4882a593Smuzhiyun		gpios = <15 GPIO_ACTIVE_LOW>;
440*4882a593Smuzhiyun		output-low;
441*4882a593Smuzhiyun		line-name = "sar-isolation";
442*4882a593Smuzhiyun	};
443*4882a593Smuzhiyun
444*4882a593Smuzhiyun	poe-reset {
445*4882a593Smuzhiyun		gpio-hog;
446*4882a593Smuzhiyun		gpios = <16 GPIO_ACTIVE_LOW>;
447*4882a593Smuzhiyun		output-low;
448*4882a593Smuzhiyun		line-name = "poe-reset";
449*4882a593Smuzhiyun	};
450*4882a593Smuzhiyun};
451