11ccea77eSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 2f7018c21STomi Valkeinen /* 3f7018c21STomi Valkeinen * linux/drivers/video/mmp/fb/mmpfb.h 4f7018c21STomi Valkeinen * Framebuffer driver for Marvell Display controller. 5f7018c21STomi Valkeinen * 6f7018c21STomi Valkeinen * Copyright (C) 2012 Marvell Technology Group Ltd. 7f7018c21STomi Valkeinen * Authors: Zhou Zhu <zzhu3@marvell.com> 8f7018c21STomi Valkeinen */ 9f7018c21STomi Valkeinen 10f7018c21STomi Valkeinen #ifndef _MMP_FB_H_ 11f7018c21STomi Valkeinen #define _MMP_FB_H_ 12f7018c21STomi Valkeinen 13f7018c21STomi Valkeinen #include <video/mmp_disp.h> 14f7018c21STomi Valkeinen #include <linux/fb.h> 15f7018c21STomi Valkeinen 16f7018c21STomi Valkeinen /* LCD controller private state. */ 17f7018c21STomi Valkeinen struct mmpfb_info { 18f7018c21STomi Valkeinen struct device *dev; 19f7018c21STomi Valkeinen int id; 20f7018c21STomi Valkeinen const char *name; 21f7018c21STomi Valkeinen 22f7018c21STomi Valkeinen struct fb_info *fb_info; 23f7018c21STomi Valkeinen /* basicaly videomode is for output */ 24f7018c21STomi Valkeinen struct fb_videomode mode; 25f7018c21STomi Valkeinen int pix_fmt; 26f7018c21STomi Valkeinen 27f7018c21STomi Valkeinen void *fb_start; 28f7018c21STomi Valkeinen int fb_size; 29f7018c21STomi Valkeinen dma_addr_t fb_start_dma; 30f7018c21STomi Valkeinen 31f7018c21STomi Valkeinen struct mmp_overlay *overlay; 32f7018c21STomi Valkeinen struct mmp_path *path; 33f7018c21STomi Valkeinen 34f7018c21STomi Valkeinen struct mutex access_ok; 35f7018c21STomi Valkeinen 36f7018c21STomi Valkeinen unsigned int pseudo_palette[16]; 37f7018c21STomi Valkeinen int output_fmt; 38f7018c21STomi Valkeinen }; 39f7018c21STomi Valkeinen 40f7018c21STomi Valkeinen #define MMPFB_DEFAULT_SIZE (PAGE_ALIGN(1920 * 1080 * 4 * 2)) 41f7018c21STomi Valkeinen #endif /* _MMP_FB_H_ */ 42