backends/drm: Import gbm bos using dmabuf
It appears that importing gbm_bo's using eglCreateImageKHR() doesn't work on nvidia.
Another issue is that Platform::createDmaBufTexture() uses gbm_bo_create(). The nvidia driver doesn't like that, it's preferred to use gbm_bo_create_with_modifiers().
In order to address those issues, this change refactors how gbm_bo objects are imported and how gbm_bo's are allocated for dmabuf textures, so the same code can be reused in EglGbmBackend::textureForOutput() and Platform::createDmaBufTexture().
Edited by Vlad Zahorodnii