tizen 2.4 release
[profile/mobile/platform/kernel/linux-3.10-sc7730.git] / drivers / media / tuners / tuner_it913x_priv.h
1 /*
2  * ITE Tech IT9137 silicon tuner driver
3  *
4  *  Copyright (C) 2011 Malcolm Priestley (tvboxspy@gmail.com)
5  *  IT9137 Copyright (C) ITE Tech Inc.
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation; either version 2 of the License, or
10  *  (at your option) any later version.
11  *
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *
16  *  GNU General Public License for more details.
17  *
18  *  You should have received a copy of the GNU General Public License
19  *  along with this program; if not, write to the Free Software
20  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.=
21  */
22
23 #ifndef IT913X_PRIV_H
24 #define IT913X_PRIV_H
25
26 #include "tuner_it913x.h"
27 #include "af9033.h"
28
29 #define PRO_LINK                0x0
30 #define PRO_DMOD                0x1
31 #define TRIGGER_OFSM            0x0000
32
33 struct it913xset {      u32 pro;
34                         u32 address;
35                         u8 reg[15];
36                         u8 count;
37 };
38
39 /* Tuner setting scripts (still keeping it9137) */
40 static struct it913xset it9137_tuner_off[] = {
41         {PRO_DMOD, 0xfba8, {0x01}, 0x01}, /* Tuner Clock Off  */
42         {PRO_DMOD, 0xec40, {0x00}, 0x01}, /* Power Down Tuner */
43         {PRO_DMOD, 0xec02, {0x3f, 0x1f, 0x3f, 0x3f}, 0x04},
44         {PRO_DMOD, 0xec06, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
45                                 0x00, 0x00, 0x00, 0x00}, 0x0c},
46         {PRO_DMOD, 0xec12, {0x00, 0x00, 0x00, 0x00}, 0x04},
47         {PRO_DMOD, 0xec17, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
48                                 0x00}, 0x09},
49         {PRO_DMOD, 0xec22, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
50                                 0x00, 0x00}, 0x0a},
51         {PRO_DMOD, 0xec20, {0x00}, 0x01},
52         {PRO_DMOD, 0xec3f, {0x01}, 0x01},
53         {0xff, 0x0000, {0x00}, 0x00}, /* Terminating Entry */
54 };
55
56 static struct it913xset set_it9135_template[] = {
57         {PRO_DMOD, 0xee06, {0x00}, 0x01},
58         {PRO_DMOD, 0xec56, {0x00}, 0x01},
59         {PRO_DMOD, 0xec4c, {0x00}, 0x01},
60         {PRO_DMOD, 0xec4d, {0x00}, 0x01},
61         {PRO_DMOD, 0xec4e, {0x00}, 0x01},
62         {PRO_DMOD, 0x011e, {0x00}, 0x01}, /* Older Devices */
63         {PRO_DMOD, 0x011f, {0x00}, 0x01},
64         {0xff, 0x0000, {0x00}, 0x00}, /* Terminating Entry */
65 };
66
67 static struct it913xset set_it9137_template[] = {
68         {PRO_DMOD, 0xee06, {0x00}, 0x01},
69         {PRO_DMOD, 0xec56, {0x00}, 0x01},
70         {PRO_DMOD, 0xec4c, {0x00}, 0x01},
71         {PRO_DMOD, 0xec4d, {0x00}, 0x01},
72         {PRO_DMOD, 0xec4e, {0x00}, 0x01},
73         {PRO_DMOD, 0xec4f, {0x00}, 0x01},
74         {PRO_DMOD, 0xec50, {0x00}, 0x01},
75         {0xff, 0x0000, {0x00}, 0x00}, /* Terminating Entry */
76 };
77
78 #endif