summaryrefslogtreecommitdiff
path: root/ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h
diff options
context:
space:
mode:
authorKevin2014-11-15 10:00:36 +0800
committerKevin2014-11-15 10:00:36 +0800
commit9d40ac5867b9aefe0722bc1f110b965ff294d30d (patch)
treede942df665fac4bac0d9cb7ae86910fe937b0c1a /ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h
parent392e8802486cb573b916e746010e141a75f507e6 (diff)
downloadFOSSEE-netbook-kernel-source-9d40ac5867b9aefe0722bc1f110b965ff294d30d.tar.gz
FOSSEE-netbook-kernel-source-9d40ac5867b9aefe0722bc1f110b965ff294d30d.tar.bz2
FOSSEE-netbook-kernel-source-9d40ac5867b9aefe0722bc1f110b965ff294d30d.zip
add via modify part source code for wm8880 4.4 kitkat
Diffstat (limited to 'ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h')
-rwxr-xr-xANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h220
1 files changed, 220 insertions, 0 deletions
diff --git a/ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h b/ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h
new file mode 100755
index 00000000..17e7275c
--- /dev/null
+++ b/ANDROID_3.4.5/drivers/video/wmt/hw/wmt-cec-reg.h
@@ -0,0 +1,220 @@
+/*++
+ * linux/drivers/video/wmt/hw/wmt-cec-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_CEC_REG_H
+#define WMT_CEC_REG_H
+
+#define WMT_FTBLK_CEC
+
+#define CEC_BASE_ADDR (LVDS_BASE_ADDR + 0x100)
+#define CEC_BASE2_ADDR (LVDS_BASE_ADDR + 0x200)
+struct cec_base_regs {
+ union {
+ unsigned int val;
+ struct {
+ unsigned int wr_start:1;
+ } b;
+ } enable; /* 0x0 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int wr_num:8;
+ } b;
+ } encode_number; /* 0x04 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int wr_data_ack:1;
+ unsigned int wr_data_eom:1;
+ unsigned int _02_03:2;
+ unsigned int wr_data:8;
+ } b;
+ } encode_data[16]; /* 0x08 header,0x0c - 0x44 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int finish_reset:1;
+ } b;
+ } decode_reset; /* 0x48 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int rd_start:1;
+ unsigned int rd_all_ack:1;
+ unsigned int rd_finish:1;
+ } b;
+ } decode_start; /* 0x4c */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int rd_data_ack:1;
+ unsigned int rd_data_eom:1;
+ unsigned int _02_03:2;
+ unsigned int rd_data:8;
+ } b;
+ } decode_data[16]; /* 0x50 header, 0x54 - 0x8c */
+
+ unsigned int wr_start_set0; /* 0x90 */
+ unsigned int wr_start_set1; /* 0x94 */
+ unsigned int wr_logic0_set0; /* 0x98 */
+ unsigned int wr_logic0_set1; /* 0x9c */
+ unsigned int wr_logic1_set0; /* 0xa0 */
+ unsigned int wr_logic1_set1; /* 0xa4 */
+ unsigned int rd_start_l_set0; /* 0xa8 */
+ unsigned int rd_start_r_set0; /* 0xac */
+ unsigned int rd_start_l_set1; /* 0xb0 */
+ unsigned int rd_start_r_set1; /* 0xb4 */
+ unsigned int rd_logic0_l_set0; /* 0xb8 */
+ unsigned int rd_logic0_r_set0; /* 0xbc */
+ unsigned int rd_logic0_l_set1; /* 0xc0 */
+ unsigned int rd_logic0_r_set1; /* 0xc4 */
+ unsigned int rd_logic1_l_set0; /* 0xc8 */
+ unsigned int rd_logic1_r_set0; /* 0xcc */
+ unsigned int rd_logic1_l_set1; /* 0xd0 */
+ unsigned int rd_logic1_r_set1; /* 0xd4 */
+ unsigned int physical_addr; /* 0xd8 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int addr1:4;
+ unsigned int addr2:4;
+ unsigned int addr3:4;
+ unsigned int addr4:4;
+ unsigned int addr5:4;
+ unsigned int _20_23:4;
+ unsigned int valid1:1;
+ unsigned int valid2:1;
+ unsigned int valid3:1;
+ unsigned int valid4:1;
+ unsigned int valid5:1;
+ } b;
+ } logical_addr; /* 0xdc */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int retry:4;
+ } b;
+ } wr_retry; /* 0xe0 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int free_3x:4;
+ unsigned int _04_07:4;
+ unsigned int free_5x:4;
+ unsigned int _12_15:4;
+ unsigned int free_7x:4;
+ } b;
+ } free_3x; /* 0xe4 */
+
+ unsigned int wr_set0_error; /* 0xe8 */
+ unsigned int wr_set1_error; /* 0xec */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int next_decode:1; /*read enable*/
+ } b;
+ } reject; /* 0xf0 */
+
+ unsigned int rd_l_set0_error; /* 0xf4 */
+ unsigned int rd_r_set1_error; /* 0xf8 */
+ unsigned int rd_l_error; /* 0xfc */
+
+ unsigned int rx_trig_range; /* 0x100 */
+ unsigned int rx_sample_l_range; /* 0x104 */
+ unsigned int rx_sample_r_range; /* 0x108 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int disable:1;
+ } b;
+ } comp; /* 0x10c */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int err:1;
+ unsigned int no_ack:1;
+ } b;
+ } handle_disable; /* 0x110 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int r1_encode_ok:1; /* write finish */
+ unsigned int r1_decode_ok:1; /* read finish */
+ unsigned int r1_error:1; /* read error */
+ unsigned int r1_arb_fail:1; /* wr arb fail */
+ unsigned int r1_no_ack:1; /* wr no ack */
+ } b;
+ } status; /* 0x114 */
+
+ unsigned int int_enable; /* 0x118 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int disable:1;
+ } b;
+ } decode_full; /* 0x11c */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int start:1;
+ unsigned int logic0:1;
+ unsigned int logic1:1;
+ } b;
+ } status4_disable; /* 0x120 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int enable:1; /*1:rd self wr & all dest data */
+ } b;
+ } rd_encode; /* 0x124 */
+
+ union {
+ unsigned int val;
+ struct {
+ unsigned int disable:1; /* 1 : disable arb check */
+ } b;
+ } arb_check; /* 0x128 */
+};
+
+#define REG_CEC_BEGIN (CEC_BASE_ADDR + 0x0)
+#define REG_CEC_END (CEC_BASE2_ADDR + 0x28)
+#ifndef CEC_C
+extern struct cec_base_regs *cec_regs;
+#endif
+#endif /* WMT_CEC_REG_H */
+