1import os 2 3import infra.basetest 4 5 6class TestKmsCube(infra.basetest.BRTest): 7 config = \ 8 """ 9 BR2_aarch64=y 10 BR2_TOOLCHAIN_EXTERNAL=y 11 BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" 12 BR2_LINUX_KERNEL=y 13 BR2_LINUX_KERNEL_CUSTOM_VERSION=y 14 BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.44" 15 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y 16 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" 17 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}" 18 BR2_PACKAGE_KMSCUBE=y 19 BR2_PACKAGE_LIBDRM=y 20 BR2_PACKAGE_MESA3D=y 21 BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y 22 BR2_PACKAGE_MESA3D_LLVM=y 23 BR2_PACKAGE_MESA3D_OPENGL_EGL=y 24 BR2_PACKAGE_MESA3D_OPENGL_ES=y 25 BR2_TARGET_ROOTFS_CPIO=y 26 BR2_TARGET_ROOTFS_CPIO_GZIP=y 27 # BR2_TARGET_ROOTFS_TAR is not set 28 """.format( 29 infra.filepath("tests/package/test_kmscube/linux-vkms.fragment")) 30 31 def test_run(self): 32 img = os.path.join(self.builddir, "images", "rootfs.cpio.gz") 33 kern = os.path.join(self.builddir, "images", "Image") 34 self.emulator.boot(arch="aarch64", 35 kernel=kern, 36 kernel_cmdline=["console=ttyAMA0"], 37 options=["-M", "virt", 38 "-cpu", "cortex-a57", 39 "-smp", "4", 40 "-m", "256M", 41 "-initrd", img]) 42 self.emulator.login() 43 44 cmd = "kmscube --vmode=640x480 --count=10" 45 self.assertRunOk(cmd, timeout=30) 46