1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * RZ/G2L Display Unit Mode Setting 4 * 5 * Copyright (C) 2023 Renesas Electronics Corporation 6 * 7 * Based on rcar_du_kms.h 8 */ 9 10 #ifndef __RZG2L_DU_KMS_H__ 11 #define __RZG2L_DU_KMS_H__ 12 13 #include <linux/types.h> 14 15 struct dma_buf_attachment; 16 struct drm_file; 17 struct drm_device; 18 struct drm_gem_object; 19 struct drm_mode_create_dumb; 20 struct rzg2l_du_device; 21 struct sg_table; 22 23 struct rzg2l_du_format_info { 24 u32 fourcc; 25 u32 v4l2; 26 unsigned int bpp; 27 unsigned int planes; 28 unsigned int hsub; 29 }; 30 31 const struct rzg2l_du_format_info *rzg2l_du_format_info(u32 fourcc); 32 33 int rzg2l_du_modeset_init(struct rzg2l_du_device *rcdu); 34 35 int rzg2l_du_dumb_create(struct drm_file *file, struct drm_device *dev, 36 struct drm_mode_create_dumb *args); 37 38 struct drm_gem_object * 39 rzg2l_du_gem_prime_import_sg_table(struct drm_device *dev, 40 struct dma_buf_attachment *attach, 41 struct sg_table *sgt); 42 43 #endif /* __RZG2L_DU_KMS_H__ */ 44