Loading...
1/*
2 * Copyright (C) 2012 Russell King
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8#ifndef ARMADA_FB_H
9#define ARMADA_FB_H
10
11struct armada_framebuffer {
12 struct drm_framebuffer fb;
13 struct armada_gem_object *obj;
14 uint8_t fmt;
15 uint8_t mod;
16};
17#define drm_fb_to_armada_fb(dfb) \
18 container_of(dfb, struct armada_framebuffer, fb)
19#define drm_fb_obj(fb) drm_fb_to_armada_fb(fb)->obj
20
21struct armada_framebuffer *armada_framebuffer_create(struct drm_device *,
22 const struct drm_mode_fb_cmd2 *, struct armada_gem_object *);
23
24#endif
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2012 Russell King
4 */
5#ifndef ARMADA_FB_H
6#define ARMADA_FB_H
7
8#include <drm/drm_framebuffer.h>
9
10struct armada_framebuffer {
11 struct drm_framebuffer fb;
12 uint8_t fmt;
13 uint8_t mod;
14};
15#define drm_fb_to_armada_fb(dfb) \
16 container_of(dfb, struct armada_framebuffer, fb)
17#define drm_fb_obj(fb) drm_to_armada_gem((fb)->obj[0])
18
19struct armada_framebuffer *armada_framebuffer_create(struct drm_device *,
20 const struct drm_mode_fb_cmd2 *, struct armada_gem_object *);
21struct drm_framebuffer *armada_fb_create(struct drm_device *dev,
22 struct drm_file *dfile, const struct drm_mode_fb_cmd2 *mode);
23#endif