test_kmscube.py 1.6 KB

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