oxnas: add support for Akitio MyCloud mini

Signed-off-by: Daniel Golle <daniel@makrotopia.org>

SVN-Revision: 49197
This commit is contained in:
Hauke Mehrtens
2016-04-19 20:12:41 +00:00
parent d1005862c2
commit 012da658a4
9 changed files with 329 additions and 3 deletions

View File

@@ -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"

View File

@@ -6,6 +6,9 @@
get_status_led() {
case $(oxnas_board_name) in
akitio)
status_led="akitio:red:status"
;;
stg212)
status_led="zyxel:blue:status"
;;

View File

@@ -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"
;;

View File

@@ -0,0 +1,132 @@
/*
* Copyright (C) 2016 Daniel Golle <daniel@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 */
};
};
};
};

View File

@@ -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

View File

@@ -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

View File

@@ -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))