Re: [PATCH 1/2] tests/acceptance: Test ast2400 and ast2500 machines

2021-03-04 Thread Philippe Mathieu-Daudé
On 3/3/21 12:19 PM, Joel Stanley wrote:
> On Wed, 3 Mar 2021 at 10:19, Philippe Mathieu-Daudé  wrote:
>>
>> On 3/3/21 2:22 AM, Joel Stanley wrote:
>>> Test MTD images from the OpenBMC project on AST2400 and AST2500 SoCs
>>> from ASPEED, by booting Palmetto and Romulus BMC machines.
>>>
>>> The images are fetched from OpenBMC's release directory on github.
>>
>> You need to justify here why this is safe to run that
>> on anyone workstation, or use AVOCADO_ALLOW_UNTRUSTED_CODE.
> 
> I don't completely understand. What circumstances would it be unsafe
> to run a qemu guest, aside from a bug in qemu itself?

See Alex's rationale here:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg774096.html

Point taken, this should be better documented.




Re: [PATCH 1/2] tests/acceptance: Test ast2400 and ast2500 machines

2021-03-03 Thread Joel Stanley
On Wed, 3 Mar 2021 at 10:19, Philippe Mathieu-Daudé  wrote:
>
> On 3/3/21 2:22 AM, Joel Stanley wrote:
> > Test MTD images from the OpenBMC project on AST2400 and AST2500 SoCs
> > from ASPEED, by booting Palmetto and Romulus BMC machines.
> >
> > The images are fetched from OpenBMC's release directory on github.
>
> You need to justify here why this is safe to run that
> on anyone workstation, or use AVOCADO_ALLOW_UNTRUSTED_CODE.

I don't completely understand. What circumstances would it be unsafe
to run a qemu guest, aside from a bug in qemu itself?

Cheers,

Joel



Re: [PATCH 1/2] tests/acceptance: Test ast2400 and ast2500 machines

2021-03-03 Thread Philippe Mathieu-Daudé
On 3/3/21 2:22 AM, Joel Stanley wrote:
> Test MTD images from the OpenBMC project on AST2400 and AST2500 SoCs
> from ASPEED, by booting Palmetto and Romulus BMC machines.
> 
> The images are fetched from OpenBMC's release directory on github.

You need to justify here why this is safe to run that
on anyone workstation, or use AVOCADO_ALLOW_UNTRUSTED_CODE.

> 
> Co-developed-by: Cédric Le Goater 
> Signed-off-by: Joel Stanley 
> ---
>  tests/acceptance/boot_linux_console.py | 46 ++
>  1 file changed, 46 insertions(+)
> 
> diff --git a/tests/acceptance/boot_linux_console.py 
> b/tests/acceptance/boot_linux_console.py
> index eb012867997f..2f46a08fdc10 100644
> --- a/tests/acceptance/boot_linux_console.py
> +++ b/tests/acceptance/boot_linux_console.py
> @@ -1048,6 +1048,52 @@ def test_arm_vexpressa9(self):
>  self.vm.add_args('-dtb', self.workdir + 
> '/day16/vexpress-v2p-ca9.dtb')
>  self.do_test_advcal_2018('16', tar_hash, 'winter.zImage')
>  
> +def test_arm_ast2400_palmetto_openbmc_v2_9_0(self):
> +"""
> +:avocado: tags=arch:arm
> +:avocado: tags=machine:palmetto-bmc
> +"""
> +
> +image_url = 
> ('https://github.com/openbmc/openbmc/releases/download/2.9.0/'
> + 'obmc-phosphor-image-palmetto.static.mtd')
> +image_hash = 
> ('3e13bbbc28e424865dc42f35ad672b10f2e82cdb11846bb28fa625b48beafd0d')
> +image_path = self.fetch_asset(image_url, asset_hash=image_hash,
> +  algorithm='sha256')
> +
> +self.do_test_arm_aspeed(image_path)




Re: [PATCH 1/2] tests/acceptance: Test ast2400 and ast2500 machines

2021-03-02 Thread Cédric Le Goater
On 3/3/21 2:22 AM, Joel Stanley wrote:
> Test MTD images from the OpenBMC project on AST2400 and AST2500 SoCs
> from ASPEED, by booting Palmetto and Romulus BMC machines.
> 
> The images are fetched from OpenBMC's release directory on github.
> 
> Co-developed-by: Cédric Le Goater 
> Signed-off-by: Joel Stanley 


Reviewed-by: Cédric Le Goater 
Tested-by: Cédric Le Goater 

Thanks,

C. 


> ---
>  tests/acceptance/boot_linux_console.py | 46 ++
>  1 file changed, 46 insertions(+)
> 
> diff --git a/tests/acceptance/boot_linux_console.py 
> b/tests/acceptance/boot_linux_console.py
> index eb012867997f..2f46a08fdc10 100644
> --- a/tests/acceptance/boot_linux_console.py
> +++ b/tests/acceptance/boot_linux_console.py
> @@ -1048,6 +1048,52 @@ def test_arm_vexpressa9(self):
>  self.vm.add_args('-dtb', self.workdir + 
> '/day16/vexpress-v2p-ca9.dtb')
>  self.do_test_advcal_2018('16', tar_hash, 'winter.zImage')
>  
> +def test_arm_ast2400_palmetto_openbmc_v2_9_0(self):
> +"""
> +:avocado: tags=arch:arm
> +:avocado: tags=machine:palmetto-bmc
> +"""
> +
> +image_url = 
> ('https://github.com/openbmc/openbmc/releases/download/2.9.0/'
> + 'obmc-phosphor-image-palmetto.static.mtd')
> +image_hash = 
> ('3e13bbbc28e424865dc42f35ad672b10f2e82cdb11846bb28fa625b48beafd0d')
> +image_path = self.fetch_asset(image_url, asset_hash=image_hash,
> +  algorithm='sha256')
> +
> +self.do_test_arm_aspeed(image_path)
> +
> +def test_arm_ast2500_romulus_openbmc_v2_9_0(self):
> +"""
> +:avocado: tags=arch:arm
> +:avocado: tags=machine:romulus-bmc
> +"""
> +
> +image_url = 
> ('https://github.com/openbmc/openbmc/releases/download/2.9.0/'
> + 'obmc-phosphor-image-romulus.static.mtd')
> +image_hash = 
> ('820341076803f1955bc31e647a512c79f9add4f5233d0697678bab4604c7bb25')
> +image_path = self.fetch_asset(image_url, asset_hash=image_hash,
> +  algorithm='sha256')
> +
> +self.do_test_arm_aspeed(image_path)
> +
> +def do_test_arm_aspeed(self, image):
> +self.vm.set_console()
> +self.vm.add_args('-drive', 'file=' + image + ',if=mtd,format=raw',
> + '-net', 'nic')
> +self.vm.launch()
> +
> +self.wait_for_console_pattern("U-Boot 2016.07")
> +self.wait_for_console_pattern("## Loading kernel from FIT Image at 
> 2008")
> +self.wait_for_console_pattern("Starting kernel ...")
> +self.wait_for_console_pattern("Booting Linux on physical CPU 0x0")
> +self.wait_for_console_pattern(
> +"aspeed-smc 1e62.spi: read control register: 203b0641")
> +self.wait_for_console_pattern("ftgmac100 1e66.ethernet eth0: irq 
> ")
> +self.wait_for_console_pattern("systemd[1]: Set hostname to")
> +# This often takes longer than the 90s timeout
> +# self.wait_for_console_pattern("login:")
> +self.vm.shutdown()
> +
>  def test_m68k_mcf5208evb(self):
>  """
>  :avocado: tags=arch:m68k
> 




[PATCH 1/2] tests/acceptance: Test ast2400 and ast2500 machines

2021-03-02 Thread Joel Stanley
Test MTD images from the OpenBMC project on AST2400 and AST2500 SoCs
from ASPEED, by booting Palmetto and Romulus BMC machines.

The images are fetched from OpenBMC's release directory on github.

Co-developed-by: Cédric Le Goater 
Signed-off-by: Joel Stanley 
---
 tests/acceptance/boot_linux_console.py | 46 ++
 1 file changed, 46 insertions(+)

diff --git a/tests/acceptance/boot_linux_console.py 
b/tests/acceptance/boot_linux_console.py
index eb012867997f..2f46a08fdc10 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -1048,6 +1048,52 @@ def test_arm_vexpressa9(self):
 self.vm.add_args('-dtb', self.workdir + '/day16/vexpress-v2p-ca9.dtb')
 self.do_test_advcal_2018('16', tar_hash, 'winter.zImage')
 
+def test_arm_ast2400_palmetto_openbmc_v2_9_0(self):
+"""
+:avocado: tags=arch:arm
+:avocado: tags=machine:palmetto-bmc
+"""
+
+image_url = 
('https://github.com/openbmc/openbmc/releases/download/2.9.0/'
+ 'obmc-phosphor-image-palmetto.static.mtd')
+image_hash = 
('3e13bbbc28e424865dc42f35ad672b10f2e82cdb11846bb28fa625b48beafd0d')
+image_path = self.fetch_asset(image_url, asset_hash=image_hash,
+  algorithm='sha256')
+
+self.do_test_arm_aspeed(image_path)
+
+def test_arm_ast2500_romulus_openbmc_v2_9_0(self):
+"""
+:avocado: tags=arch:arm
+:avocado: tags=machine:romulus-bmc
+"""
+
+image_url = 
('https://github.com/openbmc/openbmc/releases/download/2.9.0/'
+ 'obmc-phosphor-image-romulus.static.mtd')
+image_hash = 
('820341076803f1955bc31e647a512c79f9add4f5233d0697678bab4604c7bb25')
+image_path = self.fetch_asset(image_url, asset_hash=image_hash,
+  algorithm='sha256')
+
+self.do_test_arm_aspeed(image_path)
+
+def do_test_arm_aspeed(self, image):
+self.vm.set_console()
+self.vm.add_args('-drive', 'file=' + image + ',if=mtd,format=raw',
+ '-net', 'nic')
+self.vm.launch()
+
+self.wait_for_console_pattern("U-Boot 2016.07")
+self.wait_for_console_pattern("## Loading kernel from FIT Image at 
2008")
+self.wait_for_console_pattern("Starting kernel ...")
+self.wait_for_console_pattern("Booting Linux on physical CPU 0x0")
+self.wait_for_console_pattern(
+"aspeed-smc 1e62.spi: read control register: 203b0641")
+self.wait_for_console_pattern("ftgmac100 1e66.ethernet eth0: irq ")
+self.wait_for_console_pattern("systemd[1]: Set hostname to")
+# This often takes longer than the 90s timeout
+# self.wait_for_console_pattern("login:")
+self.vm.shutdown()
+
 def test_m68k_mcf5208evb(self):
 """
 :avocado: tags=arch:m68k
-- 
2.30.1