| /* |
| * Copyright 2016 The Chromium OS Authors. All rights reserved. |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #include <stddef.h> |
| #include <stdio.h> |
| |
| #include "drv.h" |
| #include "gbm.h" |
| |
| uint64_t gbm_convert_usage(uint32_t usage) |
| { |
| uint64_t use_flags = BO_USE_NONE; |
| |
| if (usage & GBM_BO_USE_SCANOUT) |
| use_flags |= BO_USE_SCANOUT; |
| if (usage & GBM_BO_USE_CURSOR) |
| use_flags |= BO_USE_CURSOR; |
| if (usage & GBM_BO_USE_CURSOR_64X64) |
| use_flags |= BO_USE_CURSOR_64X64; |
| if (usage & GBM_BO_USE_RENDERING) |
| use_flags |= BO_USE_RENDERING; |
| if (usage & GBM_BO_USE_TEXTURING) |
| use_flags |= BO_USE_TEXTURE; |
| if (usage & GBM_BO_USE_LINEAR) |
| use_flags |= BO_USE_LINEAR; |
| if (usage & GBM_BO_USE_CAMERA_WRITE) |
| use_flags |= BO_USE_CAMERA_WRITE; |
| if (usage & GBM_BO_USE_CAMERA_READ) |
| use_flags |= BO_USE_CAMERA_READ; |
| if (usage & GBM_BO_USE_PROTECTED) |
| use_flags |= BO_USE_PROTECTED; |
| if (usage & GBM_BO_USE_SW_READ_OFTEN) |
| use_flags |= BO_USE_SW_READ_OFTEN; |
| if (usage & GBM_BO_USE_SW_READ_RARELY) |
| use_flags |= BO_USE_SW_READ_RARELY; |
| if (usage & GBM_BO_USE_SW_WRITE_OFTEN) |
| use_flags |= BO_USE_SW_WRITE_OFTEN; |
| if (usage & GBM_BO_USE_SW_WRITE_RARELY) |
| use_flags |= BO_USE_SW_WRITE_RARELY; |
| if (usage & GBM_BO_USE_HW_VIDEO_DECODER) |
| use_flags |= BO_USE_HW_VIDEO_DECODER; |
| if (usage & GBM_BO_USE_HW_VIDEO_ENCODER) |
| use_flags |= BO_USE_HW_VIDEO_ENCODER; |
| if (usage & GBM_BO_USE_FRONT_RENDERING) |
| use_flags |= BO_USE_FRONT_RENDERING; |
| |
| return use_flags; |
| } |