2010-05-23 14:00:43 +00:00
/*
* Public SH - mobile MIPI DSI header
*
* Copyright ( C ) 2010 Guennadi Liakhovetski < g . liakhovetski @ gmx . de >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation .
*/
# ifndef VIDEO_SH_MIPI_DSI_H
# define VIDEO_SH_MIPI_DSI_H
enum sh_mipi_dsi_data_fmt {
MIPI_RGB888 ,
MIPI_RGB565 ,
MIPI_RGB666_LP ,
MIPI_RGB666 ,
MIPI_BGR888 ,
MIPI_BGR565 ,
MIPI_BGR666_LP ,
MIPI_BGR666 ,
MIPI_YUYV ,
MIPI_UYVY ,
MIPI_YUV420_L ,
MIPI_YUV420 ,
} ;
2010-12-29 08:12:22 +00:00
# define SH_MIPI_DSI_HSABM (1 << 0)
2011-11-08 20:34:01 -08:00
# define SH_MIPI_DSI_HBPBM (1 << 1)
2011-11-08 20:34:24 -08:00
# define SH_MIPI_DSI_HFPBM (1 << 2)
2011-11-08 20:34:33 -08:00
# define SH_MIPI_DSI_BL2E (1 << 3)
2011-11-08 20:34:55 -08:00
# define SH_MIPI_DSI_VSEE (1 << 4)
# define SH_MIPI_DSI_HSEE (1 << 5)
# define SH_MIPI_DSI_HSAE (1 << 6)
2011-11-08 20:35:27 -08:00
# define SH_MIPI_DSI_HSbyteCLK (1 << 24)
# define SH_MIPI_DSI_HS6divCLK (1 << 25)
# define SH_MIPI_DSI_HS4divCLK (1 << 26)
2011-11-08 20:34:55 -08:00
# define SH_MIPI_DSI_SYNC_PULSES_MODE (SH_MIPI_DSI_VSEE | \
SH_MIPI_DSI_HSEE | \
SH_MIPI_DSI_HSAE )
# define SH_MIPI_DSI_SYNC_EVENTS_MODE (0)
# define SH_MIPI_DSI_SYNC_BURST_MODE (SH_MIPI_DSI_BL2E)
2010-12-29 08:12:22 +00:00
2010-05-23 14:00:43 +00:00
struct sh_mipi_dsi_info {
enum sh_mipi_dsi_data_fmt data_format ;
2012-08-14 12:17:55 +02:00
int channel ;
2011-11-08 20:34:43 -08:00
int lane ;
2010-12-29 08:12:22 +00:00
unsigned long flags ;
u32 clksrc ;
2012-03-20 18:34:10 -07:00
u32 phyctrl ; /* for extra setting */
2010-12-29 08:12:22 +00:00
unsigned int vsynw_offset ;
2011-11-08 20:35:14 -08:00
int ( * set_dot_clock ) ( struct platform_device * pdev ,
void __iomem * base ,
int enable ) ;
2010-05-23 14:00:43 +00:00
} ;
# endif