2
0
forked from Ivasoft/openwrt

octeon: add new target and support for Ubiquiti EdgeRouter 6P

Ubiquiti EdgeRouter 6P is 6 port router with similar
specifications as the EdgeRouter 4, support for which was added
in commit dd651e54cc

There are five 10/100/1000 Mbps RJ/Copper ports and
one 1000 Mbps SFP port.

SoC: Octeon Cavium 7130 (Cavium 3) at 1000MHz
Memory: 1GiB DDR3
Flash: 2x2M chips with uboots (chainloaded) + 512K eeprom
LEDs: 1x for power status (white/blue, controllable)
  and 6x for ethernet and SFP ports (no control over them)
Buttons: 1x Reset
Serial: 1x RJ45 port on front panel. 115200 baud, 8N1
USB: 1x USB3.0 on front panel
MII: 1x QSGMII from SoC
PHY: 1x Vitesse VSC8504 of which 4 ports are used (phys 4-7)
     1x Vitesse VSC8514 of which 2 ports are used (phys 8-9)

Network port mapping
 - eth0 on device maps to lan0 and phy5
 - eth1 on device maps to lan1 and phy6
 - eth2 on device maps to lan2 and phy7
 - eth3 on device maps to lan3 and phy8
 - eth4 on device maps to lan4 and phy9
 - eth5 (SFP) on device maps to lan5 and phy4

What is not working:
 - There is no port status available before it goes up
 - SFP have no additional status and presented as no different from eth
 - Power-over-ethernet (passive) support has not been tested

How to flash the firmware:
  - copy openwrt-octeon-ubnt_edgerouter-6p-initramfs-kernel.bin and
    openwrt-octeon-ubnt_edgerouter-6p-squashfs-sysupgrade.tar to
    USB flash drive that is formatted to vfat/fat32
  - connect USB flash drive to EdgeRouter 6P front USB port
  - connect serial cable using front RJ45 port (115200 baud, 8N1)
  - connect power to cable to EdgeRouter 6P
  - connect terminal to the console to see uboot boot process
  - interrupt boot by pressing button(s) on your keyboard to log
    in to the uboot
  - detect usb connected flash drives by typing to the console:
    usb start
  - after drive is detected load initramfs+kernel to the memory by typing:
    fatload usb 0:1 0x20000000 openwrt-octeon-ubnt_edgerouter-6p-initramfs-kernel.bin
  - after initramfs+kernel is loaded to the memory load it by typing:
    bootoctlinux 0 numcores=4 endbootargs mem=0
  - boot process should finish and you will be greeted with console
    after pressing enter
  - create directory to mount usb flash drive to by typing:
    mkdir /tmp/sda
  - mount flash drive to that directory by typing:
    mount /dev/sda1 /tmp/sda
  - flash firmware to router internal storage by typing:
    sysupgrade /tmp/sda/openwrt-octeon-ubnt_edgerouter-6p-squashfs-sysupgrade.tar
  - device will reboot and after it gets up you will have
    edgerouter 6p running openwrt

Signed-off-by: Dan Brown <danbrown@gmail.com>
[reorder/squash patches, move ethernet@0 to DTS, share image setup]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
Dan Brown
2021-05-12 14:48:01 +02:00
committed by Adrian Schmutzler
parent 8e7c9f5393
commit 6ee3680614
5 changed files with 85 additions and 7 deletions

View File

@@ -0,0 +1,60 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "cn7130_ubnt_edgerouter-e300.dtsi"
/ {
compatible = "ubnt,edgerouter-6p", "cavium,cn7130";
model = "Ubiquiti EdgeRouter 6P";
};
&smi0 {
phy8: ethernet-phy@8 {
device_type = "ethernet-phy";
interrupts = <17 8>;
interrupt-parent = <&gpio>;
compatible = "vitesse,vsc8514", "ethernet-phy-ieee802.3-c22";
reg = <8>;
};
phy9: ethernet-phy@9 {
device_type = "ethernet-phy";
interrupts = <17 8>;
interrupt-parent = <&gpio>;
compatible = "vitesse,vsc8514", "ethernet-phy-ieee802.3-c22";
reg = <9>;
};
};
&pip {
interface@0 {
ethernet@0 {
label = "lan5";
status = "okay";
phy-mode = "sgmii";
phy-handle = <&phy4>;
mtd-mac-address = <&eeprom 0>;
};
};
interface@1 {
status = "okay";
ethernet@0 {
label = "lan3";
status = "okay";
phy-mode = "sgmii";
phy-handle = <&phy8>;
mtd-mac-address = <&eeprom 0>;
mtd-mac-address-increment = <(4)>;
};
ethernet@1 {
label = "lan4";
status = "okay";
phy-mode = "sgmii";
phy-handle = <&phy9>;
mtd-mac-address = <&eeprom 0>;
mtd-mac-address-increment = <(5)>;
};
};
};