diff options
author | Robert Marko <robert.marko@sartura.hr> | 2022-03-30 14:04:10 +0200 |
---|---|---|
committer | Christian 'Ansuel' Marangi <ansuelsmth@gmail.com> | 2022-06-29 13:08:59 +0200 |
commit | 57a38c8d3e85dd94d4912febc3906db77a855b43 (patch) | |
tree | f0a61c317e938981d659beacc3c3fd665f575f95 /target/linux/mvebu | |
parent | 7f73acade0cde61341cb77e0dc74de51ac059d4f (diff) | |
download | upstream-57a38c8d3e85dd94d4912febc3906db77a855b43.tar.gz upstream-57a38c8d3e85dd94d4912febc3906db77a855b43.tar.bz2 upstream-57a38c8d3e85dd94d4912febc3906db77a855b43.zip |
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>
Diffstat (limited to 'target/linux/mvebu')
5 files changed, 35 insertions, 4 deletions
diff --git a/target/linux/mvebu/cortexa53/base-files/etc/board.d/02_network b/target/linux/mvebu/cortexa53/base-files/etc/board.d/02_network index 7da9de58c7..489090d77c 100644 --- a/target/linux/mvebu/cortexa53/base-files/etc/board.d/02_network +++ b/target/linux/mvebu/cortexa53/base-files/etc/board.d/02_network @@ -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" ;; *) diff --git a/target/linux/mvebu/cortexa53/base-files/lib/preinit/82_uDPU b/target/linux/mvebu/cortexa53/base-files/lib/preinit/82_uDPU index 12bbfc3725..8d5a482b82 100644 --- a/target/linux/mvebu/cortexa53/base-files/lib/preinit/82_uDPU +++ b/target/linux/mvebu/cortexa53/base-files/lib/preinit/82_uDPU @@ -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" diff --git a/target/linux/mvebu/cortexa53/base-files/lib/upgrade/platform.sh b/target/linux/mvebu/cortexa53/base-files/lib/upgrade/platform.sh index 0ee1d61506..cd41c39d7c 100755 --- a/target/linux/mvebu/cortexa53/base-files/lib/upgrade/platform.sh +++ b/target/linux/mvebu/cortexa53/base-files/lib/upgrade/platform.sh @@ -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 diff --git a/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-eDPU.dts b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-eDPU.dts new file mode 100644 index 0000000000..4db8b946df --- /dev/null +++ b/target/linux/mvebu/files/arch/arm64/boot/dts/marvell/armada-3720-eDPU.dts @@ -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"; +}; diff --git a/target/linux/mvebu/image/cortexa53.mk b/target/linux/mvebu/image/cortexa53.mk index bfaa597d9a..afe8d9ce21 100644 --- a/target/linux/mvebu/image/cortexa53.mk +++ b/target/linux/mvebu/image/cortexa53.mk @@ -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 |