qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/2] tests/boot_console: Test booting HP-UX firmware upgrade


From: Wainer dos Santos Moschetta
Subject: Re: [PATCH 2/2] tests/boot_console: Test booting HP-UX firmware upgrade
Date: Wed, 29 Jan 2020 16:28:38 -0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0


On 10/10/19 9:21 AM, Philippe Mathieu-Daudé wrote:
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 --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>
---
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.

Yeah, there is some discussion about the fact that boot_linux_console contain more than just Linux boot tests. Also the 'boot something' acceptance tests list is growing fast, thus IMO soon we gonna need to re-organize the code. So I'm ok to merge this in boot_linux_console, then later refactor it all.

I could not test it because the changes no longer applies. The code looks good though, so:

Reviewed-by: Wainer dos Santos Moschetta <address@hidden>

- Wainer

---
  tests/acceptance/boot_linux_console.py | 25 +++++++++++++++++++++++++
  1 file changed, 25 insertions(+)

diff --git a/tests/acceptance/boot_linux_console.py 
b/tests/acceptance/boot_linux_console.py
index f05452824e..8bfcd0625a 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -378,3 +378,28 @@ class BootLinuxConsole(Test):
          self.vm.launch()
          console_pattern = 'Kernel command line: %s' % kernel_command_line
          self.wait_for_console_pattern(console_pattern)
+
+    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')
+
+        self.exec_command_and_wait_for_pattern('exit',
+                                               'UPDATE>')
+        self.exec_command_and_wait_for_pattern('ls',
+                                               'IMAGE1B')
+        self.exec_command_and_wait_for_pattern('exit',
+                                               'THIS UTILITY WILL NOW '
+                                               'RESET THE SYSTEM.....')




reply via email to

[Prev in Thread] Current Thread [Next in Thread]