[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 18/26] tests/boot_console: Test booting HP-UX firmware upgrade
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 18/26] tests/boot_console: Test booting HP-UX firmware upgrade |
Date: |
Mon, 28 Oct 2019 08:34:33 +0100 |
From: Philippe Mathieu-Daudé <address@hidden>
Add a test which boots a HP-UX firmware upgrade CD-ROM.
It exercise the PCI LSI53C895A SCSI controller.
The ISO image comes from:
https://web.archive.org/web/20101204061612/http://ftp.parisc-linux.org/kernels/712/PF_C7120023
This test is very quick, less than 3s:
$ AVOCADO_ALLOW_UNTRUSTED_CODE=yes \
avocado --show=app,console run -t arch:hppa \
tests/acceptance/boot_linux_console.py
console: Firmware Version 6.1
console: Duplex Console IO Dependent Code (IODC) revision 1
console: Memory Test/Initialization Completed
console:
------------------------------------------------------------------------------
console: (c) Copyright 2017-2018 Helge Deller <address@hidden> and SeaBIOS
developers.
console:
------------------------------------------------------------------------------
console: Processor Speed State Coprocessor State
Cache Size
console: --------- -------- --------------------- -----------------
----------
console: 0 250 MHz Active Functional 0 KB
console: Available memory: 512 MB
console: Good memory required: 16 MB
console: Primary boot path: FWSCSI.0.0
console: Alternate boot path: FWSCSI.2.0
console: Console path: SERIAL_1.9600.8.none
console: Keyboard path: PS2
console: Available boot devices:
console: 1. DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+]
console: Booting from DVD/CD [lsi 00:00.0 2:0 Drive QEMU QEMU CD-ROM 2.5+]
console: Booting...
console: Boot IO Dependent Code (IODC) revision 153
console: HARD Booted.
console: ISL Revision A.00.25 November 18, 1992
console: ISL booting ODE UPDATE ; stable off ; RUN
console: Loading...
console:
***************************************************************************
console: ******
******
console: ****** Offline Diagnostic Environment
******
console: ******
******
console: ****** (C) Copyright Hewlett-Packard Co 1993
******
console: ****** All Rights Reserved
******
console: ******
******
console: ****** HP shall not be liable for any damages resulting from the
******
console: ****** use of this program.
******
console: ******
******
console: ****** TC Version A.00.15
******
console: ****** SysLib Version A.00.44
******
console: ******
******
console:
***************************************************************************
console: Type HELP for command information.
console: ISL_CMD> UPDATE ; stable off ; RUN
console:
***************************************************************************
console: ******
******
console: ****** PDC UPDATER
******
console: ******
******
console: ****** Copyright (C) 1993, 1994, 1995 by Hewlett-Packard Company
******
console: ****** Version A.00.19
******
console: ******
******
console:
***************************************************************************
console: Type HELP for command information.
console: Stable Storage will NOT be updated
console: STARTING EXECUTION OF UPDATE
console: Unrecognized MODEL TYPE = 502
console: ERROR 0001
console: UPDATE PAUSED> exit
console: UPDATE>
console: UPDATE> ls
console: Modules on this boot media are:
console: filename type size created description
console:
-----------------------------------------------------------------------------
console: DAGGER DATA 118 96/02/15 ?
console: IMAGE1A DATA 512 96/02/15 ?
console: IMAGE1B DATA 388 96/02/15 ?
console: UPDATE> exit
console: THIS UTILITY WILL NOW RESET THE SYSTEM.....
PASS (2.39 s)
JOB TIME : 2.54 s
Suggested-by: Sven Schnelle <address@hidden>
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
v2:
- check getenv(AVOCADO_ALLOW_UNTRUSTED_CODE) (pm215)
I know this is not a 'Linux' test, but all our console functions
reside in this file and I don't want to duplicate again.
Maybe we could rename this file as 'boot_console_tests.py' or
extract the console related functions.
---
tests/acceptance/boot_linux_console.py | 27 ++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/tests/acceptance/boot_linux_console.py
b/tests/acceptance/boot_linux_console.py
index f94dc4bbca..67b396169b 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -13,6 +13,7 @@ import lzma
import gzip
import shutil
+from avocado import skipUnless
from avocado_qemu import MachineTest
from avocado_qemu import exec_command_and_wait_for_pattern
from avocado_qemu import wait_for_console_pattern
@@ -357,3 +358,29 @@ class BootLinuxConsole(MachineTest):
self.vm.launch()
console_pattern = 'Kernel command line: %s' % kernel_command_line
self.wait_for_console_pattern(console_pattern)
+
+ @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code')
+ def test_hppa_fwupdate(self):
+ """
+ :avocado: tags=arch:hppa
+ :avocado: tags=device:lsi53c895a
+ """
+ cdrom_url = ('https://github.com/philmd/qemu-testing-blob/raw/ec1b741/'
+ 'hppa/hp9000/712/C7120023.frm')
+ cdrom_hash = '17944dee46f768791953009bcda551be5ab9fac9'
+ cdrom_path = self.fetch_asset(cdrom_url, asset_hash=cdrom_hash)
+
+ self.vm.set_console()
+ self.vm.add_args('-cdrom', cdrom_path,
+ '-boot', 'd',
+ '-no-reboot')
+ self.vm.launch()
+ self.wait_for_console_pattern('Unrecognized MODEL TYPE = 502')
+
+ exec_command_and_wait_for_pattern(self, 'exit',
+ 'UPDATE>')
+ exec_command_and_wait_for_pattern(self, 'ls',
+ 'IMAGE1B')
+ exec_command_and_wait_for_pattern(self, 'exit',
+ 'THIS UTILITY WILL NOW '
+ 'RESET THE SYSTEM.....')
--
2.21.0
- Re: [PATCH 13/26] tests/acceptance: Add test that runs NetBSD 4.0 installer on PRep/40p, (continued)
- [PATCH 14/26] tests/acceptance: Test Open Firmware on the PReP/40p, Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 15/26] tests/acceptance: Test OpenBIOS on the PReP/40p, Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 16/26] tests/acceptance: Test Sandalfoot initrd on the PReP/40p, Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 17/26] .travis.yml: Let the avocado job run the 40p tests, Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 18/26] tests/boot_console: Test booting HP-UX firmware upgrade,
Philippe Mathieu-Daudé <=
- [PATCH 19/26] tests/boot_linux_console: Use Avocado archive::gzip_uncompress(), Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 20/26] tests/boot_linux_console: Add a test for the Raspberry Pi 2, Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 21/26] tests/boot_linux_console: Test the raspi2 UART1 (16550 based), Philippe Mathieu-Daudé, 2019/10/28
- [PATCH 22/26] tests/boot_linux_console: Boot Linux and run few commands on raspi3, Philippe Mathieu-Daudé, 2019/10/28