1/* 2 * Public SH-mobile MIPI DSI header 3 * 4 * Copyright (C) 2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de> 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 */ 10#ifndef VIDEO_SH_MIPI_DSI_H 11#define VIDEO_SH_MIPI_DSI_H 12 13enum sh_mipi_dsi_data_fmt { 14 MIPI_RGB888, 15 MIPI_RGB565, 16 MIPI_RGB666_LP, 17 MIPI_RGB666, 18 MIPI_BGR888, 19 MIPI_BGR565, 20 MIPI_BGR666_LP, 21 MIPI_BGR666, 22 MIPI_YUYV, 23 MIPI_UYVY, 24 MIPI_YUV420_L, 25 MIPI_YUV420, 26}; 27 28#define SH_MIPI_DSI_HSABM (1 << 0) 29#define SH_MIPI_DSI_HBPBM (1 << 1) 30#define SH_MIPI_DSI_HFPBM (1 << 2) 31#define SH_MIPI_DSI_BL2E (1 << 3) 32#define SH_MIPI_DSI_VSEE (1 << 4) 33#define SH_MIPI_DSI_HSEE (1 << 5) 34#define SH_MIPI_DSI_HSAE (1 << 6) 35 36#define SH_MIPI_DSI_HSbyteCLK (1 << 24) 37#define SH_MIPI_DSI_HS6divCLK (1 << 25) 38#define SH_MIPI_DSI_HS4divCLK (1 << 26) 39 40#define SH_MIPI_DSI_SYNC_PULSES_MODE (SH_MIPI_DSI_VSEE | \ 41 SH_MIPI_DSI_HSEE | \ 42 SH_MIPI_DSI_HSAE) 43#define SH_MIPI_DSI_SYNC_EVENTS_MODE (0) 44#define SH_MIPI_DSI_SYNC_BURST_MODE (SH_MIPI_DSI_BL2E) 45 46struct sh_mipi_dsi_info { 47 enum sh_mipi_dsi_data_fmt data_format; 48 int channel; 49 int lane; 50 unsigned long flags; 51 u32 clksrc; 52 u32 phyctrl; /* for extra setting */ 53 unsigned int vsynw_offset; 54 int (*set_dot_clock)(struct platform_device *pdev, 55 void __iomem *base, 56 int enable); 57}; 58 59#endif 60