summaryrefslogtreecommitdiff
path: root/drivers/video/wmt/hw/wmt-hdmi-reg.h
diff options
context:
space:
mode:
authorSrikant Patnaik2015-01-13 15:08:24 +0530
committerSrikant Patnaik2015-01-13 15:08:24 +0530
commit97327692361306d1e6259021bc425e32832fdb50 (patch)
treefe9088f3248ec61e24f404f21b9793cb644b7f01 /drivers/video/wmt/hw/wmt-hdmi-reg.h
parent2d05a8f663478a44e088d122e0d62109bbc801d0 (diff)
parenta3a8b90b61e21be3dde9101c4e86c881e0f06210 (diff)
downloadFOSSEE-netbook-kernel-source-97327692361306d1e6259021bc425e32832fdb50.tar.gz
FOSSEE-netbook-kernel-source-97327692361306d1e6259021bc425e32832fdb50.tar.bz2
FOSSEE-netbook-kernel-source-97327692361306d1e6259021bc425e32832fdb50.zip
dirty fix to merging
Diffstat (limited to 'drivers/video/wmt/hw/wmt-hdmi-reg.h')
-rw-r--r--drivers/video/wmt/hw/wmt-hdmi-reg.h266
1 files changed, 266 insertions, 0 deletions
diff --git a/drivers/video/wmt/hw/wmt-hdmi-reg.h b/drivers/video/wmt/hw/wmt-hdmi-reg.h
new file mode 100644
index 00000000..919d6ab3
--- /dev/null
+++ b/drivers/video/wmt/hw/wmt-hdmi-reg.h
@@ -0,0 +1,266 @@
+/*++
+ * linux/drivers/video/wmt/hw/wmt-hdmi-reg.h
+ * WonderMedia video post processor (VPP) driver
+ *
+ * Copyright c 2013 WonderMedia Technologies, Inc.
+ *
+ * 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * WonderMedia Technologies, Inc.
+ * 4F, 533, Chung-Cheng Road, Hsin-Tien, Taipei 231, R.O.C
+--*/
+
+#ifndef WMT_HDMI_REG_H
+#define WMT_HDMI_REG_H
+
+#define WMT_FTBLK_HDMI
+
+#define HDMI_BASE_ADDR (HDMI_TRANSMITTE_BASE_ADDR + 0xC000)
+
+/* HDMI registers */
+#define REG_HDMI_BEGIN (HDMI_BASE_ADDR + 0x100)
+#define REG_HDMI_CTRL (HDMI_BASE_ADDR + 0x120)
+#define REG_HDMI_I2C_CTRL (HDMI_BASE_ADDR + 0x124)
+#define REG_HDMI_I2C_CTRL2 (HDMI_BASE_ADDR + 0x128)
+#define REG_HDMI_GENERAL_CTRL (HDMI_BASE_ADDR + 0x280)
+#define REG_HDMI_INFOFRAME_CTRL (HDMI_BASE_ADDR + 0x284)
+#define REG_HDMI_AUD_INSERT_CTRL (HDMI_BASE_ADDR + 0x294)
+#define REG_HDMI_AUD_RATIO (HDMI_BASE_ADDR + 0x29c)
+#define REG_HDMI_AUD_ENABLE (HDMI_BASE_ADDR + 0x2a0)
+#define REG_HDMI_AUD_MODE (HDMI_BASE_ADDR + 0x2ac)
+#define REG_HDMI_AUD_CHAN_STATUS0 (HDMI_BASE_ADDR + 0x390)
+#define REG_HDMI_AUD_CHAN_STATUS1 (HDMI_BASE_ADDR + 0x394)
+#define REG_HDMI_AUD_CHAN_STATUS2 (HDMI_BASE_ADDR + 0x398)
+#define REG_HDMI_AUD_CHAN_STATUS3 (HDMI_BASE_ADDR + 0x39c)
+#define REG_HDMI_AUD_CHAN_STATUS4 (HDMI_BASE_ADDR + 0x3a0)
+#define REG_HDMI_AUD_CHAN_STATUS5 (HDMI_BASE_ADDR + 0x3a4)
+#define REG_HDMI_AUD_SAMPLE_RATE1 (HDMI_BASE_ADDR + 0x3a8)
+#define REG_HDMI_AUD_SAMPLE_RATE2 (HDMI_BASE_ADDR + 0x3ac)
+
+/* HDMI info WR FIFO 0x3c0 - 0x3e0 */
+#define REG_HDMI_WR_FIFO_ADDR (HDMI_BASE_ADDR + 0x3c0)
+#define REG_HDMI_FIFO_CTRL (HDMI_BASE_ADDR + 0x3e4)
+#define REG_HDMI_CHANNEL_TEST (HDMI_BASE_ADDR + 0x3e8)
+#define REG_HDMI_HOTPLUG_DETECT (HDMI_BASE_ADDR + 0x3ec)
+#define REG_HDMI_HOTPLUG_DEBOUNCE (HDMI_BASE_ADDR + 0x3f0)
+#define REG_HDMI_TMDS_CTRL (HDMI_BASE_ADDR + 0x3f8)
+
+/* HDMI info RD FIFO 0x400 - 0x420 */
+#define REG_HDMI_RD_FIFO_ADDR (HDMI_BASE_ADDR + 0x400)
+
+#define REG_HDMI_END (HDMI_BASE_ADDR + 0x420)
+
+/* REG_HDMI_CTRL,0x120 */
+#define HDMI_EEPROM_RESET REG_HDMI_CTRL, BIT0, 0
+#define HDMI_ENCODE_ENABLE REG_HDMI_CTRL, BIT1, 1
+#define HDMI_HDEN REG_HDMI_CTRL, BIT2, 2
+#define HDMI_EESS_ENABLE REG_HDMI_CTRL, BIT3, 3
+#define HDMI_VERIFY_PJ_ENABLE REG_HDMI_CTRL, BIT4, 4
+#define HDMI_I2C_ENABLE REG_HDMI_CTRL, BIT5, 5
+#define HDMI_AUTH_TEST_KEY REG_HDMI_CTRL, BIT6, 6
+#define HDMI_CIPHER_1_1 REG_HDMI_CTRL, BIT8, 8
+#define HDMI_PREAMBLE REG_HDMI_CTRL, 0xF000, 12
+#define HDMI_ENCODE_WINDOW REG_HDMI_CTRL, 0x700000, 20
+
+/* REG_HDMI_I2C_CTRL,0x124 */
+#define HDMI_FORCE_EXIT_FSM REG_HDMI_I2C_CTRL, BIT7, 7
+#define HDMI_KEY_READ_WORD REG_HDMI_I2C_CTRL, 0xFF00, 8
+#define HDMI_I2C_SW_RESET REG_HDMI_I2C_CTRL, 0x8000, 15
+#define HDMI_I2C_CLK_DIVIDER REG_HDMI_I2C_CTRL, 0xFFFF0000, 16
+
+/* REG_HDMI_I2C_CTRL2,0x128 */
+#define HDMI_WR_DATA REG_HDMI_I2C_CTRL2, 0xFF, 0
+#define HDMI_RD_DATA REG_HDMI_I2C_CTRL2, 0xFF00, 8
+#define HDMI_SW_START_REQ REG_HDMI_I2C_CTRL2, BIT16, 16
+#define HDMI_SW_STOP_REQ REG_HDMI_I2C_CTRL2, BIT17, 17
+#define HDMI_WR_DATA_AVAIL REG_HDMI_I2C_CTRL2, BIT18, 18
+#define HDMI_I2C_STATUS REG_HDMI_I2C_CTRL2, BIT19, 19 /* 0-not using, 1-in using */
+#define HDMI_CP_KEY_REQ REG_HDMI_I2C_CTRL2, BIT20, 20
+#define HDMI_CP_KEY_READ REG_HDMI_I2C_CTRL2, BIT21, 21
+#define HDMI_CP_KEY_LAST REG_HDMI_I2C_CTRL2, BIT22, 22
+#define HDMI_CP_SRC_SEL REG_HDMI_I2C_CTRL2, BIT24, 24
+#define HDMI_SW_READ REG_HDMI_I2C_CTRL2, BIT25, 25
+#define HDMI_SW_I2C_REQ REG_HDMI_I2C_CTRL2, BIT26, 26
+#define HDMI_KSV_LIST_AVAIL REG_HDMI_I2C_CTRL2, BIT27, 27
+#define HDMI_KSV_VERIFY_DONE REG_HDMI_I2C_CTRL2, BIT28, 28
+
+/* REG_HDMI_GENERAL_CTRL,0x280 */
+#define HDMI_RESET REG_HDMI_GENERAL_CTRL, BIT0, 0
+#define HDMI_ENABLE REG_HDMI_GENERAL_CTRL, BIT1, 1
+#define HDMI_DVI_MODE_ENABLE REG_HDMI_GENERAL_CTRL, BIT6, 6
+#define HDMI_OUTPUT_FORMAT REG_HDMI_GENERAL_CTRL, 0x180, 7 /* 0-RGB,1-YUV444,2-YUV422 */
+#define HDMI_CONVERT_YUV422 REG_HDMI_GENERAL_CTRL, BIT9, 9
+#define HDMI_HSYNC_LOW_ACTIVE REG_HDMI_GENERAL_CTRL, BIT10, 10 /* 0-active high,1-active low */
+#define HDMI_DBG_BUS_SELECT REG_HDMI_GENERAL_CTRL, BIT11, 11 /* 0-before,1-after */
+#define HDMI_VSYNC_LOW_ACTIVE REG_HDMI_GENERAL_CTRL, BIT13, 13 /* 0-active high,1-active low */
+#define HDMI_CP_DELAY REG_HDMI_GENERAL_CTRL, 0x7F0000, 16 /* delay for CP after HSYNC raising edge */
+#define HDMI_VSYNC_384_ENABLE REG_HDMI_GENERAL_CTRL, BIT24, 24
+#define HDMI_VSYNC_385_507_ENABLE REG_HDMI_GENERAL_CTRL, BIT25, 25
+#define HDMI_VSYNC_650_ENABLE REG_HDMI_GENERAL_CTRL, BIT26, 26
+#define HDMI_STATE_MACHINE_STATUS REG_HDMI_GENERAL_CTRL, 0xF8000000, 27
+
+/* REG_HDMI_INFOFRAME_CTRL,0x284 */
+#define HDMI_INFOFRAME_SELECT REG_HDMI_INFOFRAME_CTRL, BIT0, 0 /* 0-fifo1,1-fifo2 */
+#define HDMI_INFOFRAME_FIFO1_RDY REG_HDMI_INFOFRAME_CTRL, BIT1, 1 /* Info frame FIFO 1 ready */
+#define HDMI_INFOFRAME_FIFO2_RDY REG_HDMI_INFOFRAME_CTRL, BIT2, 2 /* Info frame FIFO 2 ready */
+#define HDMI_INFOFRAME_FIFO1_ADDR REG_HDMI_INFOFRAME_CTRL, 0xF0, 4 /* Info frame FIFO 1 start address */
+#define HDMI_INFOFRAME_FIFO1_LEN REG_HDMI_INFOFRAME_CTRL, 0x1F00, 8 /* Info frame FIFO 1 length */
+#define HDMI_INFOFRAME_FIFO2_ADDR REG_HDMI_INFOFRAME_CTRL, 0xF0000, 16 /* Info frame FIFO 2 start address */
+#define HDMI_INFOFRAME_FIFO2_LEN REG_HDMI_INFOFRAME_CTRL, 0x1F00000, 20 /* Info frame FIFO 2 length */
+#define HDMI_HORIZ_BLANK_MAX_PCK REG_HDMI_INFOFRAME_CTRL, 0x70000000, 28 /* Max packets that insert during HSYNC */
+
+/* REG_HDMI_AUD_INSERT_CTRL,0x294 */
+#define HDMI_AUD_PCK_INSERT_RESET REG_HDMI_AUD_INSERT_CTRL, BIT0, 0
+#define HDMI_AUD_PCK_INSERT_ENABLE REG_HDMI_AUD_INSERT_CTRL, BIT1, 1
+#define HDMI_AVMUTE_SET_ENABLE REG_HDMI_AUD_INSERT_CTRL, BIT2, 2
+#define HDMI_AVMUTE_CLR_ENABLE REG_HDMI_AUD_INSERT_CTRL, BIT3, 3
+#define HDMI_AUD_INSERT_DELAY REG_HDMI_AUD_INSERT_CTRL, 0xFFF0, 4
+#define HDMI_AUD_PIXEL_REPETITION REG_HDMI_AUD_INSERT_CTRL, 0xC0000000, 30 /* 0-none,1-2 times,2-4 times */
+
+/* REG_HDMI_AUD_RATIO,0x29c */
+#define HDMI_AUD_ACR_RATIO REG_HDMI_AUD_RATIO, 0x0FFFFF00, 8
+#define HDMI_AUD_ACR_ENABLE REG_HDMI_AUD_RATIO, BIT28, 28
+#define HDMI_AUD_MUTE REG_HDMI_AUD_RATIO, BIT29, 29
+
+/* REG_HDMI_AUD_ENABLE,0x2a0 */
+#define HDMI_AUD_ENABLE REG_HDMI_AUD_ENABLE, BIT0, 0
+
+/* REG_HDMI_AUD_MODE,0x2ac */
+#define HDMI_AUD_SUB_PACKET REG_HDMI_AUD_MODE, 0xF, 0
+#define HDMI_AUD_SPFLAT REG_HDMI_AUD_MODE, 0xF0, 4
+#define HDMI_AUD_2CH_ECO REG_HDMI_AUD_MODE, BIT8, 8
+#define HDMI_AUD_LAYOUT REG_HDMI_AUD_MODE, BIT10, 10 /* 0-2 channel,1-8 channel */
+#define HDMI_AUD_PWR_SAVING REG_HDMI_AUD_MODE, BIT11, 11 /* 0-normal, 1-power saving */
+
+/* REG_HDMI_AUD_CHAN_STATUS0,0x390 */
+/* REG_HDMI_AUD_CHAN_STATUS1,0x394 */
+/* REG_HDMI_AUD_CHAN_STATUS2,0x398 */
+/* REG_HDMI_AUD_CHAN_STATUS3,0x39c */
+/* REG_HDMI_AUD_CHAN_STATUS4,0x3a0 */
+/* REG_HDMI_AUD_CHAN_STATUS5,0x3a4 */
+
+/* REG_HDMI_AUD_SAMPLE_RATE1,0x3a8 */
+#define HDMI_AUD_N_20BITS REG_HDMI_AUD_SAMPLE_RATE1, 0xFFFFF, 0
+#define HDMI_AUD_CTS_LOW_12BITS REG_HDMI_AUD_SAMPLE_RATE1, 0xFFF00000, 20
+
+/* REG_HDMI_AUD_SAMPLE_RATE2,0x3ac */
+#define HDMI_AUD_CTS_HI_8BITS REG_HDMI_AUD_SAMPLE_RATE2, 0xFF, 0
+#define HDMI_AUD_AIPCLK_RATE REG_HDMI_AUD_SAMPLE_RATE2, 0x30000000, 28 /* 0-N/2,1-N,2-N/4,3-N*2 */
+#define HDMI_AUD_CTS_SELECT REG_HDMI_AUD_SAMPLE_RATE2, BIT30, 30 /* 0-auto, 1-fixed from register */
+
+/* 0x3c0 - 0x3e0 : Info frame FIFO data */
+
+/* REG_HDMI_FIFO_CTRL,0x3e4 */
+#define HDMI_INFOFRAME_WR_STROBE REG_HDMI_FIFO_CTRL, BIT0, 0
+#define HDMI_INFOFRAME_RD_STROBE REG_HDMI_FIFO_CTRL, BIT1, 1
+#define HDMI_INFOFRAME_FIFO_ADDR REG_HDMI_FIFO_CTRL, 0xFF00, 8
+
+/* REG_HDMI_CHANNEL_TEST,0x3e8 */
+#define HDMI_CH1_TEST_MODE_ENABLE REG_HDMI_CHANNEL_TEST, BIT26, 26
+#define HDMI_CH1_TEST_DATA REG_HDMI_CHANNEL_TEST, 0x3FF0000, 16
+#define HDMI_CH0_TEST_MODE_ENABLE REG_HDMI_CHANNEL_TEST, BIT10, 10
+#define HDMI_CH0_TEST_DATA REG_HDMI_CHANNEL_TEST, 0x3FF, 0
+
+/* REG_HDMI_HOTPLUG_DETECT,0x3ec */
+#define HDMI_HOTPLUG_IN REG_HDMI_HOTPLUG_DETECT, BIT31, 31 /* 0-plug out,1-plug in */
+#define HDMI_HOTPLUG_OUT_STS REG_HDMI_HOTPLUG_DETECT, BIT25, 25
+#define HDMI_HOTPLUG_IN_STS REG_HDMI_HOTPLUG_DETECT, BIT24, 24
+#define HDMI_HOTPLUG_OUT_INT REG_HDMI_HOTPLUG_DETECT, BIT17, 17
+#define HDMI_HOTPLUG_IN_INT REG_HDMI_HOTPLUG_DETECT, BIT16, 16
+#define HDMI_CH2_TEST_MODE_ENABLE REG_HDMI_HOTPLUG_DETECT, BIT10, 10
+#define HDMI_CH2_TEST_DATA REG_HDMI_HOTPLUG_DETECT, 0x3FF, 0
+
+/* REG_HDMI_HOTPLUG_DEBOUNCE,0x3f0 */
+#define HDMI_DEBOUNCE_DETECT REG_HDMI_HOTPLUG_DEBOUNCE, 0x1FF0000, 16
+#define HDMI_DEBOUNCE_SAMPLE REG_HDMI_HOTPLUG_DEBOUNCE, 0xFF, 0
+
+/* REG_HDMI_TMDS_CTRL,0x3f8 */
+#define HDMI_CLOCK_SELECT REG_HDMI_TMDS_CTRL, BIT16, 16 /* 0-clk 1x, 1-clk 2x */
+#define HDMI_INFOFRAME_SRAM_ENABLE REG_HDMI_TMDS_CTRL, BIT10, 10
+#define HDMI_TMDS_TST_FORMAT REG_HDMI_TMDS_CTRL, BIT1, 1
+#define HDMI_TMDS_TST_ENABLE REG_HDMI_TMDS_CTRL, BIT0, 0
+
+/* 0x400 - 0x420 : HDMI info frame FIFO data (RO) */
+
+#define REG_HDMI2_BEGIN (HDMI_BASE2_ADDR + 0x00)
+#define REG_HDMI_STATUS (HDMI_BASE2_ADDR + 0x00)
+#define REG_HDMI_TEST (HDMI_BASE2_ADDR + 0x04)
+#define REG_HDMI_LEVEL (HDMI_BASE2_ADDR + 0x08)
+#define REG_HDMI_IGS (HDMI_BASE2_ADDR + 0x0C)
+#define REG_HDMI_SET (HDMI_BASE2_ADDR + 0x10)
+#define REG_HDMI_SET2 (HDMI_BASE2_ADDR + 0x14)
+#define REG_HDMI_DETECT (HDMI_BASE2_ADDR + 0x18)
+#define REG_HDMI_TEST2 (HDMI_BASE2_ADDR + 0x1C)
+#define REG_HDMI_TEST3 (HDMI_BASE2_ADDR + 0x20)
+#define REG_HDMI_DFTSET2 (HDMI_BASE2_ADDR + 0x24)
+#define REG_HDMI2_END (HDMI_BASE2_ADDR + 0x28)
+
+/* REG_HDMI_STATUS,0x00 */
+#define HDMI_INTERNAL_LDO REG_HDMI_STATUS, 0x80000, 19
+#define HDMI_TEST REG_HDMI_STATUS, 0xF00, 8
+#define HDMI_DUAL_CHANNEL REG_HDMI_STATUS, BIT4, 4
+#define HDMI_INV_CLK REG_HDMI_STATUS, BIT0, 0
+
+/* REG_HDMI_TEST,0x04 */
+#define HDMI_PLL_R_F REG_HDMI_TEST, BIT18, 18
+#define HDMI_PLL_CPSET REG_HDMI_TEST, 0x30000, 16
+#define HDMI_PLLCK_DLY REG_HDMI_TEST, 0x7000, 12
+#define HDMI_TRE_EN REG_HDMI_TEST, 0x600, 9
+#define HDMI_PD REG_HDMI_TEST, BIT8, 8
+#define HDMI_VBG_SEL REG_HDMI_TEST, 0xC, 2
+#define HDMI_DRV_PDMODE REG_HDMI_TEST, BIT0, 0
+
+/* REG_HDMI_LEVEL,0x08 */
+#define HDMI_REG_LEVEL REG_HDMI_LEVEL, BIT8, 8
+#define HDMI_REG_UPDATE REG_HDMI_LEVEL, BIT0, 0
+
+/* REG_HDMI_IGS,0x0C */
+#define HDMI_LDI_SHIFT_LEFT REG_HDMI_IGS, BIT8, 8 /* 0-shift right,1-shift left */
+#define HDMI_IGS_BPP_TYPE REG_HDMI_IGS, 0x7, 0 /* 0-888,1-555,2-666,3-565 */
+
+/* REG_HDMI_SET,0x10 */
+#define HDMI_VSYNC_POLAR_LO REG_HDMI_SET, BIT3, 3 /* 0-active high,1-active low */
+#define HDMI_DVO_ENABLE REG_HDMI_SET, BIT2, 2
+#define HDMI_HSYNC_POLAR_LO REG_HDMI_SET, BIT1, 1 /* 0-active high,1-active low */
+#define HDMI_OUT_DATA_12 REG_HDMI_SET, BIT0, 0 /* 0-24bit,1-12bit */
+
+/* REG_HDMI_SET2,0x14 */
+#define HDMI_COLFMT_YUV422 REG_HDMI_SET2, BIT1, 1 /* 0-RGB or YUV444,1-YUV422 */
+#define HDMI_COLFMT_RGB REG_HDMI_SET2, BIT0, 0
+
+/* REG_HDMI_DETECT,0x18 */
+#define HDMI_RSEN REG_HDMI_DETECT, BIT8, 8
+#define HDMI_PLL_READY REG_HDMI_DETECT, BIT0, 0
+
+/* REG_HDMI_TEST2,0x1C */
+#define HDMI_PLL_TSYNC REG_HDMI_TEST2, BIT0, 0
+#define HDMI_TP2S_TYPE REG_HDMI_TEST2, BIT1, 1
+#define HDMI_DIV_SEL REG_HDMI_TEST2, 0xC, 2
+#define HDMI_PD_V2I REG_HDMI_TEST2, BIT4, 4
+#define HDMI_VCO_SX REG_HDMI_TEST2, BIT5, 5
+#define HDMI_VCO_MODE REG_HDMI_TEST2, BIT6, 6
+#define HDMI_VSREF_SEL REG_HDMI_TEST2, 0x300, 8
+#define HDMI_MODE REG_HDMI_TEST2, BIT10, 10
+#define HDMI_PD_L2HA REG_HDMI_TEST2, BIT11, 11
+#define HDMI_PD_L2HB REG_HDMI_TEST2, BIT12, 12
+#define HDMI_L2HA_HSEN REG_HDMI_TEST2, BIT13, 13
+#define HDMI_RESA_EN REG_HDMI_TEST2, BIT14, 14
+#define HDMI_RESA_S REG_HDMI_TEST2, BIT15, 15
+#define HDMI_PLL_LPFS REG_HDMI_TEST2, 0x30000, 16
+
+/* REG_HDMI_DFTSET2,0x24 */
+#define HDMI_RESET_PLL REG_HDMI_DFTSET2, BIT16, 16
+
+#endif /* WMT_HDMI_REG_H */
+