1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 296f60e37SRussell King /* 396f60e37SRussell King * Copyright (C) 2012 Russell King 496f60e37SRussell King */ 596f60e37SRussell King #ifndef ARMADA_FB_H 696f60e37SRussell King #define ARMADA_FB_H 796f60e37SRussell King 8*720cf96dSVille Syrjälä #include <drm/drm_framebuffer.h> 9*720cf96dSVille Syrjälä 1096f60e37SRussell King struct armada_framebuffer { 1196f60e37SRussell King struct drm_framebuffer fb; 1296f60e37SRussell King uint8_t fmt; 1396f60e37SRussell King uint8_t mod; 1496f60e37SRussell King }; 1596f60e37SRussell King #define drm_fb_to_armada_fb(dfb) \ 1696f60e37SRussell King container_of(dfb, struct armada_framebuffer, fb) 17ecb8a947SDaniel Stone #define drm_fb_obj(fb) drm_to_armada_gem((fb)->obj[0]) 1896f60e37SRussell King 1996f60e37SRussell King struct armada_framebuffer *armada_framebuffer_create(struct drm_device *, 201eb83451SVille Syrjälä const struct drm_mode_fb_cmd2 *, struct armada_gem_object *); 213382a6b9SRussell King struct drm_framebuffer *armada_fb_create(struct drm_device *dev, 223382a6b9SRussell King struct drm_file *dfile, const struct drm_mode_fb_cmd2 *mode); 2396f60e37SRussell King #endif 24