external/drm_gralloc
リビジョン | e94fe60a71c18e5b238a2c5f62a93cef06b2cedf (tree) |
---|---|
日時 | 2017-07-03 15:29:29 |
作者 | Chih-Wei Huang <cwhuang@linu...> |
コミッター | Chih-Wei Huang |
Change default pixel format to RGBA8888
This is a WIP patch to change the default pixel format to RGBA8888.
The corresponding patches for Mesa are also needed.
Only i965 is tested.
@@ -156,6 +156,7 @@ static void fd_init_kms_features(struct gralloc_drm_drv_t *drv, | ||
156 | 156 | struct fd_info *info = (struct fd_info *) drv; |
157 | 157 | |
158 | 158 | switch (drm->primary->fb_format) { |
159 | + case HAL_PIXEL_FORMAT_RGBA_8888: | |
159 | 160 | case HAL_PIXEL_FORMAT_BGRA_8888: |
160 | 161 | case HAL_PIXEL_FORMAT_RGB_565: |
161 | 162 | break; |
@@ -203,4 +204,4 @@ struct gralloc_drm_drv_t *gralloc_drm_drv_create_for_freedreno(int fd) | ||
203 | 204 | info->base.unmap = fd_unmap; |
204 | 205 | |
205 | 206 | return &info->base; |
206 | -} | |
\ No newline at end of file | ||
207 | +} |
@@ -604,6 +604,7 @@ static void intel_init_kms_features(struct gralloc_drm_drv_t *drv, | ||
604 | 604 | int pageflipping, id, has_blt; |
605 | 605 | |
606 | 606 | switch (drm->primary->fb_format) { |
607 | + case HAL_PIXEL_FORMAT_RGBA_8888: | |
607 | 608 | case HAL_PIXEL_FORMAT_BGRA_8888: |
608 | 609 | case HAL_PIXEL_FORMAT_RGB_565: |
609 | 610 | break; |
@@ -111,7 +111,8 @@ static unsigned int drm_format_from_hal(int hal_format) | ||
111 | 111 | case HAL_PIXEL_FORMAT_RGBX_8888: |
112 | 112 | return DRM_FORMAT_XBGR8888; |
113 | 113 | case HAL_PIXEL_FORMAT_RGBA_8888: |
114 | - return DRM_FORMAT_RGBA8888; | |
114 | +// return DRM_FORMAT_ABGR8888; | |
115 | + return DRM_FORMAT_XBGR8888; | |
115 | 116 | case HAL_PIXEL_FORMAT_RGB_565: |
116 | 117 | return DRM_FORMAT_RGB565; |
117 | 118 | case HAL_PIXEL_FORMAT_YV12: |
@@ -1040,7 +1041,7 @@ static int drm_kms_init_with_connector(struct gralloc_drm_t *drm, | ||
1040 | 1041 | break; |
1041 | 1042 | case 4: |
1042 | 1043 | default: |
1043 | - output->fb_format = HAL_PIXEL_FORMAT_BGRA_8888; | |
1044 | + output->fb_format = HAL_PIXEL_FORMAT_RGBA_8888; | |
1044 | 1045 | break; |
1045 | 1046 | } |
1046 | 1047 |
@@ -303,6 +303,7 @@ static void nouveau_init_kms_features(struct gralloc_drm_drv_t *drv, | ||
303 | 303 | struct nouveau_info *info = (struct nouveau_info *) drv; |
304 | 304 | |
305 | 305 | switch (drm->primary->fb_format) { |
306 | + case HAL_PIXEL_FORMAT_RGBA_8888: | |
306 | 307 | case HAL_PIXEL_FORMAT_BGRA_8888: |
307 | 308 | case HAL_PIXEL_FORMAT_RGB_565: |
308 | 309 | break; |
@@ -342,6 +342,7 @@ static void pipe_init_kms_features(struct gralloc_drm_drv_t *drv, struct gralloc | ||
342 | 342 | struct pipe_manager *pm = (struct pipe_manager *) drv; |
343 | 343 | |
344 | 344 | switch (drm->primary->fb_format) { |
345 | + case HAL_PIXEL_FORMAT_RGBA_8888: | |
345 | 346 | case HAL_PIXEL_FORMAT_BGRA_8888: |
346 | 347 | case HAL_PIXEL_FORMAT_RGB_565: |
347 | 348 | break; |
@@ -322,6 +322,7 @@ static void drm_gem_radeon_init_kms_features(struct gralloc_drm_drv_t *drv, | ||
322 | 322 | struct gralloc_drm_t *drm) |
323 | 323 | { |
324 | 324 | switch (drm->primary->fb_format) { |
325 | + case HAL_PIXEL_FORMAT_RGBA_8888: | |
325 | 326 | case HAL_PIXEL_FORMAT_BGRA_8888: |
326 | 327 | case HAL_PIXEL_FORMAT_RGB_565: |
327 | 328 | break; |