diff --git a/configs/aarch64_defconfig b/configs/aarch64_defconfig index 9089e43f..a30e9903 100644 --- a/configs/aarch64_defconfig +++ b/configs/aarch64_defconfig @@ -27,7 +27,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-build BR2_ROOTFS_POST_IMAGE_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.44" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.45" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${BR2_EXTERNAL_INFIX_PATH}/board/aarch64/linux_defconfig" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/aarch64_minimal_defconfig b/configs/aarch64_minimal_defconfig index 6c7e900f..7268cf9a 100644 --- a/configs/aarch64_minimal_defconfig +++ b/configs/aarch64_minimal_defconfig @@ -27,7 +27,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-build BR2_ROOTFS_POST_IMAGE_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.44" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.45" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${BR2_EXTERNAL_INFIX_PATH}/board/aarch64/linux_defconfig" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/r2s_defconfig b/configs/r2s_defconfig index a43c6e8a..d26e558a 100644 --- a/configs/r2s_defconfig +++ b/configs/r2s_defconfig @@ -29,7 +29,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-image BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BR2_EXTERNAL_INFIX_PATH)/board/aarch64/r2s/genimage.cfg" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.44" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.45" BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_INFIX_PATH)/board/aarch64/r2s/rk3328-nanopi-r2s-dts.patch" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${BR2_EXTERNAL_INFIX_PATH}/board/aarch64/r2s/linux_defconfig" diff --git a/configs/x86_64_defconfig b/configs/x86_64_defconfig index 8a8b51d2..fd2d04af 100644 --- a/configs/x86_64_defconfig +++ b/configs/x86_64_defconfig @@ -26,7 +26,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="board/qemu/x86_64/post-build.sh ${BR2_EXTERNAL_INF BR2_ROOTFS_POST_IMAGE_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.44" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.45" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${BR2_EXTERNAL_INFIX_PATH}/board/x86_64/linux_defconfig" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/configs/x86_64_minimal_defconfig b/configs/x86_64_minimal_defconfig index 4bcb8289..871ad8f8 100644 --- a/configs/x86_64_minimal_defconfig +++ b/configs/x86_64_minimal_defconfig @@ -27,7 +27,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="board/qemu/x86_64/post-build.sh ${BR2_EXTERNAL_INF BR2_ROOTFS_POST_IMAGE_SCRIPT="${BR2_EXTERNAL_INFIX_PATH}/board/common/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.44" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.12.45" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${BR2_EXTERNAL_INFIX_PATH}/board/x86_64/linux_defconfig" BR2_LINUX_KERNEL_INSTALL_TARGET=y diff --git a/doc/ChangeLog.md b/doc/ChangeLog.md index da3571a2..12cf44f3 100644 --- a/doc/ChangeLog.md +++ b/doc/ChangeLog.md @@ -3,6 +3,14 @@ Change Log All notable changes to the project are documented in this file. +[v25.09.0][UNRELEASED] - +------------------------- + +### Changes +- Upgrade Linux kernel to 6.12.45 (LTS) + +### Fixes + [v25.08.0][] - 2025-09-01 ------------------------- diff --git a/patches/linux/6.12.44/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch b/patches/linux/6.12.45/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch similarity index 94% rename from patches/linux/6.12.44/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch rename to patches/linux/6.12.45/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch index b1d1d7d6..868a80f9 100644 --- a/patches/linux/6.12.44/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch +++ b/patches/linux/6.12.45/0001-FIX-net-dsa-mv88e6xxx-Fix-timeout-on-waiting-for-PPU.patch @@ -1,4 +1,4 @@ -From b4f8d056cfbf3af9116952f5f03ed2bfba13fcbb Mon Sep 17 00:00:00 2001 +From b17d0b24ef5119f5a5d6c1c4f0f64a7fd40eb9c3 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Mar 2024 10:27:24 +0100 Subject: [PATCH 01/30] [FIX] net: dsa: mv88e6xxx: Fix timeout on waiting for diff --git a/patches/linux/6.12.44/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch b/patches/linux/6.12.45/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch similarity index 99% rename from patches/linux/6.12.44/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch rename to patches/linux/6.12.45/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch index a07b1e9b..91431cde 100644 --- a/patches/linux/6.12.44/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch +++ b/patches/linux/6.12.45/0002-net-dsa-mv88e6xxx-Improve-indirect-register-access-p.patch @@ -1,4 +1,4 @@ -From b9bf83b003601dc306d3a2cd7dd51f2795bbb451 Mon Sep 17 00:00:00 2001 +From b860638f4b4beb87e594489fbfb853733055f511 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 15:52:43 +0100 Subject: [PATCH 02/30] net: dsa: mv88e6xxx: Improve indirect register access diff --git a/patches/linux/6.12.44/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch b/patches/linux/6.12.45/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch similarity index 95% rename from patches/linux/6.12.44/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch rename to patches/linux/6.12.45/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch index 7d4f4c18..b16e7fec 100644 --- a/patches/linux/6.12.44/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch +++ b/patches/linux/6.12.45/0003-net-dsa-mv88e6xxx-Honor-ports-being-managed-via-in-b.patch @@ -1,4 +1,4 @@ -From c6171e8b4f0a7acb1a8d57e9fe8900e132917e82 Mon Sep 17 00:00:00 2001 +From 2a2a0c493171231effe779e90674cf0b0781aca8 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Mon, 22 Apr 2024 23:18:01 +0200 Subject: [PATCH 03/30] net: dsa: mv88e6xxx: Honor ports being managed via diff --git a/patches/linux/6.12.44/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch b/patches/linux/6.12.45/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch similarity index 98% rename from patches/linux/6.12.44/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch rename to patches/linux/6.12.45/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch index 9840d232..e3c9f22a 100644 --- a/patches/linux/6.12.44/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch +++ b/patches/linux/6.12.45/0004-net-dsa-mv88e6xxx-Limit-rsvd2cpu-policy-to-user-port.patch @@ -1,4 +1,4 @@ -From 8138197f76730926e96d94b532d0215de20470af Mon Sep 17 00:00:00 2001 +From 739504c5079ce8bef32f74a60a3d64658820afb0 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 24 Apr 2024 22:41:04 +0200 Subject: [PATCH 04/30] net: dsa: mv88e6xxx: Limit rsvd2cpu policy to user diff --git a/patches/linux/6.12.44/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch b/patches/linux/6.12.45/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch similarity index 99% rename from patches/linux/6.12.44/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch rename to patches/linux/6.12.45/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch index fd2e11a4..4a06b655 100644 --- a/patches/linux/6.12.44/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch +++ b/patches/linux/6.12.45/0005-net-dsa-mv88e6xxx-Add-LED-infrastructure.patch @@ -1,4 +1,4 @@ -From a02245c2aa6783aae016266ef3f226f85bf402da Mon Sep 17 00:00:00 2001 +From 120982bf4321ef9a0aca86a58de41b3889820218 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 16 Nov 2023 19:44:32 +0100 Subject: [PATCH 05/30] net: dsa: mv88e6xxx: Add LED infrastructure diff --git a/patches/linux/6.12.44/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch b/patches/linux/6.12.45/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch similarity index 99% rename from patches/linux/6.12.44/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch rename to patches/linux/6.12.45/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch index 4d772dac..445721a8 100644 --- a/patches/linux/6.12.44/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch +++ b/patches/linux/6.12.45/0006-net-dsa-mv88e6xxx-Add-LED-support-for-6393X.patch @@ -1,4 +1,4 @@ -From cf091bc712f67eaa733194de9b84003d27221053 Mon Sep 17 00:00:00 2001 +From aaced18de42d22b092fcfdf06b408e580340e53a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 16 Nov 2023 21:59:35 +0100 Subject: [PATCH 06/30] net: dsa: mv88e6xxx: Add LED support for 6393X diff --git a/patches/linux/6.12.44/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch b/patches/linux/6.12.45/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch similarity index 95% rename from patches/linux/6.12.44/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch rename to patches/linux/6.12.45/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch index 510b5785..be93af5d 100644 --- a/patches/linux/6.12.44/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch +++ b/patches/linux/6.12.45/0007-net-dsa-tag_dsa-Use-tag-priority-as-initial-skb-prio.patch @@ -1,4 +1,4 @@ -From 630151bff3fa0f6ef64c326ca874ef9858bdcb8a Mon Sep 17 00:00:00 2001 +From c9899deafacca21badc0f69650c15240cf16affa Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 10:38:42 +0200 Subject: [PATCH 07/30] net: dsa: tag_dsa: Use tag priority as initial diff --git a/patches/linux/6.12.44/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch b/patches/linux/6.12.45/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch similarity index 97% rename from patches/linux/6.12.44/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch rename to patches/linux/6.12.45/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch index db57380c..5ee0f938 100644 --- a/patches/linux/6.12.44/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch +++ b/patches/linux/6.12.45/0008-net-dsa-Support-MDB-memberships-whose-L2-addresses-o.patch @@ -1,4 +1,4 @@ -From a87bfa946479faea1dce4d9ee1034922263dc758 Mon Sep 17 00:00:00 2001 +From 15221467565f0f282c4f992d0577a45874cc07dd Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 16 Jan 2024 16:00:55 +0100 Subject: [PATCH 08/30] net: dsa: Support MDB memberships whose L2 addresses diff --git a/patches/linux/6.12.44/0009-net-dsa-Support-EtherType-based-priority-overrides.patch b/patches/linux/6.12.45/0009-net-dsa-Support-EtherType-based-priority-overrides.patch similarity index 98% rename from patches/linux/6.12.44/0009-net-dsa-Support-EtherType-based-priority-overrides.patch rename to patches/linux/6.12.45/0009-net-dsa-Support-EtherType-based-priority-overrides.patch index ff125875..8b2ea868 100644 --- a/patches/linux/6.12.44/0009-net-dsa-Support-EtherType-based-priority-overrides.patch +++ b/patches/linux/6.12.45/0009-net-dsa-Support-EtherType-based-priority-overrides.patch @@ -1,4 +1,4 @@ -From 8465eec4cbeccb7eb683820e8e4f4601ce05509f Mon Sep 17 00:00:00 2001 +From 2cba1d99ca6f51a04f67efc27c9c46b3ed14d796 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 21 Mar 2024 19:12:15 +0100 Subject: [PATCH 09/30] net: dsa: Support EtherType based priority overrides diff --git a/patches/linux/6.12.44/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch b/patches/linux/6.12.45/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch similarity index 99% rename from patches/linux/6.12.44/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch rename to patches/linux/6.12.45/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch index 9d36dd20..fc55836f 100644 --- a/patches/linux/6.12.44/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch +++ b/patches/linux/6.12.45/0010-net-dsa-mv88e6xxx-Support-EtherType-based-priority-o.patch @@ -1,4 +1,4 @@ -From 6809a220eb75ef2ac5eed033028cd0a98948cca3 Mon Sep 17 00:00:00 2001 +From 491d425be06d272c35cb46548e2b6ea54c043956 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 22 Mar 2024 16:15:43 +0100 Subject: [PATCH 10/30] net: dsa: mv88e6xxx: Support EtherType based priority diff --git a/patches/linux/6.12.44/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch b/patches/linux/6.12.45/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch similarity index 98% rename from patches/linux/6.12.44/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch rename to patches/linux/6.12.45/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch index 715e9ad9..5423049c 100644 --- a/patches/linux/6.12.44/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch +++ b/patches/linux/6.12.45/0011-net-dsa-mv88e6xxx-Add-mqprio-qdisc-support.patch @@ -1,4 +1,4 @@ -From ecc33c81e71000a7db4abf1fd769783528883c0a Mon Sep 17 00:00:00 2001 +From b415909d2a9a1645926ce09542d9c84719db15d7 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 28 May 2024 11:04:22 +0200 Subject: [PATCH 11/30] net: dsa: mv88e6xxx: Add mqprio qdisc support diff --git a/patches/linux/6.12.44/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch b/patches/linux/6.12.45/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch similarity index 97% rename from patches/linux/6.12.44/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch rename to patches/linux/6.12.45/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch index 0e427708..530a51cb 100644 --- a/patches/linux/6.12.44/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch +++ b/patches/linux/6.12.45/0012-net-dsa-mv88e6xxx-Use-VLAN-prio-over-IP-when-both-ar.patch @@ -1,4 +1,4 @@ -From 446ee49b7ecef20c17fa7fd8c2d196236fdbeb0f Mon Sep 17 00:00:00 2001 +From e15ee1e8f94f033b4f34279294b13b48a3d2c648 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 29 May 2024 13:20:41 +0200 Subject: [PATCH 12/30] net: dsa: mv88e6xxx: Use VLAN prio over IP when both diff --git a/patches/linux/6.12.44/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch b/patches/linux/6.12.45/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch similarity index 98% rename from patches/linux/6.12.44/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch rename to patches/linux/6.12.45/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch index 934eae35..68f7a93d 100644 --- a/patches/linux/6.12.44/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch +++ b/patches/linux/6.12.45/0013-FIX-net-dsa-mv88e6xxx-Trap-locally-terminated-VLANs.patch @@ -1,4 +1,4 @@ -From 379d6362066d1e3944f2610b6769bcb170f5cfb5 Mon Sep 17 00:00:00 2001 +From 09590ee1dcb17adee292add407cfcb1d1647685a Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 26 Nov 2024 19:45:59 +0100 Subject: [PATCH 13/30] [FIX] net: dsa: mv88e6xxx: Trap locally terminated diff --git a/patches/linux/6.12.44/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch b/patches/linux/6.12.45/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch similarity index 98% rename from patches/linux/6.12.44/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch rename to patches/linux/6.12.45/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch index 010d4fdc..c8a368d2 100644 --- a/patches/linux/6.12.44/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch +++ b/patches/linux/6.12.45/0014-net-phy-marvell10g-Support-firmware-loading-on-88X33.patch @@ -1,4 +1,4 @@ -From c1c803aae5530c6ad8cba5e1b690309343d70581 Mon Sep 17 00:00:00 2001 +From d3cedfa6405e8e855bd034a51597584b004dc833 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 19 Sep 2023 18:38:10 +0200 Subject: [PATCH 14/30] net: phy: marvell10g: Support firmware loading on diff --git a/patches/linux/6.12.44/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch b/patches/linux/6.12.45/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch similarity index 96% rename from patches/linux/6.12.44/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch rename to patches/linux/6.12.45/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch index e0e8b6a2..79680396 100644 --- a/patches/linux/6.12.44/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch +++ b/patches/linux/6.12.45/0015-net-phy-marvell10g-Fix-power-up-when-strapped-to-sta.patch @@ -1,4 +1,4 @@ -From f78961c99e9027e093d5fc4b16b890acb0f4c906 Mon Sep 17 00:00:00 2001 +From 20c76093cab636da669779bf12e2726daa839ff9 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 21 Nov 2023 20:15:24 +0100 Subject: [PATCH 15/30] net: phy: marvell10g: Fix power-up when strapped to diff --git a/patches/linux/6.12.44/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch b/patches/linux/6.12.45/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch similarity index 99% rename from patches/linux/6.12.44/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch rename to patches/linux/6.12.45/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch index a032838e..a6b152d1 100644 --- a/patches/linux/6.12.44/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch +++ b/patches/linux/6.12.45/0016-net-phy-marvell10g-Add-LED-support-for-88X3310.patch @@ -1,4 +1,4 @@ -From f91ec427a88888262de0e670ec1d6d5a2dd1ea19 Mon Sep 17 00:00:00 2001 +From cf1d957921a498300441320ce15d18382a94fae4 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 15 Nov 2023 20:58:42 +0100 Subject: [PATCH 16/30] net: phy: marvell10g: Add LED support for 88X3310 diff --git a/patches/linux/6.12.44/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch b/patches/linux/6.12.45/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch similarity index 97% rename from patches/linux/6.12.44/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch rename to patches/linux/6.12.45/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch index 1b0a36af..47f3b72f 100644 --- a/patches/linux/6.12.44/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch +++ b/patches/linux/6.12.45/0017-net-phy-marvell10g-Support-LEDs-tied-to-a-single-med.patch @@ -1,4 +1,4 @@ -From 4bd8aa58f2cf82d8df62624a030ca822d1991e3f Mon Sep 17 00:00:00 2001 +From 468f8f10888e8ab41975088e68a1a291f4ac0d58 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 12 Dec 2023 09:51:05 +0100 Subject: [PATCH 17/30] net: phy: marvell10g: Support LEDs tied to a single diff --git a/patches/linux/6.12.44/0018-net-phy-Do-not-resume-PHY-when-attaching.patch b/patches/linux/6.12.45/0018-net-phy-Do-not-resume-PHY-when-attaching.patch similarity index 94% rename from patches/linux/6.12.44/0018-net-phy-Do-not-resume-PHY-when-attaching.patch rename to patches/linux/6.12.45/0018-net-phy-Do-not-resume-PHY-when-attaching.patch index cd2338d9..0663528c 100644 --- a/patches/linux/6.12.44/0018-net-phy-Do-not-resume-PHY-when-attaching.patch +++ b/patches/linux/6.12.45/0018-net-phy-Do-not-resume-PHY-when-attaching.patch @@ -1,4 +1,4 @@ -From 462548c531a48ea97f16fe02f8214304bf5717eb Mon Sep 17 00:00:00 2001 +From a5255b6fcd938722071c6f39ff2d23fd97376b6e Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 27 Mar 2024 10:10:19 +0100 Subject: [PATCH 18/30] net: phy: Do not resume PHY when attaching diff --git a/patches/linux/6.12.44/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch b/patches/linux/6.12.45/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch similarity index 99% rename from patches/linux/6.12.44/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch rename to patches/linux/6.12.45/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch index 4d95c43a..2753cc04 100644 --- a/patches/linux/6.12.44/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch +++ b/patches/linux/6.12.45/0019-net-bridge-avoid-classifying-unknown-multicast-as-mr.patch @@ -1,4 +1,4 @@ -From 550d6f5a0463f39f2959415495b86c79816d4055 Mon Sep 17 00:00:00 2001 +From 42c7c014fe63c98fc81757ae0df53699d08d3ea7 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 4 Mar 2024 16:47:28 +0100 Subject: [PATCH 19/30] net: bridge: avoid classifying unknown multicast as diff --git a/patches/linux/6.12.44/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch b/patches/linux/6.12.45/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch similarity index 95% rename from patches/linux/6.12.44/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch rename to patches/linux/6.12.45/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch index 51d24b70..b0ac1f4a 100644 --- a/patches/linux/6.12.44/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch +++ b/patches/linux/6.12.45/0020-net-bridge-Ignore-router-ports-when-forwarding-L2-mu.patch @@ -1,4 +1,4 @@ -From b1e6fb8acc320967fa2435dda641ec2031fd55cc Mon Sep 17 00:00:00 2001 +From b6b8cef52cef59809f585a48e3272bc13f178d82 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Tue, 5 Mar 2024 06:44:41 +0100 Subject: [PATCH 20/30] net: bridge: Ignore router ports when forwarding L2 diff --git a/patches/linux/6.12.44/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch b/patches/linux/6.12.45/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch similarity index 99% rename from patches/linux/6.12.44/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch rename to patches/linux/6.12.45/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch index f037ef51..dc82ee8a 100644 --- a/patches/linux/6.12.44/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch +++ b/patches/linux/6.12.45/0021-net-bridge-drop-delay-for-applying-strict-multicast-.patch @@ -1,4 +1,4 @@ -From c0de0c952b98eea283925a7f15255a7501c7343c Mon Sep 17 00:00:00 2001 +From 96749ad0bc548f3add2d131809de6f80be7d69c2 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 4 Apr 2024 16:36:30 +0200 Subject: [PATCH 21/30] net: bridge: drop delay for applying strict multicast diff --git a/patches/linux/6.12.44/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch b/patches/linux/6.12.45/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch similarity index 98% rename from patches/linux/6.12.44/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch rename to patches/linux/6.12.45/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch index 49f7bccf..4c0674c2 100644 --- a/patches/linux/6.12.44/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch +++ b/patches/linux/6.12.45/0022-net-bridge-Differentiate-MDB-additions-from-modifica.patch @@ -1,4 +1,4 @@ -From 778143529c0df2eeada5e2c682156d62103b92bc Mon Sep 17 00:00:00 2001 +From a1f922b3646af126da825a2dd0ba32d73abefd1c Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Thu, 16 May 2024 14:51:54 +0200 Subject: [PATCH 22/30] net: bridge: Differentiate MDB additions from diff --git a/patches/linux/6.12.44/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch b/patches/linux/6.12.45/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch similarity index 96% rename from patches/linux/6.12.44/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch rename to patches/linux/6.12.45/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch index 91bb7597..a869bb74 100644 --- a/patches/linux/6.12.44/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch +++ b/patches/linux/6.12.45/0023-nvmem-layouts-onie-tlv-Let-device-probe-even-when-TL.patch @@ -1,4 +1,4 @@ -From adc96c55eaea59edd98026c209f435238ceeac09 Mon Sep 17 00:00:00 2001 +From 54454a98875cdc439dd2d7c546a4e555ae46caed Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Fri, 24 Nov 2023 23:29:55 +0100 Subject: [PATCH 23/30] nvmem: layouts: onie-tlv: Let device probe even when diff --git a/patches/linux/6.12.44/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch b/patches/linux/6.12.45/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch similarity index 96% rename from patches/linux/6.12.44/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch rename to patches/linux/6.12.45/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch index 49e63817..582f9058 100644 --- a/patches/linux/6.12.44/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch +++ b/patches/linux/6.12.45/0024-usb-core-adjust-log-level-for-unauthorized-devices.patch @@ -1,4 +1,4 @@ -From fecf7749e91bd1d2d54e2003daefe97ae449b04c Mon Sep 17 00:00:00 2001 +From adc984529922b8ead7e393f133e81c4aba8a8d9f Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 29 Apr 2024 15:14:51 +0200 Subject: [PATCH 24/30] usb: core: adjust log level for unauthorized devices diff --git a/patches/linux/6.12.44/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch b/patches/linux/6.12.45/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch similarity index 95% rename from patches/linux/6.12.44/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch rename to patches/linux/6.12.45/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch index 23ed2e64..65538556 100644 --- a/patches/linux/6.12.44/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch +++ b/patches/linux/6.12.45/0025-net-dsa-mv88e6xxx-collapse-disabled-state-into-block.patch @@ -1,4 +1,4 @@ -From c89e3e44747f2cddfaf47e0a55027a14579ca4ce Mon Sep 17 00:00:00 2001 +From ffa0d98802a2445e47122b8c6fb3b37592dfbd1e Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Thu, 16 Jan 2025 12:35:12 +0100 Subject: [PATCH 25/30] net: dsa: mv88e6xxx: collapse disabled state into diff --git a/patches/linux/6.12.44/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch b/patches/linux/6.12.45/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch similarity index 98% rename from patches/linux/6.12.44/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch rename to patches/linux/6.12.45/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch index b456c191..c946ab32 100644 --- a/patches/linux/6.12.44/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch +++ b/patches/linux/6.12.45/0026-net-dsa-mv88e6xxx-Only-activate-LAG-offloading-when-.patch @@ -1,4 +1,4 @@ -From 34de4ecc90144fb98aae12cbc22c847eb0e1f92f Mon Sep 17 00:00:00 2001 +From 44c483f21c129b8e4ef8892192e31dbe2761be34 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Wed, 12 Feb 2025 22:03:14 +0100 Subject: [PATCH 26/30] net: dsa: mv88e6xxx: Only activate LAG offloading when diff --git a/patches/linux/6.12.44/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch b/patches/linux/6.12.45/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch similarity index 95% rename from patches/linux/6.12.44/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch rename to patches/linux/6.12.45/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch index 3be73a3f..8139cb39 100644 --- a/patches/linux/6.12.44/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch +++ b/patches/linux/6.12.45/0027-net-usb-r8152-add-r8153b-support-for-link-activity-L.patch @@ -1,4 +1,4 @@ -From 10df1d67f996439e1f4dd41ec761c94631383930 Mon Sep 17 00:00:00 2001 +From 1e8f38520f4189fc18aa68aa0ec2daebc8ccba20 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 11 Aug 2024 11:27:35 +0200 Subject: [PATCH 27/30] net: usb: r8152: add r8153b support for link/activity diff --git a/patches/linux/6.12.44/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch b/patches/linux/6.12.45/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch similarity index 96% rename from patches/linux/6.12.44/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch rename to patches/linux/6.12.45/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch index 9d547143..c0de0baa 100644 --- a/patches/linux/6.12.44/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch +++ b/patches/linux/6.12.45/0028-arm64-dts-mediatek-mt7986a-rename-BPi-R3-ports-to-ma.patch @@ -1,4 +1,4 @@ -From cd45846aea45d8a51d40472ee5993de43a98d4a6 Mon Sep 17 00:00:00 2001 +From 6ff60fec79ca075406d2631ca1f8a514561adbd0 Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 10 Aug 2025 18:52:54 +0200 Subject: [PATCH 28/30] arm64: dts: mediatek: mt7986a: rename BPi R3 ports to diff --git a/patches/linux/6.12.44/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch b/patches/linux/6.12.45/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch similarity index 98% rename from patches/linux/6.12.44/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch rename to patches/linux/6.12.45/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch index fff8362c..2d4a9072 100644 --- a/patches/linux/6.12.44/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch +++ b/patches/linux/6.12.45/0029-drm-panel-simple-Add-a-timing-for-the-Raspberry-Pi-7.patch @@ -1,4 +1,4 @@ -From b978886aa20a68f9d5be378797fa45054c249905 Mon Sep 17 00:00:00 2001 +From 64a98c298358ca9332f6073ec9d52489075c9e65 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Wed, 20 Aug 2025 21:38:24 +0200 Subject: [PATCH 29/30] drm/panel-simple: Add a timing for the Raspberry Pi 7" diff --git a/patches/linux/6.12.44/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch b/patches/linux/6.12.45/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch similarity index 98% rename from patches/linux/6.12.44/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch rename to patches/linux/6.12.45/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch index 98b30217..aa6407db 100644 --- a/patches/linux/6.12.44/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch +++ b/patches/linux/6.12.45/0030-input-touchscreen-edt-ft5x06-Add-polled-mode.patch @@ -1,4 +1,4 @@ -From b6b066a94032f06e669685208969cf00172a361e Mon Sep 17 00:00:00 2001 +From 177a00df238e615a5aaea9a4ecdd01e7f747f8f4 Mon Sep 17 00:00:00 2001 From: Mattias Walström Date: Thu, 21 Aug 2025 11:20:23 +0200 Subject: [PATCH 30/30] input:touchscreen:edt-ft5x06: Add polled mode diff --git a/patches/linux/linux.hash b/patches/linux/linux.hash index 7b6c35c7..bc97cf69 100644 --- a/patches/linux/linux.hash +++ b/patches/linux/linux.hash @@ -1,2 +1,2 @@ # Calculated with ../utils/kernel-refresh.sh -sha256 b650210ed3027b224969d148aa377452a9aad3ae7f2851abedd31adfef16bdae linux-6.12.44.tar.xz +sha256 8f95a8549cfbdfb89c1181a1f55a971f04dfcd629508a2ed70b777ab92f9db3e linux-6.12.45.tar.xz diff --git a/test/case/all.yaml b/test/case/all.yaml index 22cbecec..74174a30 100644 --- a/test/case/all.yaml +++ b/test/case/all.yaml @@ -6,12 +6,26 @@ infamy: specification: False +- case: meta/bootorder.py + infamy: + specification: False + +- case: meta/check-version.py + infamy: + specification: False + + - name: Misc tests suite: misc/misc.yaml - name: ietf-system suite: ietf_system/ietf_system.yaml +# Upgrade may leave wrong boot order +- case: meta/bootorder.py + infamy: + specification: False + - name: ietf-syslog suite: ietf_syslog/ietf_syslog.yaml diff --git a/test/case/meta/bootorder.py b/test/case/meta/bootorder.py new file mode 100755 index 00000000..a82d4c7b --- /dev/null +++ b/test/case/meta/bootorder.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import infamy + +with infamy.Test() as test: + with test.step("Discover topology and attach to available DUTs"): + env = infamy.Env(False) + ctrl = env.ptop.get_ctrl() + duts = {} + duts_state = {} + for ix in env.ptop.get_infixen(): + cport, ixport = env.ptop.get_mgmt_link(ctrl, ix) + print(f"Attaching to {ix}:{ixport} via {ctrl}:{cport}") + duts[ix] = env.attach(ix, ixport) + + with test.step("Verify bootorder"): + for name, tgt in duts.items(): + expected = env.ptop.get_expected_boot(name) + running = tgt.get_data("/ietf-system:system-state") + running = running['system-state']['software']['booted'] + print(f"{name}: booted: {running} expected: {expected}") + + if running != expected: + test.fail() + test.succeed() diff --git a/test/case/meta/check-version.py b/test/case/meta/check-version.py new file mode 100755 index 00000000..1ec8570a --- /dev/null +++ b/test/case/meta/check-version.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +import infamy +import os + +with infamy.Test() as test: + with test.step("Discover topology and attach to available DUTs"): + env = infamy.Env(False) + ctrl = env.ptop.get_ctrl() + duts = {} + duts_state = {} + for ix in env.ptop.get_infixen(): + cport, ixport = env.ptop.get_mgmt_link(ctrl, ix) + print(f"Attaching to {ix}:{ixport} via {ctrl}:{cport}") + duts[ix] = env.attach(ix, ixport) + + with test.step("Verify software version"): + expected=os.environ.get("VERSION") + for name, tgt in duts.items(): + running = tgt.get_data("/ietf-system:system-state") + running = running['system-state']['platform']['os-version'] + print(f"{name}: booted: {running} expected {expected}") + if running != expected: + test.fail() + test.succeed() diff --git a/test/case/meta/reproducible.py b/test/case/meta/reproducible.py index e6f68515..6e2ad565 100755 --- a/test/case/meta/reproducible.py +++ b/test/case/meta/reproducible.py @@ -13,27 +13,4 @@ with infamy.Test() as test: else: print(f"Specify PYTHONHASHSEED={seed} to reproduce this test environment") - with test.step("Discover topology and attach to available DUTs"): - env = infamy.Env(False) - ctrl = env.ptop.get_ctrl() - - duts = {} - for ix in env.ptop.get_infixen(): - cport, ixport = env.ptop.get_mgmt_link(ctrl, ix) - print(f"Attaching to {ix}:{ixport} via {ctrl}:{cport}") - duts[ix] = env.attach(ix, ixport) - - with test.step("Log running software versions"): - for name, tgt in duts.items(): - sys = tgt.get_data("/ietf-system:system-state") - sw = sys["system-state"]["software"] - plt = sys["system-state"]["platform"] - - print(f"{name}:") - for k,v in plt.items(): - print(f" {k:<16s} {v}") - - for k in ("compatible", "booted"): - print(f" {k:<16s} {sw[k]}") - test.succeed() diff --git a/test/env b/test/env index 10eed98f..b5e651a5 100755 --- a/test/env +++ b/test/env @@ -184,6 +184,7 @@ while getopts "b:cCDf:hiKp:q:rt:" opt; do kvm= ;; p) + version=$(unsquashfs -cat $OPTARG manifest.raucm | awk -F'=' '/^version=/ {print $2}') INFAMY_ARGS="$INFAMY_ARGS -p $OPTARG" ;; q) @@ -234,6 +235,7 @@ if [ "$containerize" ]; then --env NINEPM_PROJ_CONFIG="$NINEPM_PROJ_CONFIG" \ --env QENETH_PATH="$testdir/templates:$testdir" \ --env PS1="$(build_ps1)" \ + --env VERSION="$version" \ $extra_env \ --expose 9001-9010 --publish-all \ -v "$HOME/.infix/.ash_history":/root/.ash_history \ diff --git a/test/infamy/topology.py b/test/infamy/topology.py index 00f3efcf..2332945e 100644 --- a/test/infamy/topology.py +++ b/test/infamy/topology.py @@ -131,6 +131,13 @@ class Topology: return qstrip(password) if password is not None else "admin" + def get_expected_boot(self, node): + n = self.dotg.get_node(node) + b = n[0] if n else {} + boot = b.get("expected_boot") + + return _qstrip(boot) + def get_link(self, src, dst, flt=lambda _: True): es = self.g.get_edge_data(src, dst) for e in es.values(): @@ -150,7 +157,6 @@ class Topology: def get_infixen(self): return self.get_nodes(lambda _, attrs: compatible(attrs, {"requires": {"infix"}})) - def get_attr(self, name, default=None): return _qstrip(self.dotg.get_attributes().get(name, default)) diff --git a/test/test.mk b/test/test.mk index 53c3391d..0d75fb18 100644 --- a/test/test.mk +++ b/test/test.mk @@ -14,8 +14,7 @@ mode-qeneth := -q $(test-dir)/virt/quad mode-host := -t $(or $(TOPOLOGY),/etc/infamy.dot) mode-run := -t $(BINARIES_DIR)/qemu.dot mode := $(mode-$(TEST_MODE)) - -INFIX_IMAGE_ID := $(call qstrip,$(INFIX_IMAGE_ID)) +INFIX_IMAGE_ID := $(call qstrip,$(INFIX_IMAGE_ID)) binaries-$(ARCH) := $(addprefix $(INFIX_IMAGE_ID),.img -disk.qcow2) pkg-$(ARCH) := -p $(O)/images/$(addprefix $(INFIX_IMAGE_ID),.pkg) binaries-x86_64 += OVMF.fd diff --git a/test/virt/dual/topology.dot.in b/test/virt/dual/topology.dot.in index 3ce0fab1..736f818c 100644 --- a/test/virt/dual/topology.dot.in +++ b/test/virt/dual/topology.dot.in @@ -25,6 +25,7 @@ graph "dual" { label="{ e1 | e2 | e3 } | dut1 | { e4 | e5 | e6 }", pos="10,18!", provides="infix", + expected_boot="primary", qn_console=9001, qn_mem="384M", qn_usb="dut1.usb" @@ -33,6 +34,7 @@ graph "dual" { label="{ e1 | e2 | e3 } | dut2 | { e4 | e5 | e6 }", pos="10,12!", provides="infix", + expected_boot="primary", qn_console=9002, qn_mem="384M", qn_usb="dut2.usb" diff --git a/test/virt/quad/topology.dot.in b/test/virt/quad/topology.dot.in index a2b3fb10..549456d4 100644 --- a/test/virt/quad/topology.dot.in +++ b/test/virt/quad/topology.dot.in @@ -24,6 +24,7 @@ graph "quad" { label="{ e1 | e2 | e3 | e4 } | dut1 | { e5 | e6 | e7 | e8}", pos="10,30!", provides="infix", + expected_boot="primary", qn_console=9001, qn_mem="384M", qn_usb="dut1.usb" @@ -32,6 +33,7 @@ graph "quad" { label="{ e1 | e2 | e3 | e4 } | dut2 | { e5 | e6 | e7 | e8}", pos="0,20!", provides="infix", + expected_boot="primary", qn_console=9002, qn_mem="384M", qn_usb="dut2.usb" @@ -40,6 +42,7 @@ graph "quad" { label="{ e1 | e2 | e3 | e4 } | dut3 | { e5 | e6 | e7 | e8}", pos="0,10!", provides="infix", + expected_boot="primary", qn_console=9003, qn_mem="384M", qn_usb="dut3.usb" @@ -49,6 +52,7 @@ graph "quad" { label="{ e1 | e2 | e3 | e4 } | dut4 | { e5 | e6 | e7 | e8}", pos="10,0!", provides="infix", + expected_boot="primary", qn_console=9004, qn_mem="384M", qn_usb="dut4.usb" diff --git a/utils/bump-gns3.py b/utils/bump-gns3.py new file mode 100755 index 00000000..72c02b20 --- /dev/null +++ b/utils/bump-gns3.py @@ -0,0 +1,91 @@ +#!/usr/bin/env python3 +import argparse +import hashlib +import json +import re +import shutil +import sys +import urllib.request +from datetime import datetime + +BIOS_IMAGE = "OVMF-edk2-stable202305.fd" +REPO = "https://github.com/kernelkit/infix" + +def check_version_format(ver): + if not re.fullmatch(r"\d{2}\.\d{2}\.\d+", ver): + sys.exit("Error: version must be full form like 25.08.0") + return ver + +def compute_md5_and_size(url): + md5 = hashlib.md5() + size = 0 + with urllib.request.urlopen(url) as resp: + while True: + chunk = resp.read(1024 * 1024) + if not chunk: + break + md5.update(chunk) + size += len(chunk) + return md5.hexdigest(), size + +def main(): + parser = argparse.ArgumentParser(description="Add a new Infix version to a GNS3 appliance file") + parser.add_argument("version", help="Infix version (e.g. 25.08.0)") + parser.add_argument("appliance", help="Path to appliance JSON (.gns3a)") + args = parser.parse_args() + + version = check_version_format(args.version) + appliance_path = args.appliance + + # Load JSON + with open(appliance_path, "r", encoding="utf-8") as f: + data = json.load(f) + + # Skip if version already exists + for v in data.get("versions", []): + if v.get("name") == version: + print(f"Version {version} already exists.") + return + + # Build qcow2 URL + filename = f"infix-x86_64-disk-{version}.qcow2" + url = f"{REPO}/releases/download/v{version}/{filename}" + + print(f"Downloading {url} to compute MD5 and size...") + md5sum, size = compute_md5_and_size(url) + + # Add image entry + image_entry = { + "filename": filename, + "filesize": size, + "md5sum": md5sum, + "version": version, + "direct_download_url": url + } + data.setdefault("images", []).append(image_entry) + + # Add version entry (newest first) + version_entry = { + "name": version, + "images": { + "bios_image": BIOS_IMAGE, + "hda_disk_image": filename + } + } + data.setdefault("versions", []).insert(0, version_entry) + + # Backup + backup = appliance_path + ".bak-" + datetime.now().strftime("%Y%m%d-%H%M%S") + shutil.copy2(appliance_path, backup) + + # Save updated JSON + with open(appliance_path, "w", encoding="utf-8") as f: + json.dump(data, f, indent=4) + + print(f"✅ Added version {version}") + print(f" File: {appliance_path}") + print(f" Backup: {backup}") + print(f" Disk: {filename} (size={size} bytes, md5={md5sum})") + +if __name__ == "__main__": + main()