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:
parent
7f73acade0
commit
57a38c8d3e
6 changed files with 37 additions and 5 deletions
|
@ -58,7 +58,8 @@ linksys,wrt3200acm|\
|
||||||
linksys,wrt32x)
|
linksys,wrt32x)
|
||||||
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
|
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
|
||||||
;;
|
;;
|
||||||
methode,udpu)
|
methode,udpu|\
|
||||||
|
methode,edpu)
|
||||||
idx="$(find_mtd_index u-boot-env)"
|
idx="$(find_mtd_index u-boot-env)"
|
||||||
if [ -n "$idx" ]; then
|
if [ -n "$idx" ]; then
|
||||||
ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x10000" "0x10000" "1"
|
ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x10000" "0x10000" "1"
|
||||||
|
|
|
@ -21,7 +21,8 @@ globalscale,espressobin-ultra)
|
||||||
ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3" "wan"
|
ucidef_set_interfaces_lan_wan "lan0 lan1 lan2 lan3" "wan"
|
||||||
;;
|
;;
|
||||||
marvell,armada-3720-db|\
|
marvell,armada-3720-db|\
|
||||||
methode,udpu)
|
methode,udpu|\
|
||||||
|
methode,edpu)
|
||||||
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
|
|
@ -8,7 +8,8 @@ preinit_mount_udpu() {
|
||||||
. /lib/upgrade/common.sh
|
. /lib/upgrade/common.sh
|
||||||
|
|
||||||
case $(board_name) in
|
case $(board_name) in
|
||||||
methode,udpu)
|
methode,udpu|\
|
||||||
|
methode,edpu)
|
||||||
# Check which device is detected
|
# Check which device is detected
|
||||||
[ -b "/dev/mmcblk0" ] && mmcdev="/dev/mmcblk0" || mmcdev="/dev/mmcblk1"
|
[ -b "/dev/mmcblk0" ] && mmcdev="/dev/mmcblk0" || mmcdev="/dev/mmcblk1"
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,8 @@ platform_do_upgrade() {
|
||||||
globalscale,espressobin-v7-emmc)
|
globalscale,espressobin-v7-emmc)
|
||||||
legacy_sdcard_do_upgrade "$1"
|
legacy_sdcard_do_upgrade "$1"
|
||||||
;;
|
;;
|
||||||
methode,udpu)
|
methode,udpu|\
|
||||||
|
methode,edpu)
|
||||||
platform_do_upgrade_uDPU "$1"
|
platform_do_upgrade_uDPU "$1"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
@ -51,7 +52,8 @@ platform_copy_config() {
|
||||||
globalscale,espressobin-v7-emmc)
|
globalscale,espressobin-v7-emmc)
|
||||||
legacy_sdcard_copy_config
|
legacy_sdcard_copy_config
|
||||||
;;
|
;;
|
||||||
methode,udpu)
|
methode,udpu|\
|
||||||
|
methode,edpu)
|
||||||
platform_copy_config_uDPU
|
platform_copy_config_uDPU
|
||||||
;;
|
;;
|
||||||
esac
|
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
|
BOOT_SCRIPT := udpu
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += methode_udpu
|
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
|
||||||
|
|
Loading…
Reference in a new issue