Browse Source

edgerouter-lite: add basic support

Booting up a initramfs+piggyback firmware configuration
via tftpboot works fine and gives a shell with network
support.
Waldemar Brodkorb 15 hours ago
parent
commit
5732a36010

+ 4 - 1
target/linux/config/Config.in.serial

@@ -136,6 +136,7 @@ config ADK_LINUX_KERNEL_SERIAL_8250
 	select ADK_LINUX_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_STARFIVE_VISIONFIVE2
 	select ADK_LINUX_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_BANANA_PRO
 	select ADK_LINUX_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_PCDUINO_3B
+	select ADK_LINUX_KERNEL_SERIAL_8250_DW if ADK_TARGET_SYSTEM_EDGEROUTER_LITE
 	select ADK_LINUX_KERNEL_SERIAL_8250_EXTENDED if ADK_TARGET_SYSTEM_VISIONFIVE2
 	select ADK_LINUX_KERNEL_SERIAL_8250_DMA if ADK_TARGET_SYSTEM_ORANGE_PI0
 	select ADK_LINUX_KERNEL_SERIAL_8250_DMA if ADK_TARGET_SYSTEM_IMGTEC_CI20
@@ -187,7 +188,8 @@ config ADK_LINUX_KERNEL_SERIAL_8250
 		|| ADK_TARGET_SYSTEM_BANANA_PRO \
 		|| ADK_TARGET_SYSTEM_PCDUINO_3B \
 		|| ADK_TARGET_SYSTEM_SHEEVAPLUG \
-		|| ADK_TARGET_SYSTEM_DE0_NANO
+		|| ADK_TARGET_SYSTEM_DE0_NANO \
+		|| ADK_TARGET_SYSTEM_EDGEROUTER_LITE
 	default y if ADK_TARGET_SYSTEM_XILINX_KINTEX7
 	default y if ADK_TARGET_SYSTEM_IMGTEC_CI20
 	default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2
@@ -229,6 +231,7 @@ config ADK_LINUX_KERNEL_SERIAL_8250
 	default y if ADK_TARGET_SYSTEM_PCDUINO_3B
 	default y if ADK_TARGET_SYSTEM_SHEEVAPLUG
 	default y if ADK_TARGET_SYSTEM_DE0_NANO
+	default y if ADK_TARGET_SYSTEM_EDGEROUTER_LITE
 	default n
 	help
 	  Serial driver for 8250 UART chip.

+ 7 - 0
target/mips64/Makefile

@@ -6,6 +6,9 @@ include $(ADK_TOPDIR)/mk/kernel-build.mk
 include $(ADK_TOPDIR)/mk/image.mk
 
 KERNEL:=$(LINUX_DIR)/$(ADK_TARGET_KERNEL)
+ifeq ($(ADK_TARGET_KERNEL_VMLINUX_BIN),y)
+KERNEL:=$(LINUX_DIR)/arch/mips/boot/vmlinux.bin
+endif
 OSTRIP:=-R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
 
 QEMU_ARGS:=-M malta
@@ -78,7 +81,11 @@ endif
 
 # image creation and kernel install
 kernel-strip:
+ifeq ($(ADK_TARGET_KERNEL_UIMAGE)$(ADK_TARGET_KERNEL_UIMAGEBIN)$(ADK_TARGET_KERNEL_UIMAGEGZ)$(ADK_TARGET_KERNEL_VMLINUX_BIN),)
 	$(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+else
+	$(CP) $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL)
+endif
 
 kernel-install: kernel-strip
 	@cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/${TARGET_KERNEL}

+ 15 - 0
target/mips64/kernel/edgerouter-lite

@@ -0,0 +1,15 @@
+CONFIG_MIPS=y
+CONFIG_CAVIUM_OCTEON_SOC=y
+CONFIG_CAVIUM_CN63XXP1=y
+CONFIG_CPU_MIPS64=y
+CONFIG_CPU_MIPSR2=y
+CONFIG_CPU_R4K_FPU=y
+CONFIG_MIPS32_N32=y
+CONFIG_USE_OF=y
+CONFIG_BUILTIN_DTB=y
+CONFIG_MIPS_ELF_APPENDED_DTB=y
+CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y
+CONFIG_BOOT_RAW=y
+CONFIG_STAGING=y
+CONFIG_OCTEON_ETHERNET=y
+CONFIG_USB_OCTEON_HCD=y

+ 15 - 0
target/mips64/systems/edgerouter-lite

@@ -0,0 +1,15 @@
+config ADK_TARGET_SYSTEM_EDGEROUTER_LITE
+	bool "Edgerouter Lite"
+	select ADK_TARGET_CPU_MIPS64_MIPS64R2
+	select ADK_TARGET_BIG_ENDIAN
+	select ADK_TARGET_HARD_FLOAT
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_PCI
+	select ADK_TARGET_WITH_NET
+	select ADK_TARGET_WITH_NETDEVICE
+	select ADK_TARGET_WITH_BLOCK
+	select ADK_TARGET_WITH_SERIAL
+	select ADK_TARGET_KERNEL_VMLINUX
+	help
+          System profile for EdgeRouter Lite.
+