dri: make dri_driver an opaque object

There is no reason to leak the internals to backends.

BUG=b:292148713
TEST=CQ

Change-Id: I42215ad3add750f19d4a2f0a575a040d73bb19e9
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/minigbm/+/5801180
Commit-Queue: Chia-I Wu <olv@google.com>
Tested-by: Chia-I Wu <olv@google.com>
Reviewed-by: Dominik Behr <dbehr@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
This commit is contained in:
Chia-I Wu 2024-08-20 08:48:22 -07:00 committed by Chromeos LUCI
parent 2743358812
commit ac54d29297
2 changed files with 19 additions and 17 deletions

18
dri.c
View file

@ -22,6 +22,24 @@
#include "drv_priv.h"
#include "util.h"
// Avoid transitively including a bunch of unnecessary headers.
#define GL_GLEXT_LEGACY
#include "GL/internal/dri_interface.h"
#undef GL_GLEXT_LEGACY
struct dri_driver {
int fd;
void *driver_handle;
__DRIscreen *device;
__DRIcontext *context; /* Needed for map/unmap operations. */
const __DRIextension **extensions;
const __DRIcoreExtension *core_extension;
const __DRIdri2Extension *dri2_extension;
const __DRIimageExtension *image_extension;
const __DRI2flushExtension *flush_extension;
const __DRIconfig **configs;
};
static const struct {
uint32_t drm_format;
int dri_image_format;