summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2016-04-19 20:12:41 +0000
committerHauke Mehrtens <hauke@hauke-m.de>2016-04-19 20:12:41 +0000
commit012da658a4565b60d2cae8d888fcd487c8ecfac9 (patch)
treeaf3a63c081ba627073f6e5cea59ac2db838b8466
parentd1005862c2c0a298d2ff492f531aa266857dbde8 (diff)
downloadopenwrt-012da658a4565b60d2cae8d888fcd487c8ecfac9.tar.gz
openwrt-012da658a4565b60d2cae8d888fcd487c8ecfac9.tar.bz2
openwrt-012da658a4565b60d2cae8d888fcd487c8ecfac9.zip
oxnas: add support for Akitio MyCloud mini
Signed-off-by: Daniel Golle <daniel@makrotopia.org> SVN-Revision: 49197
-rw-r--r--package/boot/uboot-envtools/files/oxnas1
-rw-r--r--package/network/utils/curl/Config.in.orig162
-rwxr-xr-xtarget/linux/oxnas/base-files/etc/board.d/01_leds3
-rw-r--r--target/linux/oxnas/base-files/etc/diag.sh3
-rwxr-xr-xtarget/linux/oxnas/base-files/lib/oxnas.sh3
-rw-r--r--target/linux/oxnas/files/arch/arm/boot/dts/ox820-akitio.dts132
-rw-r--r--target/linux/oxnas/image/Makefile6
-rw-r--r--target/linux/oxnas/patches-4.4/900-more-boards.patch5
-rw-r--r--target/linux/oxnas/profiles/akitio.mk17
9 files changed, 329 insertions, 3 deletions
diff --git a/package/boot/uboot-envtools/files/oxnas b/package/boot/uboot-envtools/files/oxnas
index 063ffa0b92..e560e22fab 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/package/network/utils/curl/Config.in.orig b/package/network/utils/curl/Config.in.orig
new file mode 100644
index 0000000000..7a46e4e25a
--- /dev/null
+++ b/package/network/utils/curl/Config.in.orig
@@ -0,0 +1,162 @@
+if PACKAGE_libcurl
+
+comment "SSL support"
+
+choice
+ prompt "Selected SSL library"
+ default LIBCURL_POLARSSL
+
+ config LIBCURL_POLARSSL
+ bool "PolarSSL"
+
+ config LIBCURL_MBEDTLS
+ bool "mbed TLS"
+
+ config LIBCURL_CYASSL
+ bool "CyaSSL"
+
+ config LIBCURL_AXTLS
+ bool "axTLS"
+
+ config LIBCURL_OPENSSL
+ bool "OpenSSL"
+
+ config LIBCURL_GNUTLS
+ bool "GNUTLS"
+
+ config LIBCURL_NOSSL
+ bool "No SSL support"
+
+endchoice
+
+comment "Supported protocols"
+
+config LIBCURL_DICT
+ bool "DICT protocol"
+ default n
+
+config LIBCURL_FILE
+ bool "FILE protocol"
+ default y
+
+config LIBCURL_FTP
+ bool "FTP / FTPS protocol"
+ default y
+
+config LIBCURL_GOPHER
+ bool "Gopher protocol"
+ default n
+
+config LIBCURL_HTTP
+ bool "HTTP / HTTPS protocol"
+ default y
+
+config LIBCURL_COOKIES
+ bool "Enable Cookies support"
+ depends on LIBCURL_HTTP
+ default y
+
+config LIBCURL_IMAP
+ bool "IMAP / IMAPS protocol"
+ default n
+
+config LIBCURL_LDAP
+ bool "LDAP protocol"
+ default n
+
+config LIBCURL_LDAPS
+ bool "Enable LDAPS support"
+ depends on LIBCURL_LDAP && !LIBCURL_NOSSL
+ default y
+
+config LIBCURL_POP3
+ bool "POP3 / POP3S protocol"
+ default n
+
+config LIBCURL_RTSP
+ bool "RTSP protocol"
+ depends on LIBCURL_HTTP
+ default n
+config LIBCURL_NO_RTSP
+ string "RTSP require HTTP protocol"
+ depends on !LIBCURL_HTTP
+ default "!"
+
+config LIBCURL_SSH2
+ bool "SCP / SFTP protocol"
+ default n
+
+config LIBCURL_SMB
+ bool "SMB protocol (CIFS)"
+ depends on LIBCURL_CRYPTO_AUTH && (LIBCURL_GNUTLS || LIBCURL_OPENSSL)
+ default n
+config LIBCURL_NO_SMB
+ string "SMB require 'cryptographic authentication' and either 'GnuTLS' or 'OpenSSL'"
+ depends on !LIBCURL_CRYPTO_AUTH || (!LIBCURL_GNUTLS && !LIBCURL_OPENSSL)
+ default "!"
+
+config LIBCURL_SMTP
+ bool "SMTP / SMTPS protocol"
+ default n
+
+config LIBCURL_TELNET
+ bool "TELNET protocol"
+ default n
+
+config LIBCURL_TFTP
+ bool "TFTP protocol"
+ default n
+
+comment "Miscellaneous"
+
+config LIBCURL_PROXY
+ bool "Enable proxy support"
+ default y
+
+config LIBCURL_CRYPTO_AUTH
+ bool "Enable cryptographic authentication"
+ default n
+
+config LIBCURL_TLS_SRP
+ bool "Enable TLS-SRP authentication"
+ default n
+
+config LIBCURL_LIBIDN
+ bool "Enable IDN support"
+ default n
+
+config LIBCURL_THREADED_RESOLVER
+ bool "Enable threaded DNS resolver"
+ default n
+ help
+ Enable POSIX threaded asynchronous DNS resolution
+
+config LIBCURL_ZLIB
+ bool "Enable zlib support"
+ default n
+
+config LIBCURL_UNIX_SOCKETS
+ bool "Enable unix domain socket support"
+ default n
+ help
+ Enable HTTP over unix domain sockets.
+ To use this with the curl command line, you specify the socket path to the new --unix-domain option.
+ This feature is actually not limited to HTTP, you can do all the TCP-based protocols
+ except FTP over the unix domain socket, but it is only HTTP that is regularly used this way.
+ The reason FTP isn't supported is of course its use of two connections
+ which would be even weirder to do like this.
+
+config LIBCURL_LIBCURL_OPTION
+ bool "Enable generation of C code"
+ default n
+
+config LIBCURL_VERBOSE
+ bool "Enable verbose error strings"
+ default n
+
+config LIBCURL_NTLM
+ bool "Enable NTLM support"
+ depends on LIBCURL_CRYPTO_AUTH && !LIBCURL_NOSSL
+ default n
+
+endif
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 <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 */
+ };
+ };
+ };
+};
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))