mvebu: add Methode euroDPU support
Add support for Methode euroDPU which is based on uDPU but does not have a second SFP cage, instead of which a Maxlinear G.hn IC is used. PHY mode is set to 1000Base-X despite Maxlinear IC being capable of 2500Base-X since until 5.15 support for mvebu is available trying to use 2500Base-X will cause buffer overruns for which the fix is not easily backportable. Installation instructions: 1. Boot the FIT initramfs image (openwrt-mvebu-cortexa53-methode_edpu-initramfs.itb) 2. sysupgrade using the openwrt-mvebu-cortexa53-methode_edpu-firmware.tgz Signed-off-by: Robert Marko <robert.marko@sartura.hr>
This commit is contained in:
		
				
					committed by
					
						
						Christian 'Ansuel' Marangi
					
				
			
			
				
	
			
			
			
						parent
						
							7f73acade0
						
					
				
				
					commit
					57a38c8d3e
				
			@@ -21,7 +21,8 @@ globalscale,espressobin-ultra)
 | 
			
		||||
	ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3" "wan"
 | 
			
		||||
	;;
 | 
			
		||||
marvell,armada-3720-db|\
 | 
			
		||||
methode,udpu)
 | 
			
		||||
methode,udpu|\
 | 
			
		||||
methode,edpu)
 | 
			
		||||
	ucidef_set_interfaces_lan_wan "eth1" "eth0"
 | 
			
		||||
	;;
 | 
			
		||||
*)
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,8 @@ preinit_mount_udpu() {
 | 
			
		||||
	. /lib/upgrade/common.sh
 | 
			
		||||
 | 
			
		||||
	case $(board_name) in
 | 
			
		||||
	methode,udpu)
 | 
			
		||||
	methode,udpu|\
 | 
			
		||||
	methode,edpu)
 | 
			
		||||
		# Check which device is detected
 | 
			
		||||
		[ -b "/dev/mmcblk0" ] && mmcdev="/dev/mmcblk0" || mmcdev="/dev/mmcblk1"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -33,7 +33,8 @@ platform_do_upgrade() {
 | 
			
		||||
	globalscale,espressobin-v7-emmc)
 | 
			
		||||
		legacy_sdcard_do_upgrade "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	methode,udpu)
 | 
			
		||||
	methode,udpu|\
 | 
			
		||||
	methode,edpu)
 | 
			
		||||
		platform_do_upgrade_uDPU "$1"
 | 
			
		||||
		;;
 | 
			
		||||
	*)
 | 
			
		||||
@@ -51,7 +52,8 @@ platform_copy_config() {
 | 
			
		||||
	globalscale,espressobin-v7-emmc)
 | 
			
		||||
		legacy_sdcard_copy_config
 | 
			
		||||
		;;
 | 
			
		||||
	methode,udpu)
 | 
			
		||||
	methode,udpu|\
 | 
			
		||||
	methode,edpu)
 | 
			
		||||
		platform_copy_config_uDPU
 | 
			
		||||
		;;
 | 
			
		||||
	esac
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,19 @@
 | 
			
		||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
 | 
			
		||||
 | 
			
		||||
/dts-v1/;
 | 
			
		||||
 | 
			
		||||
#include "armada-3720-uDPU.dtsi"
 | 
			
		||||
 | 
			
		||||
/ {
 | 
			
		||||
	model = "Methode eDPU Board";
 | 
			
		||||
	compatible = "methode,edpu", "marvell,armada3720", "marvell,armada3710";
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* PHY mode is set to 1000Base-X despite Maxlinear IC being capable of
 | 
			
		||||
 * 2500Base-X since until 5.15 support for mvebu is available trying to
 | 
			
		||||
 * use 2500Base-X will cause buffer overruns for which the fix is not
 | 
			
		||||
 * easily backportable.
 | 
			
		||||
 */
 | 
			
		||||
ð0 {
 | 
			
		||||
	phy-mode = "1000base-x";
 | 
			
		||||
};
 | 
			
		||||
@@ -92,3 +92,11 @@ define Device/methode_udpu
 | 
			
		||||
  BOOT_SCRIPT := udpu
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += methode_udpu
 | 
			
		||||
 | 
			
		||||
define Device/methode_edpu
 | 
			
		||||
  $(call Device/methode_udpu)
 | 
			
		||||
  DEVICE_MODEL := eDPU
 | 
			
		||||
  DEVICE_DTS := armada-3720-eDPU
 | 
			
		||||
  KERNEL_INITRAMFS := kernel-bin | gzip | fit gzip $$(KDIR)/image-$$(DEVICE_DTS).dtb
 | 
			
		||||
endef
 | 
			
		||||
TARGET_DEVICES += methode_edpu
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user