From: Ed Tanous <etanous@nvidia.com>
To support the newly added gb200 machine, add appropriate tests and
extend do_test_arm_aspeed_openbmc() to support the hostname of this
new system: "gb200nvl-obmc".
Signed-off-by: Ed Tanous <etanous@nvidia.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20250703144249.3348879-5-etanous@nvidia.com
[ clg: Adjust commit log to document do_test_arm_aspeed_openbmc() change ]
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
tests/functional/aspeed.py | 9 +++++--
tests/functional/meson.build | 2 ++
.../test_arm_aspeed_gb200nvl_bmc.py | 26 +++++++++++++++++++
3 files changed, 35 insertions(+), 2 deletions(-)
create mode 100644 tests/functional/test_arm_aspeed_gb200nvl_bmc.py
diff --git a/tests/functional/aspeed.py b/tests/functional/aspeed.py
index 7a40d5dda736..b131703c5283 100644
--- a/tests/functional/aspeed.py
+++ b/tests/functional/aspeed.py
@@ -8,8 +8,13 @@
class AspeedTest(LinuxKernelTest):
def do_test_arm_aspeed_openbmc(self, machine, image, uboot='2019.04',
- cpu_id='0x0', soc='AST2500 rev A1'):
- hostname = machine.removesuffix('-bmc')
+ cpu_id='0x0', soc='AST2500 rev A1',
+ image_hostname=None):
+ # Allow for the image hostname to not end in "-bmc"
+ if image_hostname is not None:
+ hostname = image_hostname
+ else:
+ hostname = machine.removesuffix('-bmc')
self.set_machine(machine)
self.vm.set_console()
diff --git a/tests/functional/meson.build b/tests/functional/meson.build
index fb87b957aa6c..050c9000b95c 100644
--- a/tests/functional/meson.build
+++ b/tests/functional/meson.build
@@ -33,6 +33,7 @@ test_timeouts = {
'arm_aspeed_ast2600' : 1200,
'arm_aspeed_bletchley' : 480,
'arm_aspeed_catalina' : 480,
+ 'arm_aspeed_gb200nvl_bmc' : 480,
'arm_aspeed_rainier' : 480,
'arm_bpim2u' : 500,
'arm_collie' : 180,
@@ -129,6 +130,7 @@ tests_arm_system_thorough = [
'arm_aspeed_ast2600',
'arm_aspeed_bletchley',
'arm_aspeed_catalina',
+ 'arm_aspeed_gb200nvl_bmc',
'arm_aspeed_rainier',
'arm_bpim2u',
'arm_canona1100',
diff --git a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
new file mode 100644
index 000000000000..8e8e3f05c1b2
--- /dev/null
+++ b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
@@ -0,0 +1,26 @@
+#!/usr/bin/env python3
+#
+# Functional test that boots the ASPEED machines
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+from qemu_test import Asset
+from aspeed import AspeedTest
+
+
+class GB200Machine(AspeedTest):
+
+ ASSET_GB200_FLASH = Asset(
+ 'https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz',
+ 'b84819317cb3dc762895ad507705978ef000bfc77c50c33a63bdd37921db0dbc')
+
+ def test_arm_aspeed_gb200_openbmc(self):
+ image_path = self.uncompress(self.ASSET_GB200_FLASH)
+
+ self.do_test_arm_aspeed_openbmc('gb200nvl-bmc', image=image_path,
+ uboot='2019.04', cpu_id='0xf00',
+ soc='AST2600 rev A3',
+ image_hostname='gb200nvl-obmc')
+
+if __name__ == '__main__':
+ AspeedTest.main()
--
2.50.0
Hi Ed, Cédric,
On 4/7/25 10:37, Cédric Le Goater wrote:
> From: Ed Tanous <etanous@nvidia.com>
>
> To support the newly added gb200 machine, add appropriate tests and
> extend do_test_arm_aspeed_openbmc() to support the hostname of this
> new system: "gb200nvl-obmc".
>
> Signed-off-by: Ed Tanous <etanous@nvidia.com>
> Reviewed-by: Cédric Le Goater <clg@redhat.com>
> Link: https://lore.kernel.org/qemu-devel/20250703144249.3348879-5-etanous@nvidia.com
> [ clg: Adjust commit log to document do_test_arm_aspeed_openbmc() change ]
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
> tests/functional/aspeed.py | 9 +++++--
> tests/functional/meson.build | 2 ++
> .../test_arm_aspeed_gb200nvl_bmc.py | 26 +++++++++++++++++++
> 3 files changed, 35 insertions(+), 2 deletions(-)
> create mode 100644 tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>
> diff --git a/tests/functional/aspeed.py b/tests/functional/aspeed.py
> index 7a40d5dda736..b131703c5283 100644
> --- a/tests/functional/aspeed.py
> +++ b/tests/functional/aspeed.py
> @@ -8,8 +8,13 @@
> class AspeedTest(LinuxKernelTest):
>
> def do_test_arm_aspeed_openbmc(self, machine, image, uboot='2019.04',
> - cpu_id='0x0', soc='AST2500 rev A1'):
> - hostname = machine.removesuffix('-bmc')
> + cpu_id='0x0', soc='AST2500 rev A1',
> + image_hostname=None):
> + # Allow for the image hostname to not end in "-bmc"
> + if image_hostname is not None:
> + hostname = image_hostname
> + else:
> + hostname = machine.removesuffix('-bmc')
>
> self.set_machine(machine)
> self.vm.set_console()
> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
> index fb87b957aa6c..050c9000b95c 100644
> --- a/tests/functional/meson.build
> +++ b/tests/functional/meson.build
> @@ -33,6 +33,7 @@ test_timeouts = {
> 'arm_aspeed_ast2600' : 1200,
> 'arm_aspeed_bletchley' : 480,
> 'arm_aspeed_catalina' : 480,
> + 'arm_aspeed_gb200nvl_bmc' : 480,
> 'arm_aspeed_rainier' : 480,
> 'arm_bpim2u' : 500,
> 'arm_collie' : 180,
> @@ -129,6 +130,7 @@ tests_arm_system_thorough = [
> 'arm_aspeed_ast2600',
> 'arm_aspeed_bletchley',
> 'arm_aspeed_catalina',
> + 'arm_aspeed_gb200nvl_bmc',
> 'arm_aspeed_rainier',
> 'arm_bpim2u',
> 'arm_canona1100',
> diff --git a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
> new file mode 100644
> index 000000000000..8e8e3f05c1b2
> --- /dev/null
> +++ b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
> @@ -0,0 +1,26 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots the ASPEED machines
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +from qemu_test import Asset
> +from aspeed import AspeedTest
> +
> +
> +class GB200Machine(AspeedTest):
> +
> + ASSET_GB200_FLASH = Asset(
> + 'https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz',
This test is failing for me:
2025-12-21 11:10:40,608 - qemu-test - INFO - Downloading
https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz
to
/builds/philmd/qemu/functional-cache/download/b84819317cb3dc762895ad507705978ef000bfc77c50c33a63bdd37921db0dbc...
2025-12-21 11:10:40,798 - qemu-test - ERROR - Unable to download
https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz:
HTTP error 404
urllib.error.HTTPError: HTTP Error 404: Not Found
qemu_test.asset.AssetError:
https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz:
Unable to download: HTTP error 404
make: *** [Makefile:170: run-ninja] Error 1
Hi,
+ Patrick
On 12/21/25 15:56, Philippe Mathieu-Daudé wrote:
> Hi Ed, Cédric,
>
> On 4/7/25 10:37, Cédric Le Goater wrote:
>> From: Ed Tanous <etanous@nvidia.com>
>>
>> To support the newly added gb200 machine, add appropriate tests and
>> extend do_test_arm_aspeed_openbmc() to support the hostname of this
>> new system: "gb200nvl-obmc".
>>
>> Signed-off-by: Ed Tanous <etanous@nvidia.com>
>> Reviewed-by: Cédric Le Goater <clg@redhat.com>
>> Link: https://lore.kernel.org/qemu-devel/20250703144249.3348879-5-etanous@nvidia.com
>> [ clg: Adjust commit log to document do_test_arm_aspeed_openbmc() change ]
>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>> ---
>> tests/functional/aspeed.py | 9 +++++--
>> tests/functional/meson.build | 2 ++
>> .../test_arm_aspeed_gb200nvl_bmc.py | 26 +++++++++++++++++++
>> 3 files changed, 35 insertions(+), 2 deletions(-)
>> create mode 100644 tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>>
>> diff --git a/tests/functional/aspeed.py b/tests/functional/aspeed.py
>> index 7a40d5dda736..b131703c5283 100644
>> --- a/tests/functional/aspeed.py
>> +++ b/tests/functional/aspeed.py
>> @@ -8,8 +8,13 @@
>> class AspeedTest(LinuxKernelTest):
>> def do_test_arm_aspeed_openbmc(self, machine, image, uboot='2019.04',
>> - cpu_id='0x0', soc='AST2500 rev A1'):
>> - hostname = machine.removesuffix('-bmc')
>> + cpu_id='0x0', soc='AST2500 rev A1',
>> + image_hostname=None):
>> + # Allow for the image hostname to not end in "-bmc"
>> + if image_hostname is not None:
>> + hostname = image_hostname
>> + else:
>> + hostname = machine.removesuffix('-bmc')
>> self.set_machine(machine)
>> self.vm.set_console()
>> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
>> index fb87b957aa6c..050c9000b95c 100644
>> --- a/tests/functional/meson.build
>> +++ b/tests/functional/meson.build
>> @@ -33,6 +33,7 @@ test_timeouts = {
>> 'arm_aspeed_ast2600' : 1200,
>> 'arm_aspeed_bletchley' : 480,
>> 'arm_aspeed_catalina' : 480,
>> + 'arm_aspeed_gb200nvl_bmc' : 480,
>> 'arm_aspeed_rainier' : 480,
>> 'arm_bpim2u' : 500,
>> 'arm_collie' : 180,
>> @@ -129,6 +130,7 @@ tests_arm_system_thorough = [
>> 'arm_aspeed_ast2600',
>> 'arm_aspeed_bletchley',
>> 'arm_aspeed_catalina',
>> + 'arm_aspeed_gb200nvl_bmc',
>> 'arm_aspeed_rainier',
>> 'arm_bpim2u',
>> 'arm_canona1100',
>> diff --git a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>> new file mode 100644
>> index 000000000000..8e8e3f05c1b2
>> --- /dev/null
>> +++ b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>> @@ -0,0 +1,26 @@
>> +#!/usr/bin/env python3
>> +#
>> +# Functional test that boots the ASPEED machines
>> +#
>> +# SPDX-License-Identifier: GPL-2.0-or-later
>> +
>> +from qemu_test import Asset
>> +from aspeed import AspeedTest
>> +
>> +
>> +class GB200Machine(AspeedTest):
>> +
>> + ASSET_GB200_FLASH = Asset(
>> + 'https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz',
>
> This test is failing for me:
>
> 2025-12-21 11:10:40,608 - qemu-test - INFO - Downloading https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz to /builds/philmd/qemu/functional-cache/download/b84819317cb3dc762895ad507705978ef000bfc77c50c33a63bdd37921db0dbc...
> 2025-12-21 11:10:40,798 - qemu-test - ERROR - Unable to download https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz: HTTP error 404
> urllib.error.HTTPError: HTTP Error 404: Not Found
> qemu_test.asset.AssetError: https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz: Unable to download: HTTP error 404
> make: *** [Makefile:170: run-ninja] Error 1
>
I believe this due to :
https://github.com/legoater/qemu-aspeed-boot/commit/52451b2472eeb40aa97e131aeea327e9d4a8a78a
To fix, I can 'revert' the change above or we can fix QEMU.
Thanks,
C.
I wonder if I broke Catalina also by moving files around. I’ll double check these URIs and send a fix for QEMU.
— Patrick Williams
> On Dec 21, 2025, at 1:06 PM, Cédric Le Goater <clg@redhat.com> wrote:
>
> Hi,
>
> + Patrick
>
>> On 12/21/25 15:56, Philippe Mathieu-Daudé wrote:
>> Hi Ed, Cédric,
>>> On 4/7/25 10:37, Cédric Le Goater wrote:
>>> From: Ed Tanous <etanous@nvidia.com>
>>>
>>> To support the newly added gb200 machine, add appropriate tests and
>>> extend do_test_arm_aspeed_openbmc() to support the hostname of this
>>> new system: "gb200nvl-obmc".
>>>
>>> Signed-off-by: Ed Tanous <etanous@nvidia.com>
>>> Reviewed-by: Cédric Le Goater <clg@redhat.com>
>>> Link: https://lore.kernel.org/qemu-devel/20250703144249.3348879-5-etanous@nvidia.com
>>> [ clg: Adjust commit log to document do_test_arm_aspeed_openbmc() change ]
>>> Signed-off-by: Cédric Le Goater <clg@redhat.com>
>>> ---
>>> tests/functional/aspeed.py | 9 +++++--
>>> tests/functional/meson.build | 2 ++
>>> .../test_arm_aspeed_gb200nvl_bmc.py | 26 +++++++++++++++++++
>>> 3 files changed, 35 insertions(+), 2 deletions(-)
>>> create mode 100644 tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>>>
>>> diff --git a/tests/functional/aspeed.py b/tests/functional/aspeed.py
>>> index 7a40d5dda736..b131703c5283 100644
>>> --- a/tests/functional/aspeed.py
>>> +++ b/tests/functional/aspeed.py
>>> @@ -8,8 +8,13 @@
>>> class AspeedTest(LinuxKernelTest):
>>> def do_test_arm_aspeed_openbmc(self, machine, image, uboot='2019.04',
>>> - cpu_id='0x0', soc='AST2500 rev A1'):
>>> - hostname = machine.removesuffix('-bmc')
>>> + cpu_id='0x0', soc='AST2500 rev A1',
>>> + image_hostname=None):
>>> + # Allow for the image hostname to not end in "-bmc"
>>> + if image_hostname is not None:
>>> + hostname = image_hostname
>>> + else:
>>> + hostname = machine.removesuffix('-bmc')
>>> self.set_machine(machine)
>>> self.vm.set_console()
>>> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
>>> index fb87b957aa6c..050c9000b95c 100644
>>> --- a/tests/functional/meson.build
>>> +++ b/tests/functional/meson.build
>>> @@ -33,6 +33,7 @@ test_timeouts = {
>>> 'arm_aspeed_ast2600' : 1200,
>>> 'arm_aspeed_bletchley' : 480,
>>> 'arm_aspeed_catalina' : 480,
>>> + 'arm_aspeed_gb200nvl_bmc' : 480,
>>> 'arm_aspeed_rainier' : 480,
>>> 'arm_bpim2u' : 500,
>>> 'arm_collie' : 180,
>>> @@ -129,6 +130,7 @@ tests_arm_system_thorough = [
>>> 'arm_aspeed_ast2600',
>>> 'arm_aspeed_bletchley',
>>> 'arm_aspeed_catalina',
>>> + 'arm_aspeed_gb200nvl_bmc',
>>> 'arm_aspeed_rainier',
>>> 'arm_bpim2u',
>>> 'arm_canona1100',
>>> diff --git a/tests/functional/test_arm_aspeed_gb200nvl_bmc.py b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>>> new file mode 100644
>>> index 000000000000..8e8e3f05c1b2
>>> --- /dev/null
>>> +++ b/tests/functional/test_arm_aspeed_gb200nvl_bmc.py
>>> @@ -0,0 +1,26 @@
>>> +#!/usr/bin/env python3
>>> +#
>>> +# Functional test that boots the ASPEED machines
>>> +#
>>> +# SPDX-License-Identifier: GPL-2.0-or-later
>>> +
>>> +from qemu_test import Asset
>>> +from aspeed import AspeedTest
>>> +
>>> +
>>> +class GB200Machine(AspeedTest):
>>> +
>>> + ASSET_GB200_FLASH = Asset(
>>> + 'https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz',
>> This test is failing for me:
>> 2025-12-21 11:10:40,608 - qemu-test - INFO - Downloading https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz to /builds/philmd/qemu/functional-cache/download/b84819317cb3dc762895ad507705978ef000bfc77c50c33a63bdd37921db0dbc...
>> 2025-12-21 11:10:40,798 - qemu-test - ERROR - Unable to download https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz: HTTP error 404
>> urllib.error.HTTPError: HTTP Error 404: Not Found
>> qemu_test.asset.AssetError: https://github.com/legoater/qemu-aspeed-boot/raw/refs/heads/master/images/gb200nvl-obmc/obmc-phosphor-image-gb200nvl-obmc-20250702182348.static.mtd.xz: Unable to download: HTTP error 404
>> make: *** [Makefile:170: run-ninja] Error 1
>
> I believe this due to :
>
> https://github.com/legoater/qemu-aspeed-boot/commit/52451b2472eeb40aa97e131aeea327e9d4a8a78a
>
> To fix, I can 'revert' the change above or we can fix QEMU.
>
> Thanks,
>
> C.
>
© 2016 - 2026 Red Hat, Inc.