ARM: kirkwood: Add device-tree for nas220
authorChris Packham <judge.packham@gmail.com>
Tue, 8 May 2018 10:34:17 +0000 (22:34 +1200)
committerStefan Roese <sr@denx.de>
Thu, 17 May 2018 15:35:25 +0000 (17:35 +0200)
Import the dts file from Linux 4.17 and enable CONFIG_OF_CONTROL.

Signed-off-by: Chris Packham <judge.packham@gmail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
arch/arm/dts/kirkwood-blackarmor-nas220.dts [new file with mode: 0644]
configs/nas220_defconfig

diff --git a/arch/arm/dts/kirkwood-blackarmor-nas220.dts b/arch/arm/dts/kirkwood-blackarmor-nas220.dts
new file mode 100644 (file)
index 0000000..07fbfca
--- /dev/null
@@ -0,0 +1,172 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Device Tree file for Seagate Blackarmor NAS220
+ *
+ * Copyright (C) 2014 Evgeni Dobrev <evgeni@studio-punkt.com>
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include "kirkwood.dtsi"
+#include "kirkwood-6192.dtsi"
+
+/ {
+       model = "Seagate Blackarmor NAS220";
+       compatible = "seagate,blackarmor-nas220","marvell,kirkwood-88f6192",
+                    "marvell,kirkwood";
+
+       memory { /* 128 MB */
+               device_type = "memory";
+               reg = <0x00000000 0x8000000>;
+       };
+
+       chosen {
+               bootargs = "console=ttyS0,115200n8";
+               stdout-path = &uart0;
+       };
+
+       gpio_poweroff {
+               compatible = "gpio-poweroff";
+               gpios = <&gpio0 14 GPIO_ACTIVE_LOW>;
+       };
+
+       gpio_keys {
+               compatible = "gpio-keys";
+
+               reset {
+                       label = "Reset";
+                       linux,code = <KEY_POWER>;
+                       gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>;
+               };
+
+               button {
+                       label = "Power";
+                       linux,code = <KEY_SLEEP>;
+                       gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
+               };
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+
+               blue-power {
+                       label = "nas220:blue:power";
+                       gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
+                       linux,default-trigger = "default-on";
+               };
+       };
+
+       regulators {
+               compatible = "simple-bus";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               pinctrl-0 = <&pmx_power_sata0 &pmx_power_sata1>;
+               pinctrl-names = "default";
+
+               sata0_power: 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 = <&gpio0 24 GPIO_ACTIVE_LOW>;
+               };
+
+               sata1_power: 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 = <&gpio0 28 GPIO_ACTIVE_LOW>;
+               };
+       };
+};
+
+/*
+ * Serial port routed to connector CN5
+ *
+ * pin 1 - TX (CPU's TX)
+ * pin 4 - RX (CPU's RX)
+ * pin 6 - GND
+ */
+&uart0 {
+       status = "okay";
+};
+
+&pinctrl {
+       pinctrl-0 = <&pmx_button_reset &pmx_button_power>;
+       pinctrl-names = "default";
+
+       pmx_act_sata0: pmx-act-sata0 {
+               marvell,pins = "mpp15";
+               marvell,function = "sata0";
+       };
+
+       pmx_act_sata1: pmx-act-sata1 {
+               marvell,pins = "mpp16";
+               marvell,function = "sata1";
+       };
+
+       pmx_power_sata0: pmx-power-sata0 {
+               marvell,pins = "mpp24";
+               marvell,function = "gpio";
+       };
+
+       pmx_power_sata1: pmx-power-sata1 {
+               marvell,pins = "mpp28";
+               marvell,function = "gpio";
+       };
+
+       pmx_button_reset: pmx-button-reset {
+               marvell,pins = "mpp29";
+               marvell,function = "gpio";
+       };
+
+       pmx_button_power: pmx-button-power {
+               marvell,pins = "mpp26";
+               marvell,function = "gpio";
+       };
+};
+
+&sata {
+       status = "okay";
+       nr-ports = <2>;
+};
+
+&i2c0 {
+       status = "okay";
+
+       adt7476: thermal@2e {
+               compatible = "adi,adt7476";
+               reg = <0x2e>;
+       };
+};
+
+&nand {
+       status = "okay";
+};
+
+&mdio {
+       status = "okay";
+
+       ethphy0: ethernet-phy@8 {
+                reg = <8>;
+       };
+};
+
+&eth0 {
+       status = "okay";
+
+       ethernet0-port@0 {
+               phy-handle = <&ethphy0>;
+       };
+};
index 0299e0a70744402c4373e6a23a3f55caadcca10b..ddf5689bf474c846c0262c1ac0b2b6fa84632489 100644 (file)
@@ -3,6 +3,7 @@ CONFIG_KIRKWOOD=y
 CONFIG_SYS_TEXT_BASE=0x600000
 CONFIG_TARGET_NAS220=y
 CONFIG_IDENT_STRING="\nNAS 220"
+CONFIG_DEFAULT_DEVICE_TREE="kirkwood-blackarmor-nas220"
 CONFIG_BOOTDELAY=3
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_HUSH_PARSER=y
@@ -24,6 +25,7 @@ CONFIG_CMD_UBI=y
 CONFIG_ISO_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_PARTITION_UUIDS is not set
+CONFIG_OF_CONTROL=y
 CONFIG_ENV_IS_IN_NAND=y
 CONFIG_MVSATA_IDE=y
 # CONFIG_MMC is not set
@@ -33,4 +35,3 @@ CONFIG_SYS_NS16550=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
-CONFIG_OF_LIBFDT=y