From 97bb163197f3dc3405af90b5159e0f6b8a302586 Mon Sep 17 00:00:00 2001 From: Alison Wang Date: Tue, 11 Dec 2012 15:36:08 +0800 Subject: ENGR00216076-2: DCU: Update DCU driver for PM and blending issue Fix layers blending and reinitialization issue for DCU driver. Update power management part for DCU driver. Signed-off-by: Alison Wang --- include/linux/Kbuild | 1 + include/linux/mvf-fb.h | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 include/linux/mvf-fb.h (limited to 'include') diff --git a/include/linux/Kbuild b/include/linux/Kbuild index c65d1b9eb546..947d36f054e5 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild @@ -35,6 +35,7 @@ header-y += mxc_si4702.h header-y += mxc_sim_interface.h header-y += mxc_v4l2.h header-y += mxcfb.h +header-y += mvf-fb.h header-y += pmic_adc.h header-y += pmic_battery.h header-y += pmic_external.h diff --git a/include/linux/mvf-fb.h b/include/linux/mvf-fb.h new file mode 100644 index 000000000000..836767697d76 --- /dev/null +++ b/include/linux/mvf-fb.h @@ -0,0 +1,74 @@ +/* + * Copyright 2012 Freescale Semiconductor, Inc. + * + * Freescale DCU Frame Buffer device driver ioctls + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + */ + +#ifndef __MVF_FB_H__ +#define __MVF_FB_H__ + +#include + +/* ioctls */ + +#define MFB_SET_ALPHA 0x80014d00 +#define MFB_GET_ALPHA 0x40014d00 +#define MFB_SET_LAYER 0x80084d04 +#define MFB_GET_LAYER 0x40084d04 + +#define FBIOGET_GWINFO 0x46E0 +#define FBIOPUT_GWINFO 0x46E1 + +#ifndef u32 +#define u32 unsigned int +#endif + +struct mfb_alpha { + int enable; + int alpha; +}; + +struct layer_display_offset { + int x_layer_d; + int y_layer_d; +}; + +/* + * These are the fields of control descriptor for every layer + */ +struct dcu_layer_desc { + u32 layer_num; + u32 width; + u32 height; + u32 posx; + u32 posy; + u32 addr; + u32 blend; + u32 chroma_key_en; + u32 lut_offset; + u32 rle_en; + u32 bpp; + u32 trans; + u32 safety_en; + u32 data_sel_clut; + u32 tile_en; + u32 en; + u32 ck_r_min; + u32 ck_r_max; + u32 ck_g_min; + u32 ck_g_max; + u32 ck_b_min; + u32 ck_b_max; + u32 tile_width; + u32 tile_height; + u32 trans_fgcolor; + u32 trans_bgcolor; +} __packed; + +#endif -- cgit v1.2.3