• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2     Copyright (C) 2008 Mauro Carvalho Chehab <mchehab@kernel.org>
3     This program is free software; you can redistribute it and/or modify
4     it under the terms of the GNU General Public License as published by
5     the Free Software Foundation version 2 of the License.
6 
7     This program is distributed in the hope that it will be useful,
8     but WITHOUT ANY WARRANTY; without even the implied warranty of
9     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10     GNU General Public License for more details.
11 
12     You should have received a copy of the GNU General Public License
13     along with this program; if not, write to the Free Software
14     Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335  USA
15  */
16 
17 #include "v4l2-dbg.h"
18 
19 #define BTTV_IDENT "bttv"
20 
21 /* Register name prefix */
22 #define BTTV_PREFIX "BT848_"
23 
24 static const std::vector<board_regs> bt8xx_regs_other{
25 	{ 0x000, BTTV_PREFIX "DSTATUS", 1 },
26 	{ 0x054, BTTV_PREFIX "TEST", 1 },
27 	{ 0x060, BTTV_PREFIX "ADELAY", 1 },
28 	{ 0x064, BTTV_PREFIX "BDELAY", 1 },
29 	{ 0x07C, BTTV_PREFIX "SRESET", 1 },
30 	{ 0x100, BTTV_PREFIX "INT_STAT", 1 },
31 	{ 0x110, BTTV_PREFIX "I2C", 1 },
32 	{ 0x11C, BTTV_PREFIX "GPIO_REG_INP", 1 },
33 	{ 0x120, BTTV_PREFIX "RISC_COUNT", 1 },
34 
35 	/* This is also defined at bt8xx_regs with other name */
36 	{ 0x0fc, BTTV_PREFIX "VBI_PACK_DEL_VBI_HDELAY", 1 },
37 };
38 
39 static const std::vector<board_regs> bt8xx_regs{
40 	{ 0x004, BTTV_PREFIX "IFORM", 1 },
41 	{ 0x008, BTTV_PREFIX "TDEC", 1 },
42 	{ 0x00C, BTTV_PREFIX "E_CROP", 1 },
43 	{ 0x08C, BTTV_PREFIX "O_CROP", 1 },
44 	{ 0x010, BTTV_PREFIX "E_VDELAY_LO", 1 },
45 	{ 0x090, BTTV_PREFIX "O_VDELAY_LO", 1 },
46 	{ 0x014, BTTV_PREFIX "E_VACTIVE_LO", 1 },
47 	{ 0x094, BTTV_PREFIX "O_VACTIVE_LO", 1 },
48 	{ 0x018, BTTV_PREFIX "E_HDELAY_LO", 1 },
49 	{ 0x098, BTTV_PREFIX "O_HDELAY_LO", 1 },
50 	{ 0x01C, BTTV_PREFIX "E_HACTIVE_LO", 1 },
51 	{ 0x09C, BTTV_PREFIX "O_HACTIVE_LO", 1 },
52 	{ 0x020, BTTV_PREFIX "E_HSCALE_HI", 1 },
53 	{ 0x0A0, BTTV_PREFIX "O_HSCALE_HI", 1 },
54 	{ 0x024, BTTV_PREFIX "E_HSCALE_LO", 1 },
55 	{ 0x0A4, BTTV_PREFIX "O_HSCALE_LO", 1 },
56 	{ 0x028, BTTV_PREFIX "BRIGHT", 1 },
57 	{ 0x02C, BTTV_PREFIX "E_CONTROL", 1 },
58 	{ 0x0AC, BTTV_PREFIX "O_CONTROL", 1 },
59 	{ 0x030, BTTV_PREFIX "CONTRAST_LO", 1 },
60 	{ 0x034, BTTV_PREFIX "SAT_U_LO", 1 },
61 	{ 0x038, BTTV_PREFIX "SAT_V_LO", 1 },
62 	{ 0x03C, BTTV_PREFIX "HUE", 1 },
63 	{ 0x040, BTTV_PREFIX "E_SCLOOP", 1 },
64 	{ 0x0C0, BTTV_PREFIX "O_SCLOOP", 1 },
65 	{ 0x048, BTTV_PREFIX "OFORM", 1 },
66 	{ 0x04C, BTTV_PREFIX "E_VSCALE_HI", 1 },
67 	{ 0x0CC, BTTV_PREFIX "O_VSCALE_HI", 1 },
68 	{ 0x050, BTTV_PREFIX "E_VSCALE_LO", 1 },
69 	{ 0x0D0, BTTV_PREFIX "O_VSCALE_LO", 1 },
70 	{ 0x068, BTTV_PREFIX "ADC", 1 },
71 	{ 0x044, BTTV_PREFIX "WC_UP", 1 },
72 	{ 0x078, BTTV_PREFIX "WC_DOWN", 1 },
73 	{ 0x06C, BTTV_PREFIX "E_VTC", 1 },
74 	{ 0x080, BTTV_PREFIX "TGCTRL", 1 },
75 	{ 0x0EC, BTTV_PREFIX "O_VTC", 1 },
76 	{ 0x0D4, BTTV_PREFIX "COLOR_FMT", 1 },
77 	{ 0x0B0, BTTV_PREFIX "VTOTAL_LO", 1 },
78 	{ 0x0B4, BTTV_PREFIX "VTOTAL_HI", 1 },
79 	{ 0x0D8, BTTV_PREFIX "COLOR_CTL", 1 },
80 	{ 0x0DC, BTTV_PREFIX "CAP_CTL", 1 },
81 	{ 0x0E0, BTTV_PREFIX "VBI_PACK_SIZE", 1 },
82 	{ 0x0E4, BTTV_PREFIX "VBI_PACK_DEL", 1 },
83 	{ 0x0E8, BTTV_PREFIX "FCNTR", 1 },
84 
85 	{ 0x0F0, BTTV_PREFIX "PLL_F_LO", 1 },
86 	{ 0x0F4, BTTV_PREFIX "PLL_F_HI", 1 },
87 	{ 0x0F8, BTTV_PREFIX "PLL_XCI", 1 },
88 
89 	{ 0x0FC, BTTV_PREFIX "DVSIF", 1 },
90 
91 	{ 0x104, BTTV_PREFIX "INT_MASK", 4 },
92 	{ 0x10C, BTTV_PREFIX "GPIO_DMA_CTL", 2 },
93 	{ 0x114, BTTV_PREFIX "RISC_STRT_ADD", 4 },
94 	{ 0x118, BTTV_PREFIX "GPIO_OUT_EN", 4 },
95 	{ 0x11a, BTTV_PREFIX "GPIO_OUT_EN_HIBYTE", 4 },
96 	{ 0x200, BTTV_PREFIX "GPIO_DATA", 4 },
97 };
98