qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] aspeed: machine deprecations and test improvements
@ 2025-10-07 14:15 Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 1/5] aspeed: Deprecate the sonorapass-bmc machine Cédric Le Goater
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:15 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater

Hello,

The first three patches deprecate machines that have no functional
tests and can be replaced by more generic machines (evbs) with
command-line options for I2C device.

The last two patches improve the functional tests for the ast2700
machines to save CI resources.

Thanks,

C.

Cédric Le Goater (5):
  aspeed: Deprecate the sonorapass-bmc machine
  aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc
    machines
  aspeed: Deprecate the fp5280g2-bmc machine
  test/functional/aarch64: Remove test for the ast2700a0-evb machine
  test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test

 docs/about/deprecated.rst                     | 27 +++++++++++++++++++
 hw/arm/aspeed.c                               |  4 +++
 .../functional/aarch64/test_aspeed_ast2700.py | 21 ++++-----------
 3 files changed, 36 insertions(+), 16 deletions(-)

-- 
2.51.0



^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/5] aspeed: Deprecate the sonorapass-bmc machine
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
@ 2025-10-07 14:16 ` Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 2/5] aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc machines Cédric Le Goater
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:16 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater,
	Patrick Williams

The 'sonorapass-bmc' machine represents a lab server that never
entered production. There are no functional tests for this machine
which makes harder to determine when something becomes deprecated or
unused.

Since the machine does not rely on any specific device models, it can
be replaced by the 'ast2500-evb' machine using the 'fmc-model' option
to specify the flash type. The I2C devices connected to the board can
be defined via the QEMU command line.

Cc: Patrick Williams <patrick@stwcx.xyz>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 docs/about/deprecated.rst | 9 +++++++++
 hw/arm/aspeed.c           | 1 +
 2 files changed, 10 insertions(+)

diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 67e527740c0e..ce8fe9ac1be7 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -285,6 +285,15 @@ and serves as the initial engineering sample rather than a production version.
 A newer revision, A1, is now supported, and the ``ast2700a1-evb`` should
 replace the older A0 version.
 
+Arm ``sonorapass-bmc`` machine (since 10.2)
+'''''''''''''''''''''''''''''''''''''''''''
+
+The ``sonorapass-bmc`` machine represents a lab server that never
+entered production. Since it does not rely on any specific device
+models, it can be replaced by the ``ast2500-evb`` machine using the
+``fmc-model`` option to specify the flash type. The I2C devices
+connected to the board can be defined via the QEMU command line.
+
 RISC-V default machine option (since 10.0)
 ''''''''''''''''''''''''''''''''''''''''''
 
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index 58cfbc713794..d3a0c81f454f 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -1552,6 +1552,7 @@ static void aspeed_machine_sonorapass_class_init(ObjectClass *oc,
     AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
 
     mc->desc       = "OCP SonoraPass BMC (ARM1176)";
+    mc->deprecation_reason = "use 'ast2500-evb' instead";
     amc->soc_name  = "ast2500-a1";
     amc->hw_strap1 = SONORAPASS_BMC_HW_STRAP1;
     amc->fmc_model = "mx66l1g45g";
-- 
2.51.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/5] aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc machines
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 1/5] aspeed: Deprecate the sonorapass-bmc machine Cédric Le Goater
@ 2025-10-07 14:16 ` Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 3/5] aspeed: Deprecate the fp5280g2-bmc machine Cédric Le Goater
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:16 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater, Jae Hyun Yoo

There are no functional tests for the 'qcom-dc-scm-v1-bmc' and
'qcom-firework-bmc' machines which makes harder to determine when
something becomes deprecated or unused.

Since the machines do not rely on any specific device models, they can
be replaced by the 'ast2600-evb' machine using the 'fmc-model' option
to specify the flash type. The I2C devices connected to the board can
be defined via the QEMU command line.

Cc: Jae Hyun Yoo <quic_jaehyoo@quicinc.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 docs/about/deprecated.rst | 10 ++++++++++
 hw/arm/aspeed.c           |  2 ++
 2 files changed, 12 insertions(+)

diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index ce8fe9ac1be7..f6410037ead2 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -294,6 +294,16 @@ models, it can be replaced by the ``ast2500-evb`` machine using the
 ``fmc-model`` option to specify the flash type. The I2C devices
 connected to the board can be defined via the QEMU command line.
 
+Arm ``qcom-dc-scm-v1-bmc`` and ``qcom-firework-bmc`` machine (since 10.2)
+'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+
+The ``qcom-dc-scm-v1-bmc`` and ``qcom-firework-bmc`` represent lab
+servers that never entered production. Since they do not rely on any
+specific device models, they can be replaced by the ``ast2600-evb``
+machine using the ``fmc-model`` option to specify the flash type. The
+I2C devices connected to the board can be defined via the QEMU command
+line.
+
 RISC-V default machine option (since 10.0)
 ''''''''''''''''''''''''''''''''''''''''''
 
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index d3a0c81f454f..0707a760fda6 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -1926,6 +1926,7 @@ static void aspeed_machine_qcom_dc_scm_v1_class_init(ObjectClass *oc,
     AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
 
     mc->desc       = "Qualcomm DC-SCM V1 BMC (Cortex A7)";
+    mc->deprecation_reason = "use 'ast2600-evb' instead";
     amc->soc_name  = "ast2600-a3";
     amc->hw_strap1 = QCOM_DC_SCM_V1_BMC_HW_STRAP1;
     amc->hw_strap2 = QCOM_DC_SCM_V1_BMC_HW_STRAP2;
@@ -1945,6 +1946,7 @@ static void aspeed_machine_qcom_firework_class_init(ObjectClass *oc,
     AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
 
     mc->desc       = "Qualcomm DC-SCM V1/Firework BMC (Cortex A7)";
+    mc->deprecation_reason = "use 'ast2600-evb' instead";
     amc->soc_name  = "ast2600-a3";
     amc->hw_strap1 = QCOM_DC_SCM_V1_BMC_HW_STRAP1;
     amc->hw_strap2 = QCOM_DC_SCM_V1_BMC_HW_STRAP2;
-- 
2.51.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 3/5] aspeed: Deprecate the fp5280g2-bmc machine
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 1/5] aspeed: Deprecate the sonorapass-bmc machine Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 2/5] aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc machines Cédric Le Goater
@ 2025-10-07 14:16 ` Cédric Le Goater
  2025-10-07 14:16 ` [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine Cédric Le Goater
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:16 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater, John Wang

There are no functional tests for the 'fp5280g2-bmc' machine which
makes harder to determine when something becomes deprecated or unused.

Since the machine does not rely on any specific device models, it can
be replaced by the 'ast2500-evb' machine using the 'fmc-model' option
to specify the flash type. The I2C devices connected to the board can
be defined via the QEMU command line.

Cc: John Wang <wangzq.jn@gmail.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 docs/about/deprecated.rst | 8 ++++++++
 hw/arm/aspeed.c           | 1 +
 2 files changed, 9 insertions(+)

diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index f6410037ead2..98361f5832dc 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -304,6 +304,14 @@ machine using the ``fmc-model`` option to specify the flash type. The
 I2C devices connected to the board can be defined via the QEMU command
 line.
 
+Arm ``fp5280g2-bmc`` machine (since 10.2)
+'''''''''''''''''''''''''''''''''''''''''''
+
+The ``fp5280g2-bmc`` machine does not rely on any specific device
+models, it can be replaced by the ``ast2500-evb`` machine using the
+``fmc-model`` option to specify the flash type. The I2C devices
+connected to the board can be defined via the QEMU command line.
+
 RISC-V default machine option (since 10.0)
 ''''''''''''''''''''''''''''''''''''''''''
 
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index 0707a760fda6..e73185eeb35c 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -1626,6 +1626,7 @@ static void aspeed_machine_fp5280g2_class_init(ObjectClass *oc,
     AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc);
 
     mc->desc       = "Inspur FP5280G2 BMC (ARM1176)";
+    mc->deprecation_reason = "use 'ast2500-evb' instead";
     amc->soc_name  = "ast2500-a1";
     amc->hw_strap1 = FP5280G2_BMC_HW_STRAP1;
     amc->fmc_model = "n25q512a";
-- 
2.51.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
                   ` (2 preceding siblings ...)
  2025-10-07 14:16 ` [PATCH 3/5] aspeed: Deprecate the fp5280g2-bmc machine Cédric Le Goater
@ 2025-10-07 14:16 ` Cédric Le Goater
  2025-10-08  1:05   ` Jamin Lin
  2025-10-08  6:33   ` Thomas Huth
  2025-10-07 14:16 ` [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test Cédric Le Goater
  2025-10-13  9:29 ` [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
  5 siblings, 2 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:16 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater

The 'ast2700a0-evb' machine was deprecated in commit 6888a4a9c860 and
removal is scheduled in the QEMU 11.0 release. This change removes
the corresponding tests ahead of time to save CI resources.

Cc: Thomas Huth <thuth@redhat.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 tests/functional/aarch64/test_aspeed_ast2700.py | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py
index ef7ed522afc3..a60dc1259f69 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700.py
@@ -46,10 +46,6 @@ def verify_openbmc_boot_and_login(self, name):
         exec_command_and_wait_for_pattern(self, 'root', 'Password:')
         exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')
 
-    ASSET_SDK_V906_AST2700 = Asset(
-            'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast2700-a0-default-obmc.tar.gz',
-            '7247b6f19dbfb700686f8d9f723ac23f3eb229226c0589cb9b06b80d1b61f3cb')
-
     ASSET_SDK_V908_AST2700A1 = Asset(
             'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.08/ast2700-default-obmc.tar.gz',
             'eac3dc409b7ea3cd4b03d4792d3cebd469792ad893cb51e1d15f0fc20bd1e2cd')
@@ -124,14 +120,6 @@ def start_ast2700_test_vbootrom(self, name):
         self.do_test_aarch64_aspeed_sdk_start(
                 self.scratch_file(name, 'image-bmc'))
 
-    def test_aarch64_ast2700a0_evb_sdk_v09_06(self):
-        self.set_machine('ast2700a0-evb')
-
-        self.archive_extract(self.ASSET_SDK_V906_AST2700)
-        self.start_ast2700_test('ast2700-a0-default')
-        self.verify_openbmc_boot_and_login('ast2700-a0-default')
-        self.do_ast2700_i2c_test()
-
     def test_aarch64_ast2700a1_evb_sdk_v09_08(self):
         self.set_machine('ast2700a1-evb')
         self.require_netdev('user')
-- 
2.51.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
                   ` (3 preceding siblings ...)
  2025-10-07 14:16 ` [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine Cédric Le Goater
@ 2025-10-07 14:16 ` Cédric Le Goater
  2025-10-08  1:08   ` Jamin Lin
  2025-10-08  6:38   ` Thomas Huth
  2025-10-13  9:29 ` [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
  5 siblings, 2 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-07 14:16 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth, Cédric Le Goater

The 'ast2700a1-evb' machine has two functional tests: one loading
firmware components into memory and another using a vbootrom
image. Both tests perform a full OpenBMC boot and run checks on I2C
and PCIe devices, which is redundant and time-consuming.

To save CI resources, the vbootrom test is refactored to focus on the
firmware boot process only. The OpenBMC boot verification logic is
split and a new verify_openbmc_boot_start() helper is introduced to
only wait for the kernel to start.

The vbootrom test now uses this function and the less essential I2C
and PCIe checks have been removed from this test case.

Cc: Thomas Huth <thuth@redhat.com>
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
 tests/functional/aarch64/test_aspeed_ast2700.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py
index a60dc1259f69..32c971e13528 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700.py
@@ -37,11 +37,14 @@ def verify_vbootrom_firmware_flow(self):
         wait_for_console_pattern(self, 'done')
         wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')
 
-    def verify_openbmc_boot_and_login(self, name):
+    def verify_openbmc_boot_start(self):
         wait_for_console_pattern(self, 'U-Boot 2023.10')
         wait_for_console_pattern(self, '## Loading kernel from FIT Image')
         wait_for_console_pattern(self, 'Starting kernel ...')
 
+    def verify_openbmc_boot_and_login(self, name):
+        self.verify_openbmc_boot_start()
+
         wait_for_console_pattern(self, f'{name} login:')
         exec_command_and_wait_for_pattern(self, 'root', 'Password:')
         exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')
@@ -141,9 +144,7 @@ def test_aarch64_ast2700a1_evb_sdk_vbootrom_v09_08(self):
         self.vm.add_args('-netdev', 'user,id=net1')
         self.start_ast2700_test_vbootrom('ast2700-default')
         self.verify_vbootrom_firmware_flow()
-        self.verify_openbmc_boot_and_login('ast2700-default')
-        self.do_ast2700_i2c_test()
-        self.do_ast2700_pcie_test()
+        self.verify_openbmc_boot_start()
 
 if __name__ == '__main__':
     QemuSystemTest.main()
-- 
2.51.0



^ permalink raw reply related	[flat|nested] 12+ messages in thread

* RE: [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine
  2025-10-07 14:16 ` [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine Cédric Le Goater
@ 2025-10-08  1:05   ` Jamin Lin
  2025-10-08  6:33   ` Thomas Huth
  1 sibling, 0 replies; 12+ messages in thread
From: Jamin Lin @ 2025-10-08  1:05 UTC (permalink / raw)
  To: Cédric Le Goater, qemu-devel@nongnu.org, qemu-arm@nongnu.org
  Cc: Peter Maydell, Steven Lee, Troy Lee, Andrew Jeffery, Joel Stanley,
	Thomas Huth

> 
> The 'ast2700a0-evb' machine was deprecated in commit 6888a4a9c860 and
> removal is scheduled in the QEMU 11.0 release. This change removes the
> corresponding tests ahead of time to save CI resources.
> 
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
>  tests/functional/aarch64/test_aspeed_ast2700.py | 12 ------------
>  1 file changed, 12 deletions(-)
> 
> diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py
> b/tests/functional/aarch64/test_aspeed_ast2700.py
> index ef7ed522afc3..a60dc1259f69 100755
> --- a/tests/functional/aarch64/test_aspeed_ast2700.py
> +++ b/tests/functional/aarch64/test_aspeed_ast2700.py
> @@ -46,10 +46,6 @@ def verify_openbmc_boot_and_login(self, name):
>          exec_command_and_wait_for_pattern(self, 'root', 'Password:')
>          exec_command_and_wait_for_pattern(self, '0penBmc',
> f'root@{name}:~#')
> 
> -    ASSET_SDK_V906_AST2700 = Asset(
> -
> 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.06/ast
> 2700-a0-default-obmc.tar.gz',
> -
> '7247b6f19dbfb700686f8d9f723ac23f3eb229226c0589cb9b06b80d1b61f3cb')
> -
>      ASSET_SDK_V908_AST2700A1 = Asset(
> 
> 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.08/ast
> 2700-default-obmc.tar.gz',
> 
> 'eac3dc409b7ea3cd4b03d4792d3cebd469792ad893cb51e1d15f0fc20bd1e2cd')
> @@ -124,14 +120,6 @@ def start_ast2700_test_vbootrom(self, name):
>          self.do_test_aarch64_aspeed_sdk_start(
>                  self.scratch_file(name, 'image-bmc'))
> 
> -    def test_aarch64_ast2700a0_evb_sdk_v09_06(self):
> -        self.set_machine('ast2700a0-evb')
> -
> -        self.archive_extract(self.ASSET_SDK_V906_AST2700)
> -        self.start_ast2700_test('ast2700-a0-default')
> -        self.verify_openbmc_boot_and_login('ast2700-a0-default')
> -        self.do_ast2700_i2c_test()
> -
>      def test_aarch64_ast2700a1_evb_sdk_v09_08(self):
>          self.set_machine('ast2700a1-evb')
>          self.require_netdev('user')
> --
> 2.51.0

Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>

Thanks,
Jamin


^ permalink raw reply	[flat|nested] 12+ messages in thread

* RE: [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test
  2025-10-07 14:16 ` [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test Cédric Le Goater
@ 2025-10-08  1:08   ` Jamin Lin
  2025-10-08  6:38   ` Thomas Huth
  1 sibling, 0 replies; 12+ messages in thread
From: Jamin Lin @ 2025-10-08  1:08 UTC (permalink / raw)
  To: Cédric Le Goater, qemu-devel@nongnu.org, qemu-arm@nongnu.org
  Cc: Peter Maydell, Steven Lee, Troy Lee, Andrew Jeffery, Joel Stanley,
	Thomas Huth

> The 'ast2700a1-evb' machine has two functional tests: one loading firmware
> components into memory and another using a vbootrom image. Both tests
> perform a full OpenBMC boot and run checks on I2C and PCIe devices, which
> is redundant and time-consuming.
> 
> To save CI resources, the vbootrom test is refactored to focus on the firmware
> boot process only. The OpenBMC boot verification logic is split and a new
> verify_openbmc_boot_start() helper is introduced to only wait for the kernel to
> start.
> 
> The vbootrom test now uses this function and the less essential I2C and PCIe
> checks have been removed from this test case.
> 
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
>  tests/functional/aarch64/test_aspeed_ast2700.py | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py
> b/tests/functional/aarch64/test_aspeed_ast2700.py
> index a60dc1259f69..32c971e13528 100755
> --- a/tests/functional/aarch64/test_aspeed_ast2700.py
> +++ b/tests/functional/aarch64/test_aspeed_ast2700.py
> @@ -37,11 +37,14 @@ def verify_vbootrom_firmware_flow(self):
>          wait_for_console_pattern(self, 'done')
>          wait_for_console_pattern(self, 'Jumping to BL31 (Trusted
> Firmware-A)')
> 
> -    def verify_openbmc_boot_and_login(self, name):
> +    def verify_openbmc_boot_start(self):
>          wait_for_console_pattern(self, 'U-Boot 2023.10')
>          wait_for_console_pattern(self, '## Loading kernel from FIT Image')
>          wait_for_console_pattern(self, 'Starting kernel ...')
> 
> +    def verify_openbmc_boot_and_login(self, name):
> +        self.verify_openbmc_boot_start()
> +
>          wait_for_console_pattern(self, f'{name} login:')
>          exec_command_and_wait_for_pattern(self, 'root', 'Password:')
>          exec_command_and_wait_for_pattern(self, '0penBmc',
> f'root@{name}:~#') @@ -141,9 +144,7 @@ def
> test_aarch64_ast2700a1_evb_sdk_vbootrom_v09_08(self):
>          self.vm.add_args('-netdev', 'user,id=net1')
>          self.start_ast2700_test_vbootrom('ast2700-default')
>          self.verify_vbootrom_firmware_flow()
> -        self.verify_openbmc_boot_and_login('ast2700-default')
> -        self.do_ast2700_i2c_test()
> -        self.do_ast2700_pcie_test()
> +        self.verify_openbmc_boot_start()
> 
>  if __name__ == '__main__':
>      QemuSystemTest.main()
> --
> 2.51.0

Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>

Thanks,
Jamin


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine
  2025-10-07 14:16 ` [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine Cédric Le Goater
  2025-10-08  1:05   ` Jamin Lin
@ 2025-10-08  6:33   ` Thomas Huth
  1 sibling, 0 replies; 12+ messages in thread
From: Thomas Huth @ 2025-10-08  6:33 UTC (permalink / raw)
  To: Cédric Le Goater, qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley

On 07/10/2025 16.16, Cédric Le Goater wrote:
> The 'ast2700a0-evb' machine was deprecated in commit 6888a4a9c860 and
> removal is scheduled in the QEMU 11.0 release. This change removes
> the corresponding tests ahead of time to save CI resources.
> 
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
>   tests/functional/aarch64/test_aspeed_ast2700.py | 12 ------------
>   1 file changed, 12 deletions(-)

Reviewed-by: Thomas Huth <thuth@redhat.com>



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test
  2025-10-07 14:16 ` [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test Cédric Le Goater
  2025-10-08  1:08   ` Jamin Lin
@ 2025-10-08  6:38   ` Thomas Huth
  2025-10-08 16:02     ` Cédric Le Goater
  1 sibling, 1 reply; 12+ messages in thread
From: Thomas Huth @ 2025-10-08  6:38 UTC (permalink / raw)
  To: Cédric Le Goater, qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley

On 07/10/2025 16.16, Cédric Le Goater wrote:
> The 'ast2700a1-evb' machine has two functional tests: one loading
> firmware components into memory and another using a vbootrom
> image. Both tests perform a full OpenBMC boot and run checks on I2C
> and PCIe devices, which is redundant and time-consuming.
> 
> To save CI resources, the vbootrom test is refactored to focus on the
> firmware boot process only. The OpenBMC boot verification logic is
> split and a new verify_openbmc_boot_start() helper is introduced to
> only wait for the kernel to start.
> 
> The vbootrom test now uses this function and the less essential I2C
> and PCIe checks have been removed from this test case.
> 
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
>   tests/functional/aarch64/test_aspeed_ast2700.py | 9 +++++----
>   1 file changed, 5 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py
> index a60dc1259f69..32c971e13528 100755
> --- a/tests/functional/aarch64/test_aspeed_ast2700.py
> +++ b/tests/functional/aarch64/test_aspeed_ast2700.py
> @@ -37,11 +37,14 @@ def verify_vbootrom_firmware_flow(self):
>           wait_for_console_pattern(self, 'done')
>           wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')
>   
> -    def verify_openbmc_boot_and_login(self, name):
> +    def verify_openbmc_boot_start(self):
>           wait_for_console_pattern(self, 'U-Boot 2023.10')
>           wait_for_console_pattern(self, '## Loading kernel from FIT Image')
>           wait_for_console_pattern(self, 'Starting kernel ...')

The patch is a good idea ... but I'd maybe wait 'til the kernel really has 
been started, i.e. by waiting for it's initial output like "Linux version 
6.6.93" ?

Anyway:
Reviewed-by: Thomas Huth <thuth@redhat.com>


> +    def verify_openbmc_boot_and_login(self, name):
> +        self.verify_openbmc_boot_start()
> +
>           wait_for_console_pattern(self, f'{name} login:')
>           exec_command_and_wait_for_pattern(self, 'root', 'Password:')
>           exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')
> @@ -141,9 +144,7 @@ def test_aarch64_ast2700a1_evb_sdk_vbootrom_v09_08(self):
>           self.vm.add_args('-netdev', 'user,id=net1')
>           self.start_ast2700_test_vbootrom('ast2700-default')
>           self.verify_vbootrom_firmware_flow()
> -        self.verify_openbmc_boot_and_login('ast2700-default')
> -        self.do_ast2700_i2c_test()
> -        self.do_ast2700_pcie_test()
> +        self.verify_openbmc_boot_start()
>   
>   if __name__ == '__main__':
>       QemuSystemTest.main()



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test
  2025-10-08  6:38   ` Thomas Huth
@ 2025-10-08 16:02     ` Cédric Le Goater
  0 siblings, 0 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-08 16:02 UTC (permalink / raw)
  To: Thomas Huth, Cédric Le Goater, qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley

On 10/8/25 08:38, Thomas Huth wrote:
> On 07/10/2025 16.16, Cédric Le Goater wrote:
>> The 'ast2700a1-evb' machine has two functional tests: one loading
>> firmware components into memory and another using a vbootrom
>> image. Both tests perform a full OpenBMC boot and run checks on I2C
>> and PCIe devices, which is redundant and time-consuming.
>>
>> To save CI resources, the vbootrom test is refactored to focus on the
>> firmware boot process only. The OpenBMC boot verification logic is
>> split and a new verify_openbmc_boot_start() helper is introduced to
>> only wait for the kernel to start.
>>
>> The vbootrom test now uses this function and the less essential I2C
>> and PCIe checks have been removed from this test case.
>>
>> Cc: Thomas Huth <thuth@redhat.com>
>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>> ---
>>   tests/functional/aarch64/test_aspeed_ast2700.py | 9 +++++----
>>   1 file changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/tests/functional/aarch64/test_aspeed_ast2700.py b/tests/functional/aarch64/test_aspeed_ast2700.py
>> index a60dc1259f69..32c971e13528 100755
>> --- a/tests/functional/aarch64/test_aspeed_ast2700.py
>> +++ b/tests/functional/aarch64/test_aspeed_ast2700.py
>> @@ -37,11 +37,14 @@ def verify_vbootrom_firmware_flow(self):
>>           wait_for_console_pattern(self, 'done')
>>           wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')
>> -    def verify_openbmc_boot_and_login(self, name):
>> +    def verify_openbmc_boot_start(self):
>>           wait_for_console_pattern(self, 'U-Boot 2023.10')
>>           wait_for_console_pattern(self, '## Loading kernel from FIT Image')
>>           wait_for_console_pattern(self, 'Starting kernel ...')
> 
> The patch is a good idea ... but I'd maybe wait 'til the kernel really has been started, i.e. by waiting for it's initial output like "Linux version 6.6.93" ?

Sure.

I changed the wait pattern from 'Starting kernel ...' to 'Linux version '
without specifying the Linux kernel version since a change would be
needed whenever the SDK images are updated.

> Anyway:
> Reviewed-by: Thomas Huth <thuth@redhat.com>


Thanks,

C.


> 
> 
>> +    def verify_openbmc_boot_and_login(self, name):
>> +        self.verify_openbmc_boot_start()
>> +
>>           wait_for_console_pattern(self, f'{name} login:')
>>           exec_command_and_wait_for_pattern(self, 'root', 'Password:')
>>           exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#')
>> @@ -141,9 +144,7 @@ def test_aarch64_ast2700a1_evb_sdk_vbootrom_v09_08(self):
>>           self.vm.add_args('-netdev', 'user,id=net1')
>>           self.start_ast2700_test_vbootrom('ast2700-default')
>>           self.verify_vbootrom_firmware_flow()
>> -        self.verify_openbmc_boot_and_login('ast2700-default')
>> -        self.do_ast2700_i2c_test()
>> -        self.do_ast2700_pcie_test()
>> +        self.verify_openbmc_boot_start()
>>   if __name__ == '__main__':
>>       QemuSystemTest.main()
> 



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 0/5] aspeed: machine deprecations and test improvements
  2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
                   ` (4 preceding siblings ...)
  2025-10-07 14:16 ` [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test Cédric Le Goater
@ 2025-10-13  9:29 ` Cédric Le Goater
  5 siblings, 0 replies; 12+ messages in thread
From: Cédric Le Goater @ 2025-10-13  9:29 UTC (permalink / raw)
  To: Cédric Le Goater, qemu-devel, qemu-arm
  Cc: Peter Maydell, Steven Lee, Troy Lee, Jamin Lin, Andrew Jeffery,
	Joel Stanley, Thomas Huth

On 10/7/25 16:15, Cédric Le Goater wrote:
> Hello,
> 
> The first three patches deprecate machines that have no functional
> tests and can be replaced by more generic machines (evbs) with
> command-line options for I2C device.
> 
> The last two patches improve the functional tests for the ast2700
> machines to save CI resources.
> 
> Thanks,
> 
> C.
> 
> Cédric Le Goater (5):
>    aspeed: Deprecate the sonorapass-bmc machine
>    aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc
>      machines
>    aspeed: Deprecate the fp5280g2-bmc machine
>    test/functional/aarch64: Remove test for the ast2700a0-evb machine
>    test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test
> 
>   docs/about/deprecated.rst                     | 27 +++++++++++++++++++
>   hw/arm/aspeed.c                               |  4 +++
>   .../functional/aarch64/test_aspeed_ast2700.py | 21 ++++-----------
>   3 files changed, 36 insertions(+), 16 deletions(-)
> 


Applied to aspeed-next.

Thanks,

C.




^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2025-10-13  9:30 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-07 14:15 [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater
2025-10-07 14:16 ` [PATCH 1/5] aspeed: Deprecate the sonorapass-bmc machine Cédric Le Goater
2025-10-07 14:16 ` [PATCH 2/5] aspeed: Deprecate the qcom-dc-scm-v1-bmc and qcom-firework-bmc machines Cédric Le Goater
2025-10-07 14:16 ` [PATCH 3/5] aspeed: Deprecate the fp5280g2-bmc machine Cédric Le Goater
2025-10-07 14:16 ` [PATCH 4/5] test/functional/aarch64: Remove test for the ast2700a0-evb machine Cédric Le Goater
2025-10-08  1:05   ` Jamin Lin
2025-10-08  6:33   ` Thomas Huth
2025-10-07 14:16 ` [PATCH 5/5] test/functional/aarch64: Split the ast2700a1-evb OpenBMC boot test Cédric Le Goater
2025-10-08  1:08   ` Jamin Lin
2025-10-08  6:38   ` Thomas Huth
2025-10-08 16:02     ` Cédric Le Goater
2025-10-13  9:29 ` [PATCH 0/5] aspeed: machine deprecations and test improvements Cédric Le Goater

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).