Signed-off-by: Daniel Golle <dan...@makrotopia.org>
---
 package/boot/uboot-envtools/files/oxnas            |   1 +
 target/linux/oxnas/base-files/etc/board.d/01_leds  |   3 +
 target/linux/oxnas/base-files/etc/diag.sh          |   3 +
 target/linux/oxnas/base-files/lib/oxnas.sh         |   3 +
 .../oxnas/files/arch/arm/boot/dts/ox820-akitio.dts | 132 +++++++++++++++++++++
 target/linux/oxnas/image/Makefile                  |   6 +-
 .../linux/oxnas/patches-4.4/900-more-boards.patch  |   5 +-
 target/linux/oxnas/profiles/akitio.mk              |  17 +++
 8 files changed, 167 insertions(+), 3 deletions(-)
 create mode 100644 target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts
 create mode 100644 target/linux/oxnas/profiles/akitio.mk

diff --git a/package/boot/uboot-envtools/files/oxnas 
b/package/boot/uboot-envtools/files/oxnas
index 063ffa0..e560e22 100644
--- a/package/boot/uboot-envtools/files/oxnas
+++ b/package/boot/uboot-envtools/files/oxnas
@@ -14,6 +14,7 @@ touch /etc/config/ubootenv
 board=$(oxnas_board_name)
 
 case "$board" in
+akitio | \
 stg212 | \
 kd20)
        ubootenv_add_uci_config "/dev/ubi0_0" "0x0" "0x4000" "0x1F000" "1"
diff --git a/target/linux/oxnas/base-files/etc/board.d/01_leds 
b/target/linux/oxnas/base-files/etc/board.d/01_leds
index af565d7..b4b598c 100755
--- a/target/linux/oxnas/base-files/etc/board.d/01_leds
+++ b/target/linux/oxnas/base-files/etc/board.d/01_leds
@@ -7,6 +7,9 @@ board=$(oxnas_board_name)
 board_config_update
 
 case $board in
+       akitio)
+               ucidef_set_led_default "status" "status" "akitio:red:status" "0"
+               ;;
        stg212)
                ucidef_set_led_default "power" "power" "zyxel:blue:status" "1"
                ucidef_set_led_usbdev "usb" "USB" "zyxel:orange:copy" "1-1"
diff --git a/target/linux/oxnas/base-files/etc/diag.sh 
b/target/linux/oxnas/base-files/etc/diag.sh
index 5aec796..51771f3 100644
--- a/target/linux/oxnas/base-files/etc/diag.sh
+++ b/target/linux/oxnas/base-files/etc/diag.sh
@@ -6,6 +6,9 @@
 
 get_status_led() {
        case $(oxnas_board_name) in
+       akitio)
+               status_led="akitio:red:status"
+               ;;
        stg212)
                status_led="zyxel:blue:status"
                ;;
diff --git a/target/linux/oxnas/base-files/lib/oxnas.sh 
b/target/linux/oxnas/base-files/lib/oxnas.sh
index 8ae5fbb..991f927 100755
--- a/target/linux/oxnas/base-files/lib/oxnas.sh
+++ b/target/linux/oxnas/base-files/lib/oxnas.sh
@@ -13,6 +13,9 @@ oxnas_board_detect() {
        machine=$(cat /proc/device-tree/model)
 
        case "$machine" in
+       *"Akitio MyCloud mini"*)
+               name="akitio"
+               ;;
        *"MitraStar Technology Corp. STG-212"*)
                name="stg212"
                ;;
diff --git a/target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts 
b/target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts
new file mode 100644
index 0000000..5da4fa4
--- /dev/null
+++ b/target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2016 Daniel Golle <dan...@makrotopia.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+/dts-v1/;
+#include "ox820.dtsi"
+
+/ {
+       model = "Akitio MyCloud mini";
+
+       chosen {
+               bootargs = "console=ttyS0,115200n8 earlyprintk=serial";
+       };
+
+       pcie-controller@47C00000 {
+               status = "disabled";
+       };
+
+       uart@44200000 {
+               status = "okay";
+       };
+
+       sata@45900000 {
+               status = "okay";
+               nr-ports = <2>;
+       };
+
+       nand@41000000 {
+               status = "okay";
+
+               partition@0 {
+                       label = "boot";
+                       reg = <0x0 0x26c0000>;
+               };
+
+               partition@26c0000 {
+                       label = "ubi";
+                       reg = <0x26c0000 0xd940000>;
+               };
+       };
+
+       ethernet@40400000 {
+               status = "okay";
+       };
+
+       ehci@40200100 {
+               status = "okay";
+       };
+
+       i2c-gpio {
+               compatible = "i2c-gpio";
+               gpios = <&GPIOB 9 0 &GPIOB 10 0>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_i2c>;
+               i2c-gpio,delay-us = <10>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+               ds1307: rtc@68 {
+                       compatible = "dallas,ds1307";
+                       reg = <0x68>;
+               };
+       };
+
+       gpio-keys-polled {
+               compatible = "gpio-keys-polled";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_buttons>;
+               #address-cells = <1>;
+               #size-cells = <0>;
+               poll-interval = <100>;
+               power {
+                       label = "power";
+                       gpios = <&GPIOA 11 1>;
+                       linux,code = <116>;
+               }
+               reset {
+                       label = "reset";
+                       gpios = <&GPIOB 6 1>;
+                       linux,code = <0x198>;
+               };
+       };
+
+       gpio-leds {
+               compatible = "gpio-leds";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_leds>;
+               status {
+                       label = "akitio:red:status";
+                       gpios = <&GPIOA 29 0>;
+               };
+       };
+
+       gpio-poweroff {
+               compatible = "gpio-poweroff";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_poweroff>;
+               gpios = <&GPIOB 13 2>;
+       };
+
+       pinctrl {
+               i2c {
+                       pinctrl_i2c: i2c-0 {
+                               plxtech,pins =
+                                       <1  9 0 4       /* MF_B9 GPIO debounce 
*/
+                                        1 10 0 4>;     /* MF_B10 GPIO debounce 
*/
+                       };
+               };
+               buttons {
+                       pinctrl_buttons: buttons-0 {
+                               plxtech,pins =
+                                       <0 11 0 0       /* MF_A11 GPIO */
+                                        1  6 0 0>;     /* MF_B6 GPIO */
+                       };
+               };
+               leds {
+                       pinctrl_leds: leds-0 {
+                               plxtech,pins =
+                                       <0 29 0 0>;     /* MF_A29 GPIO */
+                       };
+               };
+               poweroff {
+                       pinctrl_poweroff: poweroff-0 {
+                               plxtech,pins =
+                                       <1 13 0 0>;     /* MF_B13 GPIO */
+                       };
+               };
+       };
+};
diff --git a/target/linux/oxnas/image/Makefile 
b/target/linux/oxnas/image/Makefile
index ae1050e..27da2da 100644
--- a/target/linux/oxnas/image/Makefile
+++ b/target/linux/oxnas/image/Makefile
@@ -18,7 +18,7 @@ DEVICE_VARS += DEVICE_DTS KERNEL_SIZE PAGESIZE BLOCKSIZE 
SUBPAGESIZE
 DEVICE_VARS += KERNEL_IN_UBI UBOOTENV_IN_UBI UBIFS_OPTS
 
 KERNEL_LOADADDR := 0x60008000
-TARGET_DEVICES = kd20 pogoplug-pro pogoplug-v3 stg212
+TARGET_DEVICES = akitio kd20 pogoplug-pro pogoplug-v3 stg212
 
 define Device/Default
   KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts)
@@ -38,6 +38,10 @@ define Device/Default
   UBOOTENV_IN_UBI := 1
 endef
 
+define Device/akitio
+  PROFILES := Default AKITIO
+  DEVICE_DTS := ox820-akitio
+endef
 
 define Device/kd20
   PROFILES := Default KD20
diff --git a/target/linux/oxnas/patches-4.4/900-more-boards.patch 
b/target/linux/oxnas/patches-4.4/900-more-boards.patch
index 19e1e82..f41fa86 100644
--- a/target/linux/oxnas/patches-4.4/900-more-boards.patch
+++ b/target/linux/oxnas/patches-4.4/900-more-boards.patch
@@ -1,11 +1,12 @@
 --- a/arch/arm/boot/dts/Makefile
 +++ b/arch/arm/boot/dts/Makefile
-@@ -497,7 +497,10 @@ dtb-$(CONFIG_ARCH_ORION5X) += \
+@@ -497,7 +497,11 @@ dtb-$(CONFIG_ARCH_ORION5X) += \
        orion5x-lswsgl.dtb \
        orion5x-maxtor-shared-storage-2.dtb \
        orion5x-rd88f5182-nas.dtb
 -dtb-$(CONFIG_ARCH_OXNAS) += ox820-pogoplug-pro.dtb
-+dtb-$(CONFIG_ARCH_OXNAS) += ox820-pogoplug-pro.dtb \
++dtb-$(CONFIG_ARCH_OXNAS) += ox820-akitio.dtb \
++      ox820-pogoplug-pro.dtb \
 +      ox820-pogoplug-v3.dtb \
 +      ox820-stg212.dtb \
 +      ox820-kd20.dtb
diff --git a/target/linux/oxnas/profiles/akitio.mk 
b/target/linux/oxnas/profiles/akitio.mk
new file mode 100644
index 0000000..a108601
--- /dev/null
+++ b/target/linux/oxnas/profiles/akitio.mk
@@ -0,0 +1,17 @@
+# Copyright (C) 2016 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/AKITIO
+  NAME:=Akitio MyCloud mini / Silverstone DC01
+  PACKAGES:= \
+       kmod-usb-storage kmod-i2c-gpio kmod-rtc-ds1307
+endef
+
+define Profile/AKITIO/Description
+ Profile for the Akitio MyCloud mini aka. Silverstone DC01
+endef
+
+$(eval $(call Profile,AKITIO))
-- 
2.8.0
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to