diff options
author | Andrew Yong <me@ndoo.sg> | 2017-01-08 14:30:10 +0800 |
---|---|---|
committer | Mathias Kresin <dev@kresin.me> | 2017-01-13 08:32:35 +0100 |
commit | 3f31029b190417e12f4d19d9999cd52ec76d0f85 (patch) | |
tree | 93a92ab8ccc6b8e55af209e4c86788f47046e7bf | |
parent | d7fd1a0f8da37a978b138b2966c12d06bda55df5 (diff) | |
download | upstream-3f31029b190417e12f4d19d9999cd52ec76d0f85.tar.gz upstream-3f31029b190417e12f4d19d9999cd52ec76d0f85.tar.bz2 upstream-3f31029b190417e12f4d19d9999cd52ec76d0f85.zip |
ramips: add support for VoCore2
This patch adds support for the VoCore VoCore2 and its complementary
"ultimate" dock.
Specifications:
- SoC: MediaTek MT7628AN (580MHz, ramips)
- RAM: 128MB DDR2 166MHz
- Storage: 16MB NOR SPI flash onboard + microSD slot on dock
- Wireless: Built into MT7628AN (mt76) with 1T1R firmware on VoCore2
boards with onboard 1x chip antenna
- Ethernet: 1x100M (port0) on dock, 1x100M (port2) on PCB header
- Dock hardware:
- USB 2.0 socket
- MicroSD socket
- 100Mbps Ethernet x1
- 3.5mm headphone jack (TRRS) connected to Everest Semi ES8388 I2S
DAC/ADC (support WIP)
- Micro USB for power and console (UART2)
Initial installation:
- VoCore2 comes preinstalled with a fork of OpenWrt CC and AP on
SSID "VoCore2"
- Connect to VoCore2 by Ethernet or Wi-Fi
- `ssh root@192.168.1.1` (password is "vocore")
- scp/wget/etc. LEDE sysupgrade.bin to VoCore2
- `sysupgrade -n <your image>.bin` (don't keep old config, as the
original firmware uses Ralink SDK Wi-Fi drivers and not
mt76+mac80211)
- after sysupgrade completes, Wi-Fi will be disabled by default so use
Ethernet or the micro USB console to configure Wi-Fi again
Signed-off-by: Andrew Yong <me@ndoo.sg>
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/01_leds | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/02_network | 4 | ||||
-rw-r--r-- | target/linux/ramips/base-files/etc/diag.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/ramips.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/upgrade/platform.sh | 1 | ||||
-rw-r--r-- | target/linux/ramips/dts/VOCORE2.dts | 123 | ||||
-rw-r--r-- | target/linux/ramips/image/mt7628.mk | 9 |
7 files changed, 146 insertions, 0 deletions
diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds index 0ebf471802..3d3aa0ac01 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -311,6 +311,9 @@ vocore) ucidef_set_led_netdev "eth" "ETH" "$board:orange:eth" "eth0" set_wifi_led "$board:green:status" ;; +vocore2) + set_wifi_led "$board:fuchsia:status" + ;; w502u) set_usb_led "$board:blue:usb" set_wifi_led "rt2800pci-phy0::radio" diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index daf9b33a74..e84a52d4a6 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -249,6 +249,10 @@ ramips_setup_interfaces() ucidef_add_switch "switch0" \ "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "0@eth0" ;; + vocore2) + ucidef_add_switch "switch0" \ + "0:lan" "2:lan" "6t@eth0" + ;; f5d8235-v1|\ tew-714tru|\ v11st-fe|\ diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index a22be5e3d4..0b5bfeb589 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -206,6 +206,9 @@ get_status_led() { v22rw-2x2) status_led="$board:green:security" ;; + vocore2) + status_led="$board:fuchsia:status" + ;; w306r-v20|\ witi|\ zbt-wr8305rt) diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 9b82b2a5c1..895f3ae224 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -475,6 +475,9 @@ ramips_board_detect() { *"VoCore (16M)") name="vocore-16M" ;; + *"VoCore2") + name="vocore2" + ;; *"VR500") name="vr500" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index c097cfa218..ce2c2221f2 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -133,6 +133,7 @@ platform_check_image() { ur-336un|\ v22rw-2x2|\ vocore|\ + vocore2|\ vr500|\ w150m|\ w2914nsv2|\ diff --git a/target/linux/ramips/dts/VOCORE2.dts b/target/linux/ramips/dts/VOCORE2.dts new file mode 100644 index 0000000000..297cd1bb99 --- /dev/null +++ b/target/linux/ramips/dts/VOCORE2.dts @@ -0,0 +1,123 @@ +/dts-v1/; + +#include "mt7628an.dtsi" + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> + +/ { + compatible = "vocore,VoCore2", "mediatek,mt7628an-soc"; + model = "VoCore2"; + + chosen { + bootargs = "console=ttyS2,115200"; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x4000000>; + }; + + gpio-leds { + compatible = "gpio-leds"; + + status { + label = "vocore2:fuchsia:status"; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "refclk", "gpio"; + ralink,function = "gpio"; + }; + + agpio { + ralink,group = "agpio"; + ralink,function = "uart2"; + }; + }; + + uart1_pins: uart1 { + uart1 { + ralink,group = "uart1"; + ralink,function = "uart1"; + }; + }; + + uart2_pins: uart2 { + uart2 { + ralink,group = "spis"; + ralink,function = "pwm"; + }; + }; +}; + +&wmac { + status = "okay"; + ralink,mtd-eeprom = <&factory 0x4>; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + m25p,chunked-io = <32>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + label = "firmware"; + reg = <0x50000 0xfb0000>; + }; + }; +}; + +&esw { + mediatek,portmap = <0x7>; + mediatek,portdisable = <0x3a>; +}; + +&i2s { + status = "okay"; +}; + +&gdma { + status = "okay"; +}; + +&pwm { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&uart2 { + status = "okay"; +}; diff --git a/target/linux/ramips/image/mt7628.mk b/target/linux/ramips/image/mt7628.mk index 7a7ddce3c9..4502588c80 100644 --- a/target/linux/ramips/image/mt7628.mk +++ b/target/linux/ramips/image/mt7628.mk @@ -19,6 +19,15 @@ define Device/miwifi-nano endef TARGET_DEVICES += miwifi-nano +define Device/vocore2 + DTS := VOCORE2 + IMAGE_SIZE := $(ralink_default_fw_size_16M) + DEVICE_TITLE := VoCore VoCore2 + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport \ + kmod-sdhci kmod-sdhci-mt7620 +endef +TARGET_DEVICES += vocore2 + define Device/wl-wn575a3 DTS := WL-WN575A3 IMAGE_SIZE := $(ralink_default_fw_size_8M) |