|
|
|
@ -26,15 +26,23 @@ class AST2x00MachineSDK(QemuSystemTest): |
|
|
|
self.vm.launch() |
|
|
|
|
|
|
|
def verify_vbootrom_firmware_flow(self): |
|
|
|
wait_for_console_pattern(self, 'Found valid FIT image') |
|
|
|
wait_for_console_pattern(self, '[uboot] loading') |
|
|
|
wait_for_console_pattern(self, 'done') |
|
|
|
wait_for_console_pattern(self, '[fdt] loading') |
|
|
|
wait_for_console_pattern(self, 'done') |
|
|
|
wait_for_console_pattern(self, '[tee] loading') |
|
|
|
wait_for_console_pattern(self, 'done') |
|
|
|
wait_for_console_pattern(self, '[atf] loading') |
|
|
|
wait_for_console_pattern(self, 'done') |
|
|
|
wait_for_console_pattern(self, 'Found valid caliptra flash image') |
|
|
|
wait_for_console_pattern(self, 'Check flash image checksum') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Read abb header') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Read soc manifest') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Load atf image') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Load optee image') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Load uboot image') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Load ssp image') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Load tsp image') |
|
|
|
wait_for_console_pattern(self, 'pass') |
|
|
|
wait_for_console_pattern(self, 'Jumping to BL31 (Trusted Firmware-A)') |
|
|
|
|
|
|
|
def enable_ast2700_pcie2(self): |
|
|
|
@ -63,9 +71,9 @@ class AST2x00MachineSDK(QemuSystemTest): |
|
|
|
exec_command_and_wait_for_pattern(self, 'root', 'Password:') |
|
|
|
exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~#') |
|
|
|
|
|
|
|
ASSET_SDK_V908_AST2700A1 = Asset( |
|
|
|
'https://github.com/AspeedTech-BMC/openbmc/releases/download/v09.08/ast2700-default-obmc.tar.gz', |
|
|
|
'eac3dc409b7ea3cd4b03d4792d3cebd469792ad893cb51e1d15f0fc20bd1e2cd') |
|
|
|
ASSET_SDK_V1100_AST2700A1 = Asset( |
|
|
|
'https://github.com/AspeedTech-BMC/openbmc/releases/download/v11.00/ast2700-a1-obmc.tar.gz', |
|
|
|
'd5ceed511cd0dfefbb102fff2d731159e0472948a28066dc0d90bcd54be76525') |
|
|
|
|
|
|
|
def do_ast2700_i2c_test(self): |
|
|
|
exec_command_and_wait_for_pattern(self, |
|
|
|
@ -93,19 +101,10 @@ class AST2x00MachineSDK(QemuSystemTest): |
|
|
|
|
|
|
|
def start_ast2700_test(self, name): |
|
|
|
num_cpu = 4 |
|
|
|
uboot_size = os.path.getsize(self.scratch_file(name, |
|
|
|
'u-boot-nodtb.bin')) |
|
|
|
uboot_dtb_load_addr = hex(0x400000000 + uboot_size) |
|
|
|
|
|
|
|
load_images_list = [ |
|
|
|
{ |
|
|
|
'addr': '0x400000000', |
|
|
|
'file': self.scratch_file(name, |
|
|
|
'u-boot-nodtb.bin') |
|
|
|
}, |
|
|
|
{ |
|
|
|
'addr': str(uboot_dtb_load_addr), |
|
|
|
'file': self.scratch_file(name, 'u-boot.dtb') |
|
|
|
'file': self.scratch_file(name, 'u-boot.bin') |
|
|
|
}, |
|
|
|
{ |
|
|
|
'addr': '0x430000000', |
|
|
|
@ -113,8 +112,7 @@ class AST2x00MachineSDK(QemuSystemTest): |
|
|
|
}, |
|
|
|
{ |
|
|
|
'addr': '0x430080000', |
|
|
|
'file': self.scratch_file(name, 'optee', |
|
|
|
'tee-raw.bin') |
|
|
|
'file': self.scratch_file(name, 'optee', 'tee-raw.bin') |
|
|
|
} |
|
|
|
] |
|
|
|
|
|
|
|
@ -137,26 +135,26 @@ class AST2x00MachineSDK(QemuSystemTest): |
|
|
|
self.do_test_aarch64_aspeed_sdk_start( |
|
|
|
self.scratch_file(name, 'image-bmc')) |
|
|
|
|
|
|
|
def test_aarch64_ast2700a1_evb_sdk_v09_08(self): |
|
|
|
def test_aarch64_ast2700a1_evb_sdk_v11_00(self): |
|
|
|
self.set_machine('ast2700a1-evb') |
|
|
|
self.require_netdev('user') |
|
|
|
|
|
|
|
self.archive_extract(self.ASSET_SDK_V908_AST2700A1) |
|
|
|
self.archive_extract(self.ASSET_SDK_V1100_AST2700A1) |
|
|
|
self.vm.add_args('-device', 'e1000e,netdev=net1,bus=pcie.2') |
|
|
|
self.vm.add_args('-netdev', 'user,id=net1') |
|
|
|
self.start_ast2700_test('ast2700-default') |
|
|
|
self.verify_openbmc_boot_and_login('ast2700-default') |
|
|
|
self.start_ast2700_test('ast2700-a1') |
|
|
|
self.verify_openbmc_boot_and_login('ast2700-a1') |
|
|
|
self.do_ast2700_i2c_test() |
|
|
|
self.do_ast2700_pcie_test() |
|
|
|
|
|
|
|
def test_aarch64_ast2700a1_evb_sdk_vbootrom_v09_08(self): |
|
|
|
def test_aarch64_ast2700a1_evb_sdk_vbootrom_v11_00(self): |
|
|
|
self.set_machine('ast2700a1-evb') |
|
|
|
self.require_netdev('user') |
|
|
|
|
|
|
|
self.archive_extract(self.ASSET_SDK_V908_AST2700A1) |
|
|
|
self.archive_extract(self.ASSET_SDK_V1100_AST2700A1) |
|
|
|
self.vm.add_args('-device', 'e1000e,netdev=net1,bus=pcie.2') |
|
|
|
self.vm.add_args('-netdev', 'user,id=net1') |
|
|
|
self.start_ast2700_test_vbootrom('ast2700-default') |
|
|
|
self.start_ast2700_test_vbootrom('ast2700-a1') |
|
|
|
self.verify_vbootrom_firmware_flow() |
|
|
|
self.verify_openbmc_boot_start() |
|
|
|
|
|
|
|
|