diff options
author | Jimmy Rubin <ejimrub@steludxu031.lud.stericsson.com> | 2010-05-27 15:25:41 +0200 |
---|---|---|
committer | John Rigby <john.rigby@linaro.org> | 2010-09-02 22:45:30 -0600 |
commit | 1453f8259ef4100ca689884d5d754761cc10a64f (patch) | |
tree | 4a61257b603468c878b3e7cf7c5eea59fb9b2c9e /arch/arm/mach-ux500/include/mach/mcde_common.h | |
parent | 63cfdf397fd4502644ea06bcb764e9c4179f7cd3 (diff) |
MCDE: Adding new MCDE display, AB8500 Denc and AV8100 driver
This patch does the following:
* Removes display support on ED!
* Removes the old MCDE display driver and adds the new MCDE drivers to
drivers/video/mcde.
* Removes the old AV8100 driver and adds the new AV8100 drivers to
drivers/video/av8100.
* Moves the mcde and av8100 specific header files from machine to
include/video.
* Adds AB8500 Denc driver to drivers/misc/ab8500_denc.
* Power management support added to the MCDE display driver.
* Removes old MCDE specific configurations.
* Adds new menuconfig selection SystemType/Display Selection where it
is possbile to choose display types.
* Updated standard configurations (mop500_defconfig,
mop500_power_defconfig and mop500_USB_HOST_defconfig).
* Landscape mode removed from menuconfig for main display.
ST Ericsson Change-ID: WP259355
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/369
Reviewed-by: Dan JOHANSSON <dan.johansson@stericsson.com>
Tested-by: Dan JOHANSSON <dan.johansson@stericsson.com>
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Change-Id: I0c5e5c0f80fde304d8b96e3faee0e8b1819d1ae7
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2378
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Diffstat (limited to 'arch/arm/mach-ux500/include/mach/mcde_common.h')
-rwxr-xr-x | arch/arm/mach-ux500/include/mach/mcde_common.h | 168 |
1 files changed, 0 insertions, 168 deletions
diff --git a/arch/arm/mach-ux500/include/mach/mcde_common.h b/arch/arm/mach-ux500/include/mach/mcde_common.h deleted file mode 100755 index b906114c6a4..00000000000 --- a/arch/arm/mach-ux500/include/mach/mcde_common.h +++ /dev/null @@ -1,168 +0,0 @@ -/* - * Copyright (C) ST-Ericsson SA 2010 - * - * License terms: - * - * 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 _MCDE_COMMON_H_ -#define _MCDE_COMMON_H_ -#include <linux/fb.h> -#include <linux/interrupt.h> -#include <linux/platform_device.h> -#include <linux/spinlock.h> -#include <linux/mm.h> -#include <linux/dma-mapping.h> - -#include <mach/bit_mask.h> -#include <mach/mcde.h> -#include <mach/mcde_reg.h> -#include <mach/dsi.h> -#include <mach/dsi_reg.h> - -#define MCDE_NAME "DRIVER MCDE" - -#define MCDE_DEFAULT_LOG_LEVEL 3 -#ifdef CONFIG_FB_NDK_MCDE -extern int mcde_debug; -module_param(mcde_debug, int, 0644); -#endif -#ifdef CONFIG_FB_NDK_MCDE -MODULE_PARM_DESC(mcde_debug,"Debug level for messages"); -#define dbgprintk(num, format, args...) \ - do { \ - if(num >= mcde_debug ) \ - printk("MCDE:"format, ##args); \ - } while(0) -#else -#define dbgprintk(num, format, args...) \ - do { \ - printk("MCDE:"format, ##args); \ - } while(0) -#endif - -#define MCDE_DEBUG_INFO 1 -#define MCDE_ERROR_INFO 3 - -/** Global data */ - -#define MAX_LPF 1080 -#define MAX_PPL 1920 -#define NUM_MCDE_FLOWS 4 -#ifdef CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT -#define NUM_OVERLAYS 6 -#define NUM_EXT_SRC 10 -#define NUM_MCDE_CHANNELS 4 -#else -#define NUM_OVERLAYS 16 -#define NUM_EXT_SRC 16 -#define NUM_MCDE_CHANNELS 16 -#endif /* CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT */ -#define NUM_FLOWS_A_B 2 -#define NUM_DSI_LINKS 3 -#define NUM_DSI_CHANNEL 6 -#define MCDE_MAX_FRAMEBUFF 16 -#define COLCONV_COEFF_OFF 6 - -/** clcd events for double buffering */ -struct clcd_event_struct { - spinlock_t lock; - int event; - wait_queue_head_t wait; - unsigned int base; -}; - -/** bitmap of which overlays are in use (set) and unused (cleared) */ -//static u32 mcde_ovl_bmp; - -/** MCDE private struct - pointer available in fbinfo */ -struct mcdefb_info { - struct mcde_channel_data *chnl_info; - mcde_ch_id chid; - mcde_video_mode video_mode; - mcde_fifo_output fifoOutput; - mcde_output_conf output_conf; - mcde_dsi_clk_config clk_config; - mcde_ch_id dsi_formatter_plugged_channel[NUM_DSI_CHANNEL]; - mcde_dsi_channel mcdeDsiChnl; - mcde_out_bpp outbpp; - int bpp16_type; - u8 bgrinput; - u8 isHwInitalized; - u16 palette_size; - u32 cmap[16]; - - mcde_ch_id pixel_pipeline; - u32 vcomp_irq; - u32 dsi_formatter; - u32 dsi_mode; - u32 swap; - u32 started; - - /** phy-virtual addresses allocated for framebuffer and overlays */ - struct mcde_addrmap buffaddr[MCDE_MAX_FRAMEBUFF*2]; - struct mcde_addrmap rotationbuffaddr0; - struct mcde_addrmap rotationbuffaddr1; - - /** total number of overlays used in the system */ - u8 tot_ovl_used; - - /** bitmap of which overlays are in use (set) and unused (cleared) */ - u16 mcde_cur_ovl_bmp; - u16 mcde_ovl_bmp_arr[MCDE_MAX_FRAMEBUFF]; - spinlock_t mcde_spin_lock; - - /** event for double buffering */ - struct clcd_event_struct clcd_event; - u8 tvout; - u32 actual_bpp; -#ifdef CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT - struct mcde_top_reg __iomem *regbase; -#else - struct mcde_register_base __iomem * regbase; -#endif /* CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT */ - struct mcde_ext_src_reg __iomem * extsrc_regbase[NUM_EXT_SRC]; - struct mcde_ovl_reg __iomem * ovl_regbase[NUM_OVERLAYS]; -#ifdef CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT - struct mcde_chnl_conf_reg __iomem *ch_regbase1[NUM_MCDE_CHANNELS]; - struct mcde_chAB_reg __iomem *ch_regbase2[NUM_FLOWS_A_B]; - struct mcde_chC0C1_reg __iomem *ch_c_reg; -#else - struct mcde_ch_synch_reg __iomem *ch_regbase1[NUM_MCDE_CHANNELS]; - struct mcde_ch_reg __iomem *ch_regbase2[NUM_FLOWS_A_B]; - struct mcde_chc_reg __iomem *ch_c_reg; -#endif /* CONFIG_MCDE_ENABLE_FEATURE_HW_V1_SUPPORT */ - struct mcde_dsi_reg __iomem *mcde_dsi_channel_reg[NUM_DSI_CHANNEL]; - volatile u32 __iomem *mcde_clkdsi; - struct dsi_link_registers __iomem *dsi_lnk_registers[NUM_DSI_LINKS]; - volatile u32 __iomem *prcm_mcde_clk; - volatile u32 __iomem *prcm_hdmi_clk; - volatile u32 __iomem *prcm_tv_clk; - dsi_link dsi_lnk_no; - dsi_link_context dsi_lnk_context; - struct dsi_link_conf dsi_lnk_conf; - - /* Added by QCSPWAN below for "pink display" */ -#ifdef CONFIG_DEBUG_FS - struct dentry *debugfs_dentry; - char debugfs_name[10]; -#endif - /* To serialize access from user space */ - struct semaphore fb_sem; - /* End QCSPWAN */ -}; - - -//volatile mcde_system_context g_mcde_system_context; - -#define NUM_TOTAL_MODES ARRAY_SIZE(mcde_modedb) - -mcde_error mcdesetdsiclk(dsi_link link, mcde_ch_id chid, mcde_dsi_clk_config clk_config); -mcde_error mcdesetfifoctrl(dsi_link link, mcde_ch_id chid, struct mcde_fifo_ctrl fifo_ctrl); -mcde_error mcdesetoutputconf(dsi_link link, mcde_ch_id chid, mcde_output_conf output_conf); -mcde_error mcdesetdsicommandword(dsi_link link,mcde_ch_id chid,mcde_dsi_channel dsichannel,u8 cmdbyte_lsb,u8 cmdbyte_msb); -mcde_error mcdesetdsiconf(dsi_link link, mcde_ch_id chid, mcde_dsi_channel dsichannel, mcde_dsi_conf dsi_conf); -#endif |