config BR2_PACKAGE_MESA3D_NEEDS_XA
        bool
 
+# Quote from mesa3d meson.build: "kmsro driver requires one or more
+# renderonly drivers (vc4, etnaviv, freedreno)". But only vc4 support
+# is available by using the (deprecated) autotools build system.
+config BR2_PACKAGE_MESA3D_GALLIUM_KMSRO
+       bool
+
 comment "Gallium drivers"
 
 config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV
        help
          Mesa driver for Vivante GPUs.
 
+config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_KMSRO
+       bool "Gallium KMSRO driver"
+       depends on BR2_PACKAGE_MESA3D_GALLIUM_KMSRO
+       help
+         Support various sorts of KMS displays with the
+         renderonly layer used to attach a GPU.
+
+comment "Gallium KMSRO needs one or more renderonly drivers"
+       depends on !BR2_PACKAGE_MESA3D_GALLIUM_KMSRO
+
 config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU
        bool "Gallium nouveau driver"
        depends on BR2_i386 || BR2_x86_64
        bool "Gallium vc4 driver"
        depends on BR2_ARM_CPU_HAS_NEON || BR2_aarch64
        select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
+       select BR2_PACKAGE_MESA3D_GALLIUM_KMSRO
        select BR2_PACKAGE_LIBDRM_VC4
        select BR2_PACKAGE_MESA3D_NEEDS_XA
        select BR2_PACKAGE_MESA3D_OPENGL_EGL
 
 
 #Gallium Drivers
 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_ETNAVIV)  += etnaviv
+MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_KMSRO)    += kmsro
 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU)  += nouveau
 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600)     += r600
 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI) += radeonsi