summaryrefslogtreecommitdiff
path: root/drivers/video/sprdfb/sprdfb_chip_9630.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/sprdfb/sprdfb_chip_9630.h')
-rw-r--r--drivers/video/sprdfb/sprdfb_chip_9630.h129
1 files changed, 129 insertions, 0 deletions
diff --git a/drivers/video/sprdfb/sprdfb_chip_9630.h b/drivers/video/sprdfb/sprdfb_chip_9630.h
new file mode 100644
index 00000000..65b07c33
--- /dev/null
+++ b/drivers/video/sprdfb/sprdfb_chip_9630.h
@@ -0,0 +1,129 @@
+/******************************************************************************
+ ** File Name: sprdfb_chip_9630.h *
+ ** Author: Yang.Haibing Haibing.yang@spreadtrum.com *
+ ** DATE: 2014-05-14 *
+ ** Copyright: 2014 Spreatrum, Incoporated. All Rights Reserved. *
+ ** Description: *
+ ******************************************************************************/
+#ifndef _SC8830_DISPC_GLB_REG_K_H_
+#define _SC8830_DISPC_GLB_REG_K_H_
+
+#include <linux/kernel.h>
+//#include <mach/sci_glb_regs.h>
+#include <soc/sprd/sci_glb_regs.h>
+
+#define SPRD_MIPI_DPHY_GEN2
+
+#ifndef CONFIG_OF
+#define DISPC_PLL_CLK ("clk_disc0")
+#define DISPC_DBI_CLK ("clk_disc0_dbi")
+#define DISPC_DPI_CLK ("clk_disc0_dpi")
+#define DISPC_EMC_CLK ("clk_disp_emc")
+#define DISPC_DPI_CLOCK (384*1000000/7)
+
+#define SPRD_DISPC_BASE SPRD_LCDC_BASE
+#define IRQ_DISPC_INT IRQ_DISPC0_INT
+
+#define SPRD_MIPI_DSIC_BASE SPRD_DSI_BASE
+#else
+#define SPRD_MIPI_DSIC_BASE g_dsi_base_addr
+#define SPRD_LCDC_BASE g_dispc_base_addr
+#endif
+
+#define DSI_AHB_SOFT_RST REG_AP_AHB_AHB_RST
+
+#define DSI_REG_EB REG_AP_AHB_AHB_EB
+#define DSI_BIT_EB BIT_DSI_EB
+
+#ifndef CONFIG_OF
+#define IRQ_DSI_INTN0 IRQ_DSI0_INT
+#define IRQ_DSI_INTN1 IRQ_DSI1_INT
+#define IRQ_DSI_INTN2 IRQ_DSI2_INT
+#endif
+
+#if (!defined CONFIG_ARCH_SCX35L64) && (!defined CONFIG_ARCH_SCX35LT8)
+#define REG_AHB_SOFT_RST (0x4 + SPRD_AHB_BASE)
+#else
+#define REG_AHB_SOFT_RST (0x4 + REGS_AHB_BASE)
+#endif
+
+#define BIT_DISPC_SOFT_RST BIT(1)
+
+#define DISPC_CORE_EN (REG_AP_APB_APB_EB)
+#define BIT_DISPC_CORE_EN (BIT_AP_CKG_EB)
+
+#ifndef CONFIG_OF
+#define DISPC_AHB_EN (REG_AP_AHB_AHB_EB)
+#define BIT_DISPC_AHB_EN (BIT_DISPC0_EB)
+
+#define DISPC_EMC_EN (REG_AON_APB_APB_EB1)
+#define BIT_DISPC_EMC_EN (BIT_DISP_EMC_EB)
+
+#define DISPC_PLL_SEL_CFG REG_AP_CLK_DISPC0_CFG
+#define BITS_DISPC_PLL_SEL_CFG 0
+#define BIT0_DISPC_PLL_SEL_CFG BIT(0)
+#define BIT1_DISPC_PLL_SEL_CFG BIT(1)
+#define BIT_DISPC_PLL_SEL_MSK BIT1_DISPC_PLL_SEL_CFG | BIT0_DISPC_PLL_SEL_CFG
+
+#define DISPC_PLL_DIV_CFG REG_AP_CLK_DISPC0_CFG
+#define BITS_DISPC_PLL_DIV_CFG 8
+#define BIT0_DISPC_PLL_DIV_CFG BIT(8)
+#define BIT1_DISPC_PLL_DIV_CFG BIT(9)
+#define BIT2_DISPC_PLL_DIV_CFG BIT(10)
+#define BIT_DISPC_PLL_DIV_MSK BIT0_DISPC_PLL_DIV_CFG | BIT1_DISPC_PLL_DIV_CFG | BIT2_DISPC_PLL_DIV_CFG
+
+#define DISPC_DBI_SEL_CFG REG_AP_CLK_DISPC0_DBI_CFG
+#define BITS_DISPC_DBI_SEL_CFG 0
+#define BIT0_DISPC_DBI_SEL_CFG BIT(0)
+#define BIT1_DISPC_DBI_SEL_CFG BIT(1)
+#define BIT_DISPC_DBI_SEL_MSK BIT0_DISPC_DBI_SEL_CFG | BIT1_DISPC_DBI_SEL_CFG
+
+#define DISPC_DBI_DIV_CFG REG_AP_CLK_DISPC0_DBI_CFG
+#define BITS_DISPC_DBI_DIV_CFG 8
+#define BIT0_DISPC_DBI_DIV_CFG BIT(8)
+#define BIT1_DISPC_DBI_DIV_CFG BIT(9)
+#define BIT2_DISPC_DBI_DIV_CFG BIT(10)
+#define BIT_DISPC_DBI_DIV_MSK BIT0_DISPC_DBI_DIV_CFG | BIT1_DISPC_DBI_DIV_CFG | BIT2_DISPC_DBI_DIV_CFG
+
+#define DISPC_DPI_SEL_CFG REG_AP_CLK_DISPC0_DPI_CFG
+#define BITS_DISPC_DPI_SEL_CFG 0
+#define BIT0_DISPC_DPI_SEL_CFG BIT(0)
+#define BIT1_DISPC_DPI_SEL_CFG BIT(1)
+#define BIT_DISPC_DPI_SEL_MSK BIT0_DISPC_DPI_SEL_CFG | BIT1_DISPC_DPI_SEL_CFG
+
+#define DISPC_DPI_DIV_CFG REG_AP_CLK_DISPC0_DPI_CFG
+#define BITS_DISPC_DPI_DIV_CFG 8
+#define BIT0_DISPC_DPI_DIV_CFG BIT(8)
+#define BIT1_DISPC_DPI_DIV_CFG BIT(9)
+#define BIT2_DISPC_DPI_DIV_CFG BIT(10)
+#define BIT3_DISPC_DPI_DIV_CFG BIT(11)
+#define BIT4_DISPC_DPI_DIV_CFG BIT(12)
+#define BIT5_DISPC_DPI_DIV_CFG BIT(13)
+#define BIT6_DISPC_DPI_DIV_CFG BIT(14)
+#define BIT7_DISPC_DPI_DIV_CFG BIT(15)
+#define BIT_DISPC_DPI_DIV_MSK BIT0_DISPC_DPI_DIV_CFG | BIT1_DISPC_DPI_DIV_CFG | BIT2_DISPC_DPI_DIV_CFG | BIT3_DISPC_DPI_DIV_CFG \
+ | BIT4_DISPC_DPI_DIV_CFG | BIT5_DISPC_DPI_DIV_CFG | BIT6_DISPC_DPI_DIV_CFG | BIT7_DISPC_DPI_DIV_CFG
+
+enum {
+ DISPC_PLL_SEL_96M = 0,
+ DISPC_PLL_SEL_192M,
+ DISPC_PLL_SEL_256M,
+ DISPC_PLL_SEL_312M
+};
+
+enum {
+ DISPC_DBI_SEL_128M = 0,
+ DISPC_DBI_SEL_153_6M,
+ DISPC_DBI_SEL_192M,
+ DISPC_DBI_SEL_256M
+};
+
+enum {
+ DISPC_DPI_SEL_128M = 0,
+ DISPC_DPI_SEL_153_6M,
+ DISPC_DPI_SEL_192M,
+ DISPC_DPI_SEL_384M
+};
+
+#endif
+#endif