This is the initial implementation of a DRM backend based on the EGLDevice, EGLOutput, and EGLStream extensions, supporting NVIDIA graphics hardware using their proprietary driver. The new backend will be used if the environment variable KWIN_DRM_USE_EGLDEVICE is set. On initialization, it will attempt to create an EGLDevice based on the DRM device currently in use and create EGLOutputs and EGLStreams for any attached displays. These are used to control presentation of the final composited frame. Additionally, it will register the wl_eglstream_controller Wayland interface so that native EGL windows created by clients can be attached to an EGLStream allowing buffer contents to be shared with the compositor as a GL texture.
Currently, this backend is incompatible with atomic modesetting and hardware cursors. Support for both is planned as future work, as is integration with the autotesting framework and support for remote access.
At this time there is a known bug in the NVIDIA driver where plasmashell's tool-tip window will appear blank if it is resized. A fix is in development and should be present in an upcoming driver release.