mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
dd651e54cc
Ubiquiti EdgeRouter 4 is 4 port Octeon Cavium 7130 powered router. It has internal power supply and needs c13 power cord. There are three 10/100/1000 Mbps RJ45/Copper ports and one 1000 Mbps SFP port connected directly to a SoC. SoC: Octeon Cavium 7130 (Cavium 3) Clocked at 1000Mhz Memory: 1 GiB (SK hynix H5TQ4G63CFR-RDC × 2) DDR3, clocked at 533 Mhz (1066Mhz effective) Flash: - mtd: 8 MiB (Macronix MX25L6408EMI-12G) used for uboot/eeprom - emmc: 4 GiB (SanDisk SDIN7DP2-4G) used for kernel+rootfs Leds: 1x for power status (white/blue, controllable) and 4x for ethernet and sfp ports (no control over them) Buttons: 1x Reset (from SOC) Serial: 1x RJ45 port on front panel. 115200 baud, 8N1 (from SoC) USB: 1x USB3.0 on front panel (from SoC) MII: 1x QSGMII from SoC is used PHY: 1x Vitesse VSC8504 of which 4x ports is used All physical port numbers are properly mapped inside OS and named by lanX instead of ethX. There is also special purpose four(4) loopX ports available. That loopX ports are currently hardcoded by linux kernel and exact use case of them is currently unknown. We leave them to the linux kernel and octeon board defaults. All four (4) physical ports are connected to the same QSGMII. vsc8504 is used for phys and only 4, 5, 6 and 7 phys are used. Phy mapping: - Phy5 is connected to physical eth0 port - Phy6 is connected to physical eth1 port - Phy7 is connected to physical eth2 port - Phy4 is connected to physical eth3 port Why this device needs external dts: - faster boot time since need to initialize less device tree nodes. - to add actual indication with LED about boot/failure/upgrade. i.e. user could know when to enter failsafe mode or if upgrade is done - reset button support so user can reset their device in case off failure - sfp port indication in dmesg with information about sfp module it also indicates when module inserted or removed Octeon quirks: - There is no port status available before it interface brought up - SFP port can not be tied to actual phy due to octeon-ethernet state and currently we can only get reports a about SFP state in dmesg How to flash the firmware: - copy openwrt-octeon-ubnt_edgerouter-4-initramfs-kernel.bin and openwrt-octeon-ubnt_edgerouter-4-squashfs-sysupgrade.tar to USB flash drive that is formatted to vfat/fat32 - connect USB flash drive to edgerouter 4 front USB port - connect serial cable using front RJ45 port (115200 baud, 8N1) - connect power to cable to edgerouter 4 - 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-4-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-4-squashfs-sysupgrade.tar - device will reboot and after it gets up you will have edgerouter 4 running openwrt Reviewed-by: Johannes Kimmel <fff@bareminimum.eu> Tested-by: Johannes Kimmel <fff@bareminimum.eu> Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com>
302 lines
7.6 KiB
Groff
302 lines
7.6 KiB
Groff
CONFIG_64BIT=y
|
|
CONFIG_ARCH_CLOCKSOURCE_DATA=y
|
|
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
|
|
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
|
|
CONFIG_ARCH_HAS_PHYS_TO_DMA=y
|
|
CONFIG_ARCH_HAS_PTE_SPECIAL=y
|
|
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
|
|
CONFIG_ARCH_MMAP_RND_BITS=12
|
|
CONFIG_ARCH_MMAP_RND_BITS_MAX=18
|
|
CONFIG_ARCH_MMAP_RND_BITS_MIN=12
|
|
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=15
|
|
CONFIG_ARCH_SPARSEMEM_ENABLE=y
|
|
CONFIG_ARCH_SUPPORTS_UPROBES=y
|
|
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
|
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
|
|
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
|
|
CONFIG_ARCH_USE_MEMREMAP_PROT=y
|
|
CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
|
|
CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
|
|
CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
|
|
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
|
|
CONFIG_BLK_DEV_LOOP=y
|
|
CONFIG_BLK_DEV_SD=y
|
|
CONFIG_BLK_MQ_PCI=y
|
|
CONFIG_BLK_SCSI_REQUEST=y
|
|
CONFIG_BUILTIN_DTB=y
|
|
# CONFIG_CAVIUM_CN63XXP1 is not set
|
|
CONFIG_CAVIUM_OCTEON_CVMSEG_SIZE=0
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2=y
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2_EXCEPTION=y
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2_INTERRUPT=y
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2_LOW_LEVEL_INTERRUPT=y
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2_MEMCPY=y
|
|
CONFIG_CAVIUM_OCTEON_LOCK_L2_TLB=y
|
|
CONFIG_CAVIUM_OCTEON_SOC=y
|
|
CONFIG_CEVT_R4K=y
|
|
CONFIG_CLONE_BACKWARDS=y
|
|
CONFIG_CPU_BIG_ENDIAN=y
|
|
CONFIG_CPU_CAVIUM_OCTEON=y
|
|
CONFIG_CPU_GENERIC_DUMP_TLB=y
|
|
CONFIG_CPU_HAS_LOAD_STORE_LR=y
|
|
CONFIG_CPU_HAS_PREFETCH=y
|
|
CONFIG_CPU_HAS_RIXI=y
|
|
CONFIG_CPU_HAS_SYNC=y
|
|
# CONFIG_CPU_LITTLE_ENDIAN is not set
|
|
CONFIG_CPU_MIPSR2=y
|
|
CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS=y
|
|
CONFIG_CPU_RMAP=y
|
|
CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y
|
|
CONFIG_CPU_SUPPORTS_HIGHMEM=y
|
|
CONFIG_CPU_SUPPORTS_HUGEPAGES=y
|
|
CONFIG_CRAMFS=y
|
|
CONFIG_CRC16=y
|
|
CONFIG_CRYPTO_AEAD=y
|
|
CONFIG_CRYPTO_AEAD2=y
|
|
CONFIG_CRYPTO_CRC32=y
|
|
CONFIG_CRYPTO_CRC32C=y
|
|
CONFIG_CRYPTO_HASH=y
|
|
CONFIG_CRYPTO_HASH2=y
|
|
CONFIG_CRYPTO_MANAGER=y
|
|
CONFIG_CRYPTO_MANAGER2=y
|
|
# CONFIG_CRYPTO_MD5_OCTEON is not set
|
|
CONFIG_CRYPTO_NULL2=y
|
|
CONFIG_CRYPTO_RNG2=y
|
|
# CONFIG_CRYPTO_SHA1_OCTEON is not set
|
|
# CONFIG_CRYPTO_SHA256_OCTEON is not set
|
|
# CONFIG_CRYPTO_SHA512_OCTEON is not set
|
|
CONFIG_DNOTIFY=y
|
|
CONFIG_DTC=y
|
|
CONFIG_EARLY_PRINTK=y
|
|
CONFIG_EDAC=y
|
|
CONFIG_EDAC_ATOMIC_SCRUB=y
|
|
# CONFIG_EDAC_DEBUG is not set
|
|
CONFIG_EDAC_LEGACY_SYSFS=y
|
|
CONFIG_EDAC_OCTEON_PC=y
|
|
CONFIG_EDAC_OCTEON_L2C=y
|
|
CONFIG_EDAC_OCTEON_LMC=y
|
|
CONFIG_EDAC_OCTEON_PCI=y
|
|
CONFIG_EDAC_SUPPORT=y
|
|
CONFIG_EFI_EARLYCON=y
|
|
CONFIG_ENABLE_MUST_CHECK=y
|
|
CONFIG_EXT4_FS=y
|
|
CONFIG_F2FS_FS=y
|
|
CONFIG_FAT_FS=y
|
|
CONFIG_FIXED_PHY=y
|
|
CONFIG_FONT_8x16=y
|
|
CONFIG_FONT_AUTOSELECT=y
|
|
CONFIG_FONT_SUPPORT=y
|
|
CONFIG_FRAME_WARN=2048
|
|
CONFIG_FS_IOMAP=y
|
|
CONFIG_FS_MBCACHE=y
|
|
CONFIG_FW_LOADER_PAGED_BUF=y
|
|
CONFIG_GENERIC_ALLOCATOR=y
|
|
CONFIG_GENERIC_CLOCKEVENTS=y
|
|
CONFIG_GENERIC_CMOS_UPDATE=y
|
|
CONFIG_GENERIC_CPU_AUTOPROBE=y
|
|
CONFIG_GENERIC_GETTIMEOFDAY=y
|
|
CONFIG_GENERIC_IOMAP=y
|
|
CONFIG_GENERIC_IRQ_SHOW=y
|
|
CONFIG_GENERIC_LIB_ASHLDI3=y
|
|
CONFIG_GENERIC_LIB_ASHRDI3=y
|
|
CONFIG_GENERIC_LIB_CMPDI2=y
|
|
CONFIG_GENERIC_LIB_LSHRDI3=y
|
|
CONFIG_GENERIC_LIB_UCMPDI2=y
|
|
CONFIG_GENERIC_PCI_IOMAP=y
|
|
CONFIG_GENERIC_SMP_IDLE_THREAD=y
|
|
CONFIG_GENERIC_TIME_VSYSCALL=y
|
|
CONFIG_GPIOLIB=y
|
|
CONFIG_GPIO_OCTEON=y
|
|
CONFIG_HANDLE_DOMAIN_IRQ=y
|
|
CONFIG_HARDWARE_WATCHPOINTS=y
|
|
CONFIG_HAS_DMA=y
|
|
CONFIG_HAS_IOMEM=y
|
|
CONFIG_HAS_IOPORT_MAP=y
|
|
CONFIG_HAVE_ARCH_COMPILER_H=y
|
|
CONFIG_HAVE_ARCH_JUMP_LABEL=y
|
|
CONFIG_HAVE_ARCH_KGDB=y
|
|
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
|
|
CONFIG_HAVE_ARCH_TRACEHOOK=y
|
|
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
|
|
CONFIG_HAVE_ASM_MODVERSIONS=y
|
|
CONFIG_HAVE_CONTEXT_TRACKING=y
|
|
CONFIG_HAVE_COPY_THREAD_TLS=y
|
|
CONFIG_HAVE_C_RECORDMCOUNT=y
|
|
CONFIG_HAVE_DEBUG_KMEMLEAK=y
|
|
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
|
|
CONFIG_HAVE_DMA_CONTIGUOUS=y
|
|
CONFIG_HAVE_DYNAMIC_FTRACE=y
|
|
CONFIG_HAVE_EBPF_JIT=y
|
|
CONFIG_HAVE_FAST_GUP=y
|
|
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
|
|
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
|
|
CONFIG_HAVE_FUNCTION_TRACER=y
|
|
CONFIG_HAVE_GENERIC_VDSO=y
|
|
CONFIG_HAVE_IDE=y
|
|
CONFIG_HAVE_IOREMAP_PROT=y
|
|
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
|
|
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
|
|
CONFIG_HAVE_KVM=y
|
|
CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y
|
|
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
|
|
CONFIG_HAVE_MEMORY_PRESENT=y
|
|
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
|
|
CONFIG_HAVE_NET_DSA=y
|
|
CONFIG_HAVE_OPROFILE=y
|
|
CONFIG_HAVE_PCI=y
|
|
CONFIG_HAVE_PERF_EVENTS=y
|
|
CONFIG_HAVE_RAPIDIO=y
|
|
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
|
|
CONFIG_HAVE_RSEQ=y
|
|
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
|
|
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
|
|
CONFIG_HOLES_IN_ZONE=y
|
|
CONFIG_HW_RANDOM=y
|
|
CONFIG_HW_RANDOM_OCTEON=y
|
|
CONFIG_HZ=250
|
|
CONFIG_HZ_250=y
|
|
CONFIG_HZ_PERIODIC=y
|
|
CONFIG_IMAGE_CMDLINE_HACK=y
|
|
CONFIG_I2C=y
|
|
CONFIG_I2C_OCTEON=y
|
|
CONFIG_INITRAMFS_SOURCE=""
|
|
CONFIG_IRQCHIP=y
|
|
CONFIG_IRQ_DOMAIN=y
|
|
CONFIG_IRQ_FORCED_THREADING=y
|
|
CONFIG_IRQ_WORK=y
|
|
CONFIG_JBD2=y
|
|
CONFIG_LIBFDT=y
|
|
CONFIG_LOCK_DEBUGGING_SUPPORT=y
|
|
CONFIG_MDIO_BUS=y
|
|
CONFIG_MDIO_CAVIUM=y
|
|
CONFIG_MDIO_DEVICE=y
|
|
CONFIG_MDIO_OCTEON=y
|
|
CONFIG_MEMFD_CREATE=y
|
|
CONFIG_MIGRATION=y
|
|
CONFIG_MIPS=y
|
|
# CONFIG_MIPS32_N32 is not set
|
|
# CONFIG_MIPS32_O32 is not set
|
|
CONFIG_MIPS_ASID_BITS=8
|
|
CONFIG_MIPS_ASID_SHIFT=0
|
|
# CONFIG_MIPS_CMDLINE_DTB_EXTEND is not set
|
|
CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y
|
|
# CONFIG_MIPS_CMDLINE_FROM_DTB is not set
|
|
CONFIG_MIPS_EBPF_JIT=y
|
|
CONFIG_MIPS_ELF_APPENDED_DTB=y
|
|
CONFIG_MIPS_L1_CACHE_SHIFT=7
|
|
CONFIG_MIPS_L1_CACHE_SHIFT_7=y
|
|
# CONFIG_MIPS_NO_APPENDED_DTB is not set
|
|
CONFIG_MIPS_NR_CPU_NR_MAP=1024
|
|
CONFIG_MIPS_NR_CPU_NR_MAP_1024=y
|
|
CONFIG_MIPS_PGD_C0_CONTEXT=y
|
|
# CONFIG_MIPS_RAW_APPENDED_DTB is not set
|
|
CONFIG_MIPS_SPRAM=y
|
|
# CONFIG_MIPS_VA_BITS_48 is not set
|
|
CONFIG_MMC=y
|
|
CONFIG_MMC_BLOCK=y
|
|
CONFIG_MMC_CAVIUM_OCTEON=y
|
|
# CONFIG_MMC_TIFM_SD is not set
|
|
CONFIG_MODULES_USE_ELF_REL=y
|
|
CONFIG_MODULES_USE_ELF_RELA=y
|
|
# CONFIG_MTD_CFI_INTELEXT is not set
|
|
CONFIG_MTD_CMDLINE_PARTS=y
|
|
CONFIG_MTD_PHYSMAP=y
|
|
CONFIG_MTD_SPI_NOR=y
|
|
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
|
|
CONFIG_NEED_DMA_MAP_STATE=y
|
|
CONFIG_NET_DSA=y
|
|
CONFIG_NET_FLOW_LIMIT=y
|
|
CONFIG_NLS=y
|
|
CONFIG_NLS_CODEPAGE_437=y
|
|
CONFIG_NLS_ISO8859_1=y
|
|
CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y
|
|
CONFIG_NR_CPUS=16
|
|
CONFIG_NR_CPUS_DEFAULT_64=y
|
|
CONFIG_NVMEM=y
|
|
CONFIG_OCTEON_ETHERNET=y
|
|
CONFIG_OCTEON_ILM=y
|
|
CONFIG_OCTEON_MGMT_ETHERNET=y
|
|
CONFIG_OCTEON_USB=y
|
|
CONFIG_OCTEON_WDT=y
|
|
CONFIG_OF=y
|
|
CONFIG_OF_ADDRESS=y
|
|
CONFIG_OF_EARLY_FLATTREE=y
|
|
CONFIG_OF_FLATTREE=y
|
|
CONFIG_OF_GPIO=y
|
|
CONFIG_OF_IRQ=y
|
|
CONFIG_OF_KOBJ=y
|
|
CONFIG_OF_MDIO=y
|
|
CONFIG_OF_NET=y
|
|
CONFIG_PADATA=y
|
|
# CONFIG_PARTITION_ADVANCED is not set
|
|
CONFIG_PCI=y
|
|
CONFIG_PCI_DOMAINS=y
|
|
CONFIG_PCI_DRIVERS_LEGACY=y
|
|
CONFIG_PCIEAER=y
|
|
CONFIG_PCIEPORTBUS=y
|
|
CONFIG_PERF_USE_VMALLOC=y
|
|
CONFIG_PGTABLE_LEVELS=3
|
|
CONFIG_PHYLIB=y
|
|
CONFIG_PHYS_ADDR_T_64BIT=y
|
|
CONFIG_POSIX_MQUEUE=y
|
|
CONFIG_POSIX_MQUEUE_SYSCTL=y
|
|
CONFIG_QUEUED_RWLOCKS=y
|
|
CONFIG_QUEUED_SPINLOCKS=y
|
|
CONFIG_RCU_NEED_SEGCBLIST=y
|
|
CONFIG_RCU_STALL_COMMON=y
|
|
CONFIG_RELAY=y
|
|
CONFIG_RFS_ACCEL=y
|
|
CONFIG_RPS=y
|
|
CONFIG_SCSI=y
|
|
CONFIG_SECCOMP=y
|
|
CONFIG_SECCOMP_FILTER=y
|
|
CONFIG_SERIAL_8250_DW=y
|
|
CONFIG_SERIAL_8250_DWLIB=y
|
|
CONFIG_SERIAL_MCTRL_GPIO=y
|
|
CONFIG_SG_POOL=y
|
|
CONFIG_SMP=y
|
|
CONFIG_SPARSEMEM=y
|
|
CONFIG_SPARSEMEM_STATIC=y
|
|
CONFIG_SPI=y
|
|
CONFIG_SPI_MASTER=y
|
|
CONFIG_SPI_OCTEON=y
|
|
CONFIG_SRCU=y
|
|
CONFIG_SWIOTLB=y
|
|
CONFIG_SWPHY=y
|
|
CONFIG_SYSCTL_EXCEPTION_TRACE=y
|
|
CONFIG_SYS_HAS_CPU_CAVIUM_OCTEON=y
|
|
CONFIG_SYS_HAS_EARLY_PRINTK=y
|
|
CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y
|
|
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
|
|
CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
|
|
CONFIG_SYS_SUPPORTS_HOTPLUG_CPU=y
|
|
CONFIG_SYS_SUPPORTS_HUGETLBFS=y
|
|
CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
|
|
CONFIG_SYS_SUPPORTS_RELOCATABLE=y
|
|
CONFIG_SYS_SUPPORTS_SMP=y
|
|
CONFIG_TARGET_ISA_REV=2
|
|
CONFIG_TICK_CPU_ACCOUNTING=y
|
|
CONFIG_TREE_RCU=y
|
|
CONFIG_TREE_SRCU=y
|
|
CONFIG_USB=y
|
|
CONFIG_USB_COMMON=y
|
|
CONFIG_USB_EHCI_BIG_ENDIAN_MMIO=y
|
|
CONFIG_USB_EHCI_HCD=y
|
|
CONFIG_USB_EHCI_HCD_PLATFORM=y
|
|
# CONFIG_USB_OCTEON_EHCI is not set
|
|
# CONFIG_USB_OCTEON_OHCI is not set
|
|
CONFIG_USB_OHCI_BIG_ENDIAN_MMIO=y
|
|
CONFIG_USB_OHCI_HCD=y
|
|
CONFIG_USB_OHCI_HCD_PLATFORM=y
|
|
CONFIG_USB_STORAGE=y
|
|
CONFIG_USB_SUPPORT=y
|
|
CONFIG_USE_OF=y
|
|
CONFIG_VFAT_FS=y
|
|
CONFIG_VITESSE_PHY=y
|
|
CONFIG_VM_EVENT_COUNTERS=y
|
|
CONFIG_WATCHDOG_CORE=y
|
|
CONFIG_WEAK_ORDERING=y
|
|
CONFIG_XPS=y
|
|
CONFIG_ZLIB_INFLATE=y
|
|
CONFIG_ZONE_DMA32=y
|