|
@@ -12,6 +12,7 @@
|
|
|
from avocado_qemu import wait_for_console_pattern
|
|
|
from avocado_qemu import exec_command
|
|
|
from avocado_qemu import exec_command_and_wait_for_pattern
|
|
|
+from avocado_qemu import interrupt_interactive_console_until_pattern
|
|
|
from avocado.utils import archive
|
|
|
from avocado import skipIf
|
|
|
|
|
@@ -182,6 +183,8 @@ def test_arm_ast2600_evb_buildroot(self):
|
|
|
|
|
|
class AST2x00MachineSDK(QemuSystemTest):
|
|
|
|
|
|
+ EXTRA_BOOTARGS = ' quiet'
|
|
|
+
|
|
|
# FIXME: Although these tests boot a whole distro they are still
|
|
|
# slower than comparable machine models. There may be some
|
|
|
# optimisations which bring down the runtime. In the meantime they
|
|
@@ -194,7 +197,7 @@ def wait_for_console_pattern(self, success_message, vm=None):
|
|
|
failure_message='Kernel panic - not syncing',
|
|
|
vm=vm)
|
|
|
|
|
|
- def do_test_arm_aspeed_sdk_start(self, image, cpu_id):
|
|
|
+ def do_test_arm_aspeed_sdk_start(self, image):
|
|
|
self.require_netdev('user')
|
|
|
self.vm.set_console()
|
|
|
self.vm.add_args('-drive', 'file=' + image + ',if=mtd,format=raw',
|
|
@@ -202,9 +205,13 @@ def do_test_arm_aspeed_sdk_start(self, image, cpu_id):
|
|
|
self.vm.launch()
|
|
|
|
|
|
self.wait_for_console_pattern('U-Boot 2019.04')
|
|
|
- self.wait_for_console_pattern('## Loading kernel from FIT Image')
|
|
|
+ interrupt_interactive_console_until_pattern(
|
|
|
+ self, 'Hit any key to stop autoboot:', 'ast#')
|
|
|
+ exec_command_and_wait_for_pattern(
|
|
|
+ self, 'setenv bootargs ${bootargs}' + self.EXTRA_BOOTARGS, 'ast#')
|
|
|
+ exec_command_and_wait_for_pattern(
|
|
|
+ self, 'boot', '## Loading kernel from FIT Image')
|
|
|
self.wait_for_console_pattern('Starting kernel ...')
|
|
|
- self.wait_for_console_pattern('Booting Linux on physical CPU ' + cpu_id)
|
|
|
|
|
|
@skipIf(os.getenv('GITLAB_CI'), 'Running on GitLab')
|
|
|
def test_arm_ast2500_evb_sdk(self):
|
|
@@ -221,7 +228,7 @@ def test_arm_ast2500_evb_sdk(self):
|
|
|
archive.extract(image_path, self.workdir)
|
|
|
|
|
|
self.do_test_arm_aspeed_sdk_start(
|
|
|
- self.workdir + '/ast2500-default/image-bmc', '0x0')
|
|
|
+ self.workdir + '/ast2500-default/image-bmc')
|
|
|
self.wait_for_console_pattern('ast2500-default login:')
|
|
|
|
|
|
@skipIf(os.getenv('GITLAB_CI'), 'Running on GitLab')
|
|
@@ -243,7 +250,7 @@ def test_arm_ast2600_evb_sdk(self):
|
|
|
self.vm.add_args('-device',
|
|
|
'ds1338,bus=aspeed.i2c.bus.5,address=0x32');
|
|
|
self.do_test_arm_aspeed_sdk_start(
|
|
|
- self.workdir + '/ast2600-default/image-bmc', '0xf00')
|
|
|
+ self.workdir + '/ast2600-default/image-bmc')
|
|
|
self.wait_for_console_pattern('ast2600-default login:')
|
|
|
exec_command_and_wait_for_pattern(self, 'root', 'Password:')
|
|
|
exec_command_and_wait_for_pattern(self, '0penBmc', 'root@ast2600-default:~#')
|