blob: 3dc1e5944584f17554346fa2394e1e2f54bd245d [file] [log] [blame]
Stéphane Marchesin25a26062014-09-12 16:18:59 -07001/*
Daniele Castagna7a755de2016-12-16 17:32:30 -05002 * Copyright 2014 The Chromium OS Authors. All rights reserved.
Stéphane Marchesin25a26062014-09-12 16:18:59 -07003 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file.
5 */
6
7#ifndef GBM_PRIV_H
8#define GBM_PRIV_H
9
10#include <stdint.h>
Stéphane Marchesin25a26062014-09-12 16:18:59 -070011#include <stdlib.h>
Gurchetan Singh1b1d56a2017-03-10 16:25:23 -080012#include <sys/types.h>
Stéphane Marchesin25a26062014-09-12 16:18:59 -070013
Gurchetan Singh46faf6b2016-08-05 14:40:07 -070014#include "drv.h"
15#include "gbm.h"
Yuly Novikov96c7a3b2015-12-08 22:48:29 -050016
Gurchetan Singh1b1d56a2017-03-10 16:25:23 -080017struct gbm_device {
Gurchetan Singh46faf6b2016-08-05 14:40:07 -070018 struct driver *drv;
Stéphane Marchesin25a26062014-09-12 16:18:59 -070019};
20
Gurchetan Singh1b1d56a2017-03-10 16:25:23 -080021struct gbm_surface {
Stéphane Marchesin25a26062014-09-12 16:18:59 -070022};
23
Gurchetan Singh1b1d56a2017-03-10 16:25:23 -080024struct gbm_bo {
Stéphane Marchesin25a26062014-09-12 16:18:59 -070025 struct gbm_device *gbm;
Gurchetan Singh46faf6b2016-08-05 14:40:07 -070026 struct bo *bo;
27 uint32_t gbm_format;
Stéphane Marchesin25a26062014-09-12 16:18:59 -070028 void *user_data;
29 void (*destroy_user_data)(struct gbm_bo *, void *);
30};
31
Stéphane Marchesin25a26062014-09-12 16:18:59 -070032#endif