240 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			240 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // SPDX-License-Identifier: GPL-2.0
 | |
| /*
 | |
|  * Device Tree common file for the Seagate NAS 2 and 4-bay (Armada 370 SoC).
 | |
|  *
 | |
|  * Copyright (C) 2015 Seagate
 | |
|  *
 | |
|  * Author: Vincent Donnefort <vdonnefort@gmail.com>
 | |
|  */
 | |
| 
 | |
| /*
 | |
|  * TODO: add support for the white SATA LEDs associated with HDD 0 and 1.
 | |
|  */
 | |
| 
 | |
| #include "armada-370.dtsi"
 | |
| #include <dt-bindings/gpio/gpio.h>
 | |
| #include <dt-bindings/input/input.h>
 | |
| 
 | |
| / {
 | |
| 	chosen {
 | |
| 		stdout-path = "serial0:115200n8";
 | |
| 	};
 | |
| 
 | |
| 	memory@0 {
 | |
| 		device_type = "memory";
 | |
| 		reg = <0x00000000 0x20000000>; /* 512 MB */
 | |
| 	};
 | |
| 
 | |
| 	soc {
 | |
| 		ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
 | |
| 			  MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>;
 | |
| 
 | |
| 		internal-regs {
 | |
| 			serial@12000 {
 | |
| 				status = "okay";
 | |
| 			};
 | |
| 
 | |
| 			sata@a0000 {
 | |
| 				nr-ports = <2>;
 | |
| 				status = "okay";
 | |
| 			};
 | |
| 
 | |
| 			ethernet@70000 {
 | |
| 				status = "okay";
 | |
| 				pinctrl-0 = <&ge0_rgmii_pins>;
 | |
| 				pinctrl-names = "default";
 | |
| 				phy = <&phy0>;
 | |
| 				phy-mode = "rgmii-id";
 | |
| 			};
 | |
| 
 | |
| 			i2c@11000 {
 | |
| 				status = "okay";
 | |
| 				pinctrl-0 = <&i2c0_pins>;
 | |
| 				pinctrl-names = "default";
 | |
| 				clock-frequency = <100000>;
 | |
| 
 | |
| 				/* RTC - NXP 8563T (second source) */
 | |
| 				rtc@51 {
 | |
| 					compatible = "nxp,pcf8563";
 | |
| 					reg = <0x51>;
 | |
| 					interrupts = <110>;
 | |
| 				};
 | |
| 				/* RTC - MCP7940NT */
 | |
| 				rtc@6f {
 | |
| 					compatible = "microchip,mcp7941x";
 | |
| 					reg = <0x6f>;
 | |
| 					interrupts = <110>;
 | |
| 				};
 | |
| 			};
 | |
| 		};
 | |
| 
 | |
| 	};
 | |
| 
 | |
| 	regulators {
 | |
| 		compatible = "simple-bus";
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <0>;
 | |
| 		pinctrl-names = "default";
 | |
| 
 | |
| 		regulator@1 {
 | |
| 			compatible = "regulator-fixed";
 | |
| 			reg = <1>;
 | |
| 			regulator-name = "SATA0 power";
 | |
| 			regulator-min-microvolt = <5000000>;
 | |
| 			regulator-max-microvolt = <5000000>;
 | |
| 			enable-active-high;
 | |
| 			regulator-always-on;
 | |
| 			regulator-boot-on;
 | |
| 			gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>;
 | |
| 		};
 | |
| 		regulator@2 {
 | |
| 			compatible = "regulator-fixed";
 | |
| 			reg = <2>;
 | |
| 			regulator-name = "SATA1 power";
 | |
| 			regulator-min-microvolt = <5000000>;
 | |
| 			regulator-max-microvolt = <5000000>;
 | |
| 			enable-active-high;
 | |
| 			regulator-always-on;
 | |
| 			regulator-boot-on;
 | |
| 			gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	gpio-fan {
 | |
| 		compatible = "gpio-fan";
 | |
| 		gpios = <&gpio2 0 GPIO_ACTIVE_HIGH
 | |
| 			 &gpio2 1 GPIO_ACTIVE_HIGH>;
 | |
| 	};
 | |
| 
 | |
| 	gpio-keys {
 | |
| 		compatible = "gpio-keys";
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <0>;
 | |
| 
 | |
| 		power {
 | |
| 			label = "Power button";
 | |
| 			linux,code = <KEY_POWER>;
 | |
| 			gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
 | |
| 			debounce-interval = <100>;
 | |
| 		};
 | |
| 		backup {
 | |
| 			label = "Backup button";
 | |
| 			linux,code = <KEY_OPTION>;
 | |
| 			gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
 | |
| 			debounce-interval = <100>;
 | |
| 		};
 | |
| 		reset {
 | |
| 			label = "Reset Button";
 | |
| 			linux,code = <KEY_RESTART>;
 | |
| 			gpios = <&gpio1 23 GPIO_ACTIVE_LOW>;
 | |
| 			debounce-interval = <100>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	gpio-leds {
 | |
| 		compatible = "gpio-leds";
 | |
| 
 | |
| 		white-power {
 | |
| 			label = "dart:white:power";
 | |
| 			gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
 | |
| 			linux,default-trigger = "timer";
 | |
| 
 | |
| 		};
 | |
| 		red-power {
 | |
| 			label = "dart:red:power";
 | |
| 			gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>;
 | |
| 		};
 | |
| 		red-sata0 {
 | |
| 			label = "dart:red:sata0";
 | |
| 			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
 | |
| 		};
 | |
| 		red-sata1 {
 | |
| 			label = "dart:red:sata1";
 | |
| 			gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	gpio_poweroff {
 | |
| 		compatible = "gpio-poweroff";
 | |
| 		gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &pciec {
 | |
| 	status = "okay";
 | |
| 
 | |
| 	/* USB 3.0 bridge ASM1042A */
 | |
| 	pcie@2,0 {
 | |
| 		status = "okay";
 | |
| 	};
 | |
| };
 | |
| 
 | |
| 
 | |
| &mdio {
 | |
| 	pinctrl-0 = <&mdio_pins>;
 | |
| 	pinctrl-names = "default";
 | |
| 
 | |
| 	phy0: ethernet-phy@0 {
 | |
| 		reg = <0>;
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &pinctrl {
 | |
| 	pinctrl-0 = <&hdd0_led_sata_pin>, <&hdd1_led_sata_pin>;
 | |
| 	pinctrl-names = "default";
 | |
| 
 | |
| 	hdd0_led_sata_pin: hdd0-led-sata-pin {
 | |
| 		marvell,pins = "mpp48";
 | |
| 		marvell,function = "sata1";
 | |
| 	};
 | |
| 	hdd0_led_gpio_pin: hdd0-led-gpio-pin {
 | |
| 		marvell,pins = "mpp48";
 | |
| 		marvell,function = "gpio";
 | |
| 	};
 | |
| 	hdd1_led_sata_pin: hdd1-led-sata-pin {
 | |
| 		marvell,pins = "mpp57";
 | |
| 		marvell,function = "sata0";
 | |
| 	};
 | |
| 	hdd1_led_gpio_pin: hdd1-led-gpio-pin {
 | |
| 		marvell,pins = "mpp57";
 | |
| 		marvell,function = "gpio";
 | |
| 	};
 | |
| };
 | |
| 
 | |
| &nand_controller {
 | |
| 	status = "okay";
 | |
| 
 | |
| 	nand@0 {
 | |
| 		reg = <0>;
 | |
| 		label = "pxa3xx_nand-0";
 | |
| 		nand-rb = <0>;
 | |
| 		marvell,nand-keep-config;
 | |
| 		nand-on-flash-bbt;
 | |
| 		nand-ecc-strength = <4>;
 | |
| 		nand-ecc-step-size = <512>;
 | |
| 
 | |
| 		partitions {
 | |
| 			compatible = "fixed-partitions";
 | |
| 			#address-cells = <1>;
 | |
| 			#size-cells = <1>;
 | |
| 
 | |
| 			partition@0 {
 | |
| 				label = "u-boot";
 | |
| 				reg = <0x0 0x300000>;
 | |
| 			};
 | |
| 			partition@300000 {
 | |
| 				label = "device-tree";
 | |
| 				reg = <0x300000 0x20000>;
 | |
| 			};
 | |
| 			partition@320000 {
 | |
| 				label = "linux";
 | |
| 				reg = <0x320000 0x2000000>;
 | |
| 			};
 | |
| 			partition@2320000 {
 | |
| 				label = "rootfs";
 | |
| 				reg = <0x2320000 0xdce0000>;
 | |
| 			};
 | |
| 		};
 | |
| 	};
 | |
| };
 |