aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorRosy Song <rosysong@rosinson.com>2018-10-07 12:04:54 +0800
committerMathias Kresin <dev@kresin.me>2018-11-27 21:11:54 +0100
commit31469aebd4c737ba891ceffc58db59c6b039445c (patch)
tree90dcd27a9e0d577b24896cc62351e4d8e8b5609a /target/linux
parent757478133743d2d573ee2d5eb78be37aa544e11e (diff)
downloadupstream-31469aebd4c737ba891ceffc58db59c6b039445c.tar.gz
upstream-31469aebd4c737ba891ceffc58db59c6b039445c.tar.bz2
upstream-31469aebd4c737ba891ceffc58db59c6b039445c.zip
ath79: add support for ROSINSON WR818 board
This commit adds support for the ROSINSON WR818 WiFi-Router SoC: Qualcomm Atheros QCA9563, FLASH: Winbond W25Q128FV 16MBytes, WiFi: QCA9563 b/g/n 3x3 450Mbit/s, USB: 1x USB 2.0 Type A, 1x USB2.0 Type C, IN: WPS/Reset button GPIO1, OUT: Power LED red, Internet LED red, WLAN LED red, LAN1 LED red, LAN2 LED red, System LED red, UART: RX-GPIO18, TX-GPIO22, Tested and working: - Ethernet (LAN + WAN) - WiFi - OpenWRT sysupgrade - Button - LEDs Installation of OpenWRT from vendor firmware: - Connect to the Web-interface at http://192.168.1.1 - Go to "Administration" -> "Firmware Upgrade" - Upload the OpenWrt sysupgrade image Signed-off-by: Rosy Song <rosysong@rosinson.com>
Diffstat (limited to 'target/linux')
-rwxr-xr-xtarget/linux/ath79/base-files/etc/board.d/02_network8
-rw-r--r--target/linux/ath79/dts/qca9563_rosinson_wr818.dts162
-rw-r--r--target/linux/ath79/image/generic.mk8
3 files changed, 178 insertions, 0 deletions
diff --git a/target/linux/ath79/base-files/etc/board.d/02_network b/target/linux/ath79/base-files/etc/board.d/02_network
index f471882213..b9d6c709e7 100755
--- a/target/linux/ath79/base-files/etc/board.d/02_network
+++ b/target/linux/ath79/base-files/etc/board.d/02_network
@@ -111,6 +111,10 @@ ath79_setup_interfaces()
ucidef_add_switch "switch0" \
"0@eth0" "3:lan:1" "5:lan:2" "4:wan"
;;
+ rosinson,wr818)
+ ucidef_add_switch "switch0" \
+ "0@eth0" "1:lan" "2:lan" "3:wan"
+ ;;
tplink,archer-c7-v1|\
tplink,archer-c7-v2|\
tplink,tl-wdr4900-v2)
@@ -230,6 +234,10 @@ ath79_setup_macs()
lan_mac=$(k2t_get_mac "lan_mac")
wan_mac=$(k2t_get_mac "wan_mac")
;;
+ rosinson,wr818)
+ wan_mac=$(mtd_get_mac_binary factory 0)
+ lan_mac=$(macaddr_setbit_la "$wan_mac")
+ ;;
tplink,tl-wr1043nd-v4)
base_mac=$(mtd_get_mac_binary product-info 8)
wan_mac=$(macaddr_add "$base_mac" 1)
diff --git a/target/linux/ath79/dts/qca9563_rosinson_wr818.dts b/target/linux/ath79/dts/qca9563_rosinson_wr818.dts
new file mode 100644
index 0000000000..ff853cc2cf
--- /dev/null
+++ b/target/linux/ath79/dts/qca9563_rosinson_wr818.dts
@@ -0,0 +1,162 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+#include "qca956x.dtsi"
+
+/ {
+ model = "ROSINSON WR818";
+ compatible = "rosinson,wr818", "qca,qca9560";
+
+ chosen {
+ bootargs = "console=ttyS0,115200n8";
+ };
+
+ aliases {
+ led-boot = &system;
+ led-failsafe = &system;
+ led-running = &system;
+ led-upgrade = &system;
+ };
+
+ gpio_leds: leds {
+ compatible = "gpio-leds";
+
+ system: system {
+ label = "wr818:red:system";
+ gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
+ };
+
+ wifi_2g {
+ label = "wr818:red:wifi2g";
+ gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "phy0tpt";
+ };
+ };
+
+ keys {
+ compatible = "gpio-keys";
+
+ reset {
+ label = "reset";
+ linux,code = <KEY_RESTART>;
+ gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
+ debounce-interval = <60>;
+ };
+ };
+};
+
+&uart {
+ status = "okay";
+};
+
+&gpio {
+ status = "okay";
+};
+
+&spi {
+ num-cs = <1>;
+
+ status = "okay";
+
+ flash@0 {
+ compatible = "jedec,spi-nor";
+ reg = <0>;
+ spi-max-frequency = <25000000>;
+
+ partitions {
+ compatible = "fixed-partitions";
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ partition@0 {
+ label = "u-boot";
+ reg = <0x000000 0x040000>;
+ read-only;
+ };
+
+ partition@40000 {
+ label = "u-boot-env";
+ reg = <0x040000 0x010000>;
+ read-only;
+ };
+
+ partition@50000 {
+ label = "firmware";
+ reg = <0x050000 0xf80000>;
+ };
+
+ info: partition@fd0000 {
+ label = "factory";
+ reg = <0xfd0000 0x010000>;
+ read-only;
+ };
+
+ art: partition@ff0000 {
+ label = "art";
+ reg = <0xff0000 0x010000>;
+ read-only;
+ };
+ };
+ };
+};
+
+&mdio0 {
+ status = "okay";
+
+ phy-mask = <0>;
+ phy0: ethernet-phy@0 {
+ reg = <0>;
+ phy-mode = "sgmii";
+
+ qca,ar8327-initvals = <
+ 0x04 0x00080080 /* PORT0 PAD MODE CTRL */
+ 0x7c 0x0000007e /* PORT0_STATUS */
+ >;
+ };
+};
+
+&eth0 {
+ status = "okay";
+
+ mtd-mac-address = <&info 0x0>;
+ phy-mode = "sgmii";
+ phy-handle = <&phy0>;
+};
+
+&wmac {
+ status = "okay";
+ mtd-cal-data = <&art 0x1000>;
+};
+
+&usb_phy0 {
+ status = "okay";
+};
+
+&usb0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ port@1 {
+ reg = <1>;
+ #trigger-source-cells = <0>;
+ };
+};
+
+&usb_phy1 {
+ status = "okay";
+};
+
+&usb1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ port@2 {
+ reg = <2>;
+ #trigger-source-cells = <0>;
+ };
+};
diff --git a/target/linux/ath79/image/generic.mk b/target/linux/ath79/image/generic.mk
index 48d477dd9e..2b4556bc76 100644
--- a/target/linux/ath79/image/generic.mk
+++ b/target/linux/ath79/image/generic.mk
@@ -344,6 +344,14 @@ define Device/phicomm_k2t
endef
TARGET_DEVICES += phicomm_k2t
+define Device/rosinson_wr818
+ ATH_SOC := qca9563
+ DEVICE_TITLE := ROSINSON WR818
+ IMAGE_SIZE := 15872k
+ DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport
+endef
+TARGET_DEVICES += rosinson_wr818
+
define Device/wd_mynet-wifi-rangeextender
ATH_SOC := ar9344
DEVICE_TITLE := Western Digital My Net Wi-Fi Range Extender