From: "Cédric Le Goater" <clg@redhat.com>
To: qemu-arm@nongnu.org, qemu-devel@nongnu.org
Cc: "Jamin Lin" <jamin_lin@aspeedtech.com>,
"Cédric Le Goater" <clg@redhat.com>
Subject: [PULL 3/5] tests/functional/aarch64/test_aspeed: Disable kernel crypto self-tests in AST2700 boot tests
Date: Tue, 24 Mar 2026 13:41:29 +0100 [thread overview]
Message-ID: <20260324124131.1053711-4-clg@redhat.com> (raw)
In-Reply-To: <20260324124131.1053711-1-clg@redhat.com>
From: Jamin Lin <jamin_lin@aspeedtech.com>
Disable the kernel crypto self-tests in the AST2700 functional tests by
appending "cryptomgr.notests=1" to the U-Boot bootargs before booting
the kernel.
The ASPEED SDK enables crypto self-tests during kernel startup to
validate the hardware crypto engine. However, the current QEMU
implementation of the AST2700 HACE/crypto engine is still incomplete.
As a result, the kernel crypto self-tests trigger multiple warnings
during boot when running under QEMU.
Typical examples observed in the kernel log include failures for
several cipher modes such as DES/TDES/AES in ECB/CBC/CTR modes:
alg: self-tests for ctr(des) using aspeed-ctr-des failed (rc=-22)
alg: self-tests for ecb(des3_ede) using aspeed-ecb-tdes failed (rc=-22)
alg: self-tests for cbc(aes) using aspeed-cbc-aes failed (rc=-22)
...
To reduce noise in the functional test logs, the tests now append
the following parameter to the kernel bootargs:
cryptomgr.notests=1
This disables the kernel crypto self-tests when running the functional
tests under QEMU.
For validating the HACE implementation, we should instead rely on the
dedicated QEMU unit tests located in:
tests/qtest/ast2700-hace-test.c
Once the QEMU implementation of the ASPEED HACE/crypto model has
progressed further and supports the missing crypto modes, we can
reassess whether enabling the kernel crypto self-tests again in the
functional tests is appropriate.
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260316081549.1279841-1-jamin_lin@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
---
tests/functional/aarch64/test_aspeed_ast2700a1.py | 11 +++++++++--
tests/functional/aarch64/test_aspeed_ast2700a2.py | 11 +++++++++--
tests/functional/aarch64/test_aspeed_ast2700fc.py | 9 +++++++--
3 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/tests/functional/aarch64/test_aspeed_ast2700a1.py b/tests/functional/aarch64/test_aspeed_ast2700a1.py
index 5c0c4b0ed50f..b0c08854daa9 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700a1.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700a1.py
@@ -51,9 +51,11 @@ def verify_vbootrom_firmware_flow(self):
wait_for_console_pattern(self, 'pass')
wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')
+ def disable_kernel_crypto_selftest(self):
+ exec_command_and_wait_for_pattern(self,
+ 'setenv bootargs "${bootargs} cryptomgr.notests=1"', '=>')
+
def enable_ast2700_pcie2(self):
- wait_for_console_pattern(self, 'Hit any key to stop autoboot')
- exec_command_and_wait_for_pattern(self, '\012', '=>')
exec_command_and_wait_for_pattern(self,
'cp 100420000 403000000 900000', '=>')
exec_command_and_wait_for_pattern(self,
@@ -67,8 +69,13 @@ def enable_ast2700_pcie2(self):
def verify_openbmc_boot_start(self, enable_pcie=True):
wait_for_console_pattern(self, 'U-Boot 2023.10')
+ wait_for_console_pattern(self, 'Hit any key to stop autoboot')
+ exec_command_and_wait_for_pattern(self, '\012', '=>')
+ self.disable_kernel_crypto_selftest()
if enable_pcie:
self.enable_ast2700_pcie2()
+ else:
+ exec_command(self, 'boot')
wait_for_console_pattern(self, 'Linux version ')
def verify_openbmc_boot_and_login(self, name, enable_pcie=True):
diff --git a/tests/functional/aarch64/test_aspeed_ast2700a2.py b/tests/functional/aarch64/test_aspeed_ast2700a2.py
index cc62a915b538..ed414999f4fa 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700a2.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700a2.py
@@ -51,9 +51,11 @@ def verify_vbootrom_firmware_flow(self):
wait_for_console_pattern(self, 'pass')
wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)')
+ def disable_kernel_crypto_selftest(self):
+ exec_command_and_wait_for_pattern(self,
+ 'setenv bootargs "${bootargs} cryptomgr.notests=1"', '=>')
+
def enable_ast2700_pcie2(self):
- wait_for_console_pattern(self, 'Hit any key to stop autoboot')
- exec_command_and_wait_for_pattern(self, '\012', '=>')
exec_command_and_wait_for_pattern(self,
'cp 100420000 403000000 900000', '=>')
exec_command_and_wait_for_pattern(self,
@@ -67,8 +69,13 @@ def enable_ast2700_pcie2(self):
def verify_openbmc_boot_start(self, enable_pcie=True):
wait_for_console_pattern(self, 'U-Boot 2023.10')
+ wait_for_console_pattern(self, 'Hit any key to stop autoboot')
+ exec_command_and_wait_for_pattern(self, '\012', '=>')
+ self.disable_kernel_crypto_selftest()
if enable_pcie:
self.enable_ast2700_pcie2()
+ else:
+ exec_command(self, 'boot')
wait_for_console_pattern(self, 'Linux version ')
def verify_openbmc_boot_and_login(self, name, enable_pcie=True):
diff --git a/tests/functional/aarch64/test_aspeed_ast2700fc.py b/tests/functional/aarch64/test_aspeed_ast2700fc.py
index f68f40a1bfaf..df889134edaa 100755
--- a/tests/functional/aarch64/test_aspeed_ast2700fc.py
+++ b/tests/functional/aarch64/test_aspeed_ast2700fc.py
@@ -27,9 +27,11 @@ def do_test_aarch64_aspeed_sdk_start(self, image):
self.vm.launch()
+ def disable_kernel_crypto_selftest(self):
+ exec_command_and_wait_for_pattern(self,
+ 'setenv bootargs "${bootargs} cryptomgr.notests=1"', '=>')
+
def enable_ast2700_pcie2(self):
- wait_for_console_pattern(self, 'Hit any key to stop autoboot')
- exec_command_and_wait_for_pattern(self, '\012', '=>')
exec_command_and_wait_for_pattern(self,
'cp 100420000 403000000 900000', '=>')
exec_command_and_wait_for_pattern(self,
@@ -43,6 +45,9 @@ def enable_ast2700_pcie2(self):
def verify_openbmc_boot_and_login(self, name):
wait_for_console_pattern(self, 'U-Boot 2023.10')
+ wait_for_console_pattern(self, 'Hit any key to stop autoboot')
+ exec_command_and_wait_for_pattern(self, '\012', '=>')
+ self.disable_kernel_crypto_selftest()
self.enable_ast2700_pcie2()
wait_for_console_pattern(self, 'Starting kernel ...')
--
2.53.0
next prev parent reply other threads:[~2026-03-24 12:43 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-24 12:41 [PULL 0/5] aspeed queue Cédric Le Goater
2026-03-24 12:41 ` [PULL 1/5] hw/i2c/aspeed: fix lost interrupts on back-to-back commands Cédric Le Goater
2026-03-24 12:41 ` [PULL 2/5] MAINTAINERS: Add Kane Chen as reviewer for Aspeed machines Cédric Le Goater
2026-03-24 12:41 ` Cédric Le Goater [this message]
2026-03-24 12:41 ` [PULL 4/5] hw/ssi/aspeed_smc: Convert mem ops to read/write_with_attrs for error handling Cédric Le Goater
2026-03-24 12:41 ` [PULL 5/5] hw/i2c/aspeed_i2c: Remove assert Cédric Le Goater
2026-03-24 18:35 ` [PULL 0/5] aspeed queue Peter Maydell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260324124131.1053711-4-clg@redhat.com \
--to=clg@redhat.com \
--cc=jamin_lin@aspeedtech.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox