test_arm_aspeed_rainier.py 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. #!/usr/bin/env python3
  2. #
  3. # Functional test that boots the ASPEED machines
  4. #
  5. # SPDX-License-Identifier: GPL-2.0-or-later
  6. from qemu_test import Asset
  7. from aspeed import AspeedTest
  8. class RainierMachine(AspeedTest):
  9. ASSET_RAINIER_EMMC = Asset(
  10. ('https://fileserver.linaro.org/s/B6pJTwWEkzSDi36/download/'
  11. 'mmc-p10bmc-20240617.qcow2'),
  12. 'd523fb478d2b84d5adc5658d08502bc64b1486955683814f89c6137518acd90b')
  13. def test_arm_aspeed_emmc_boot(self):
  14. self.set_machine('rainier-bmc')
  15. self.require_netdev('user')
  16. image_path = self.ASSET_RAINIER_EMMC.fetch()
  17. self.vm.set_console()
  18. self.vm.add_args('-drive',
  19. 'file=' + image_path + ',if=sd,id=sd2,index=2',
  20. '-net', 'nic', '-net', 'user', '-snapshot')
  21. self.vm.launch()
  22. self.wait_for_console_pattern('U-Boot SPL 2019.04')
  23. self.wait_for_console_pattern('Trying to boot from MMC1')
  24. self.wait_for_console_pattern('U-Boot 2019.04')
  25. self.wait_for_console_pattern('eMMC 2nd Boot')
  26. self.wait_for_console_pattern('## Loading kernel from FIT Image')
  27. self.wait_for_console_pattern('Starting kernel ...')
  28. self.wait_for_console_pattern('Booting Linux on physical CPU 0xf00')
  29. self.wait_for_console_pattern('mmcblk0: p1 p2 p3 p4 p5 p6 p7')
  30. self.wait_for_console_pattern('IBM eBMC (OpenBMC for IBM Enterprise')
  31. ASSET_DEBIAN_LINUX_ARMHF_DEB = Asset(
  32. ('http://snapshot.debian.org/archive/debian/20220606T211338Z/pool/main/l/linux/linux-image-5.17.0-2-armmp_5.17.6-1%2Bb1_armhf.deb'),
  33. '8acb2b4439faedc2f3ed4bdb2847ad4f6e0491f73debaeb7f660c8abe4dcdc0e')
  34. def test_arm_debian_kernel_boot(self):
  35. self.set_machine('rainier-bmc')
  36. deb_path = self.ASSET_DEBIAN_LINUX_ARMHF_DEB.fetch()
  37. kernel_path = self.extract_from_deb(deb_path, '/boot/vmlinuz-5.17.0-2-armmp')
  38. dtb_path = self.extract_from_deb(deb_path,
  39. '/usr/lib/linux-image-5.17.0-2-armmp/aspeed-bmc-ibm-rainier.dtb')
  40. self.vm.set_console()
  41. self.vm.add_args('-kernel', kernel_path,
  42. '-dtb', dtb_path,
  43. '-net', 'nic')
  44. self.vm.launch()
  45. self.wait_for_console_pattern("Booting Linux on physical CPU 0xf00")
  46. self.wait_for_console_pattern("SMP: Total of 2 processors activated")
  47. self.wait_for_console_pattern("No filesystem could mount root")
  48. if __name__ == '__main__':
  49. AspeedTest.main()