From 012da658a4565b60d2cae8d888fcd487c8ecfac9 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Tue, 19 Apr 2016 20:12:41 +0000 Subject: oxnas: add support for Akitio MyCloud mini Signed-off-by: Daniel Golle SVN-Revision: 49197 --- 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 +++ 7 files changed, 166 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 (limited to 'target') 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 af565d7031..b4b598cc40 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 5aec796cb2..51771f3ea6 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 8ae5fbbeee..991f92720d 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 0000000000..5da4fa4419 --- /dev/null +++ b/target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts @@ -0,0 +1,132 @@ +/* + * Copyright (C) 2016 Daniel Golle + * + * 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 ae1050e9a1..27da2da27c 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 19e1e8275b..f41fa8648e 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 0000000000..a10860101a --- /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)) -- cgit v1.2.3