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>
		
	
		
			
				
	
	
		
			124 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			124 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
/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";
 | 
						|
};
 |