From 574724fbbb1bd2f78ee1a626dfa18cf707c741ab Mon Sep 17 00:00:00 2001 From: Dan Johansson Date: Thu, 1 Jul 2010 15:11:24 +0200 Subject: MCDE: V-sync on main and sub display using DSI BTA * V-sync support for both primary and secondary display. * V-sync is disabled by default. It is enabled in menuconfig (System Type -> Display selection -> Enable v-sync for primary / secondary display). * DSI HS clock is set to 840 MHz, DSI esq clock 19.2 MHz. * Enables VAUX1 if startup graphics is enabled. ST Ericsson Change-Id: WP264234 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2154 Tested-by: Dan JOHANSSON Reviewed-by: Jonas ABERG Signed-off-by: Mian Yousaf Kaukab Change-Id: I47f72cb9449e08f089f6bdb25988bd9958644899 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2809 --- include/video/mcde.h | 5 +++++ include/video/mcde_dss.h | 3 +-- include/video/mcde_fb.h | 17 ++++++++++++++--- 3 files changed, 20 insertions(+), 5 deletions(-) (limited to 'include/video') diff --git a/include/video/mcde.h b/include/video/mcde.h index d7ea581d190..415d9db960a 100644 --- a/include/video/mcde.h +++ b/include/video/mcde.h @@ -205,6 +205,8 @@ enum mcde_display_rotation { #define MCDE_MIN_HEIGHT 16 #define MCDE_MAX_WIDTH 2048 #define MCDE_MAX_HEIGHT 2048 +#define MCDE_BUF_START_ALIGMENT 8 +#define MCDE_BUF_LINE_ALIGMENT 8 #define MCDE_FIFO_AB_SIZE 640 #define MCDE_FIFO_C0C1_SIZE 160 @@ -273,6 +275,9 @@ int mcde_chnl_set_rotation(struct mcde_chnl_state *chnl, enum mcde_display_rotation rotation, u32 rotbuf1, u32 rotbuf2); int mcde_chnl_enable_synchronized_update(struct mcde_chnl_state *chnl, bool enable); +int mcde_chnl_set_power_mode(struct mcde_chnl_state *chnl, + enum mcde_display_power_mode power_mode); + int mcde_chnl_apply(struct mcde_chnl_state *chnl); int mcde_chnl_update(struct mcde_chnl_state *chnl, struct mcde_rectangle *update_area); diff --git a/include/video/mcde_dss.h b/include/video/mcde_dss.h index 648b46d0528..a32b2dfdeba 100644 --- a/include/video/mcde_dss.h +++ b/include/video/mcde_dss.h @@ -19,8 +19,7 @@ /* Public MCDE dss (Used by MCDE fb ioctl & MCDE display sysfs) */ -int mcde_dss_enable_display(struct mcde_display_device *ddev, - bool display_initialized); +int mcde_dss_enable_display(struct mcde_display_device *ddev); void mcde_dss_disable_display(struct mcde_display_device *ddev); int mcde_dss_apply_channel(struct mcde_display_device *ddev); struct mcde_overlay *mcde_dss_create_overlay(struct mcde_display_device *ddev, diff --git a/include/video/mcde_fb.h b/include/video/mcde_fb.h index 871b0225c46..6d05f612184 100644 --- a/include/video/mcde_fb.h +++ b/include/video/mcde_fb.h @@ -12,9 +12,18 @@ #define __MCDE_FB__H__ #include - +#include +#if !defined(__KERNEL__) && !defined(_KERNEL) +#include +#else +#include +#endif + +#ifdef __KERNEL__ #include "mcde_dss.h" +#endif +#ifdef __KERNEL__ #define to_mcde_fb(x) ((struct mcde_fb *)(x)->par) #define MCDE_FB_MAX_NUM_OVERLAYS 3 @@ -28,8 +37,9 @@ struct mcde_fb { /* MCDE fbdev API */ struct fb_info *mcde_fb_create(struct mcde_display_device *ddev, - u16 w, u16 h, u16 vw, u16 vh, enum mcde_ovly_pix_fmt pix_fmt, - u32 rotate, bool display_initialized); + uint16_t w, uint16_t h, uint16_t vw, uint16_t vh, + enum mcde_ovly_pix_fmt pix_fmt, uint32_t rotate); + int mcde_fb_attach_overlay(struct fb_info *fb_info, struct mcde_overlay *ovl); void mcde_fb_destroy(struct fb_info *fb_info); @@ -37,6 +47,7 @@ void mcde_fb_destroy(struct fb_info *fb_info); /* MCDE fb driver */ int mcde_fb_init(void); void mcde_fb_exit(void); +#endif #endif /* __MCDE_FB__H__ */ -- cgit v1.2.3