summaryrefslogtreecommitdiffstats
path: root/src/gbm/backends/dri
diff options
context:
space:
mode:
Diffstat (limited to 'src/gbm/backends/dri')
-rw-r--r--src/gbm/backends/dri/gbm_dri.c36
-rw-r--r--src/gbm/backends/dri/gbm_driint.h16
2 files changed, 35 insertions, 17 deletions
diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c
index 8d7e4babc3a..8f1668d476b 100644
--- a/src/gbm/backends/dri/gbm_dri.c
+++ b/src/gbm/backends/dri/gbm_dri.c
@@ -478,51 +478,63 @@ dri_screen_create_sw(struct gbm_dri_device *dri)
static const struct gbm_dri_visual gbm_dri_visuals_table[] = {
{
GBM_FORMAT_R8, __DRI_IMAGE_FORMAT_R8,
- { 0x000000ff, 0x00000000, 0x00000000, 0x00000000 },
+ { 0, -1, -1, -1 },
+ { 8, 0, 0, 0 },
},
{
GBM_FORMAT_GR88, __DRI_IMAGE_FORMAT_GR88,
- { 0x000000ff, 0x0000ff00, 0x00000000, 0x00000000 },
+ { 0, 8, -1, -1 },
+ { 8, 8, 0, 0 },
},
{
GBM_FORMAT_ARGB1555, __DRI_IMAGE_FORMAT_ARGB1555,
- { 0x00007c00, 0x000003e0, 0x0000001f, 0x00008000 },
+ { 10, 5, 0, 11 },
+ { 5, 5, 5, 1 },
},
{
GBM_FORMAT_RGB565, __DRI_IMAGE_FORMAT_RGB565,
- { 0x0000f800, 0x000007e0, 0x0000001f, 0x00000000 },
+ { 11, 5, 0, -1 },
+ { 5, 6, 5, 0 },
},
{
GBM_FORMAT_XRGB8888, __DRI_IMAGE_FORMAT_XRGB8888,
- { 0x00ff0000, 0x0000ff00, 0x000000ff, 0x00000000 },
+ { 16, 8, 0, -1 },
+ { 8, 8, 8, 0 },
},
{
GBM_FORMAT_ARGB8888, __DRI_IMAGE_FORMAT_ARGB8888,
- { 0x00ff0000, 0x0000ff00, 0x000000ff, 0xff000000 },
+ { 16, 8, 0, 24 },
+ { 8, 8, 8, 8 },
},
{
GBM_FORMAT_XBGR8888, __DRI_IMAGE_FORMAT_XBGR8888,
- { 0x000000ff, 0x0000ff00, 0x00ff0000, 0x00000000 },
+ { 0, 8, 16, -1 },
+ { 8, 8, 8, 0 },
},
{
GBM_FORMAT_ABGR8888, __DRI_IMAGE_FORMAT_ABGR8888,
- { 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000 },
+ { 0, 8, 16, 24 },
+ { 8, 8, 8, 8 },
},
{
GBM_FORMAT_XRGB2101010, __DRI_IMAGE_FORMAT_XRGB2101010,
- { 0x3ff00000, 0x000ffc00, 0x000003ff, 0x00000000 },
+ { 20, 10, 0, -1 },
+ { 10, 10, 10, 0 },
},
{
GBM_FORMAT_ARGB2101010, __DRI_IMAGE_FORMAT_ARGB2101010,
- { 0x3ff00000, 0x000ffc00, 0x000003ff, 0xc0000000 },
+ { 20, 10, 0, 30 },
+ { 10, 10, 10, 2 },
},
{
GBM_FORMAT_XBGR2101010, __DRI_IMAGE_FORMAT_XBGR2101010,
- { 0x000003ff, 0x000ffc00, 0x3ff00000, 0x00000000 },
+ { 0, 10, 20, -1 },
+ { 10, 10, 10, 0 },
},
{
GBM_FORMAT_ABGR2101010, __DRI_IMAGE_FORMAT_ABGR2101010,
- { 0x000003ff, 0x000ffc00, 0x3ff00000, 0xc0000000 },
+ { 0, 10, 20, 30 },
+ { 10, 10, 10, 2 },
},
};
diff --git a/src/gbm/backends/dri/gbm_driint.h b/src/gbm/backends/dri/gbm_driint.h
index 8497be3e8f6..75299bdb846 100644
--- a/src/gbm/backends/dri/gbm_driint.h
+++ b/src/gbm/backends/dri/gbm_driint.h
@@ -44,11 +44,17 @@ struct gbm_dri_visual {
uint32_t gbm_format;
int dri_image_format;
struct {
- uint32_t red;
- uint32_t green;
- uint32_t blue;
- uint32_t alpha;
- } rgba_masks;
+ int red;
+ int green;
+ int blue;
+ int alpha;
+ } rgba_shifts;
+ struct {
+ unsigned int red;
+ unsigned int green;
+ unsigned int blue;
+ unsigned int alpha;
+ } rgba_sizes;
};
struct gbm_dri_device {