diff options
Diffstat (limited to 'nouveau.c')
| -rw-r--r-- | nouveau.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/nouveau.c b/nouveau.c new file mode 100644 index 0000000..7cdab3a --- /dev/null +++ b/nouveau.c @@ -0,0 +1,31 @@ +/* + * 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 "drv_priv.h" +#include "helpers.h" +#include "util.h" + +static const uint32_t render_target_formats[] = { DRM_FORMAT_ARGB8888, DRM_FORMAT_XRGB8888 }; + +static int nouveau_init(struct driver *drv) +{ + int ret; + ret = drv_add_combinations(drv, render_target_formats, ARRAY_SIZE(render_target_formats), + &LINEAR_METADATA, BO_USE_RENDER_MASK); + if (ret) + return ret; + + return drv_modify_linear_combinations(drv); +} + +struct backend backend_nouveau = { + .name = "nouveau", + .init = nouveau_init, + .bo_create = drv_dumb_bo_create, + .bo_destroy = drv_dumb_bo_destroy, + .bo_import = drv_prime_bo_import, + .bo_map = drv_dumb_bo_map, +}; |
