xref: /openbmc/linux/drivers/media/dvb-frontends/mb86a16_priv.h (revision 9a0bf528b4d66b605f02634236da085595c22101)
1*9a0bf528SMauro Carvalho Chehab /*
2*9a0bf528SMauro Carvalho Chehab 	Fujitsu MB86A16 DVB-S/DSS DC Receiver driver
3*9a0bf528SMauro Carvalho Chehab 
4*9a0bf528SMauro Carvalho Chehab 	Copyright (C) Manu Abraham (abraham.manu@gmail.com)
5*9a0bf528SMauro Carvalho Chehab 
6*9a0bf528SMauro Carvalho Chehab 	This program is free software; you can redistribute it and/or modify
7*9a0bf528SMauro Carvalho Chehab 	it under the terms of the GNU General Public License as published by
8*9a0bf528SMauro Carvalho Chehab 	the Free Software Foundation; either version 2 of the License, or
9*9a0bf528SMauro Carvalho Chehab 	(at your option) any later version.
10*9a0bf528SMauro Carvalho Chehab 
11*9a0bf528SMauro Carvalho Chehab 	This program is distributed in the hope that it will be useful,
12*9a0bf528SMauro Carvalho Chehab 	but WITHOUT ANY WARRANTY; without even the implied warranty of
13*9a0bf528SMauro Carvalho Chehab 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*9a0bf528SMauro Carvalho Chehab 	GNU General Public License for more details.
15*9a0bf528SMauro Carvalho Chehab 
16*9a0bf528SMauro Carvalho Chehab 	You should have received a copy of the GNU General Public License
17*9a0bf528SMauro Carvalho Chehab 	along with this program; if not, write to the Free Software
18*9a0bf528SMauro Carvalho Chehab 	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19*9a0bf528SMauro Carvalho Chehab */
20*9a0bf528SMauro Carvalho Chehab 
21*9a0bf528SMauro Carvalho Chehab #ifndef __MB86A16_PRIV_H
22*9a0bf528SMauro Carvalho Chehab #define __MB86A16_PRIV_H
23*9a0bf528SMauro Carvalho Chehab 
24*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT		0x00
25*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT_HIZSEL	(0x01 << 5)
26*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT_HIZCNTI	(0x01 << 4)
27*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT_MODE	(0x01 << 3)
28*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT_ORDER	(0x01 << 2)
29*9a0bf528SMauro Carvalho Chehab #define MB86A16_TSOUT_ERROR	(0x01 << 1)
30*9a0bf528SMauro Carvalho Chehab #define Mb86A16_TSOUT_EDGE	(0x01 << 0)
31*9a0bf528SMauro Carvalho Chehab 
32*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC		0x01
33*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC_FSYNC	(0x01 << 5)
34*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC_PCKB8	(0x01 << 4)
35*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC_DVDS	(0x01 << 3)
36*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC_EREN	(0x01 << 2)
37*9a0bf528SMauro Carvalho Chehab #define Mb86A16_FEC_RSEN	(0x01 << 1)
38*9a0bf528SMauro Carvalho Chehab #define MB86A16_FEC_DIEN	(0x01 << 0)
39*9a0bf528SMauro Carvalho Chehab 
40*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGC		0x02
41*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGC_AGMD	(0x01 << 6)
42*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGC_AGCW	(0x0f << 2)
43*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGC_AGCP	(0x01 << 1)
44*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGC_AGCR	(0x01 << 0)
45*9a0bf528SMauro Carvalho Chehab 
46*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE1		0x03
47*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE1_DECI	(0x07 << 2)
48*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE1_CSEL	(0x01 << 1)
49*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE1_RSEL	(0x01 << 0)
50*9a0bf528SMauro Carvalho Chehab 
51*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE2		0x04
52*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE2_STOFSL	(0xff << 0)
53*9a0bf528SMauro Carvalho Chehab 
54*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE3		0x05
55*9a0bf528SMauro Carvalho Chehab #define MB86A16_SRATE2_STOFSH	(0xff << 0)
56*9a0bf528SMauro Carvalho Chehab 
57*9a0bf528SMauro Carvalho Chehab #define MB86A16_VITERBI		0x06
58*9a0bf528SMauro Carvalho Chehab #define MB86A16_FRAMESYNC	0x07
59*9a0bf528SMauro Carvalho Chehab #define MB86A16_CRLFILTCOEF1	0x08
60*9a0bf528SMauro Carvalho Chehab #define MB86A16_CRLFILTCOEF2	0x09
61*9a0bf528SMauro Carvalho Chehab #define MB86A16_STRFILTCOEF1	0x0a
62*9a0bf528SMauro Carvalho Chehab #define MB86A16_STRFILTCOEF2	0x0b
63*9a0bf528SMauro Carvalho Chehab #define MB86A16_RESET		0x0c
64*9a0bf528SMauro Carvalho Chehab #define MB86A16_STATUS		0x0d
65*9a0bf528SMauro Carvalho Chehab #define MB86A16_AFCML		0x0e
66*9a0bf528SMauro Carvalho Chehab #define MB86A16_AFCMH		0x0f
67*9a0bf528SMauro Carvalho Chehab #define MB86A16_BERMON		0x10
68*9a0bf528SMauro Carvalho Chehab #define MB86A16_BERTAB		0x11
69*9a0bf528SMauro Carvalho Chehab #define MB86A16_BERLSB		0x12
70*9a0bf528SMauro Carvalho Chehab #define MB86A16_BERMID		0x13
71*9a0bf528SMauro Carvalho Chehab #define MB86A16_BERMSB		0x14
72*9a0bf528SMauro Carvalho Chehab #define MB86A16_AGCM		0x15
73*9a0bf528SMauro Carvalho Chehab 
74*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1		0x16
75*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_DISTA	(0x01 << 7)
76*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_PRTY	(0x01 << 6)
77*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_CTOE	(0x01 << 5)
78*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_TBEN	(0x01 << 4)
79*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_TBO	(0x01 << 3)
80*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC1_NUM	(0x07 << 0)
81*9a0bf528SMauro Carvalho Chehab 
82*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC2		0x17
83*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC2_DCBST	(0x01 << 0)
84*9a0bf528SMauro Carvalho Chehab 
85*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC3		0x18
86*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC3_CODE0	(0xff << 0)
87*9a0bf528SMauro Carvalho Chehab 
88*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC4		0x19
89*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC4_CODE1	(0xff << 0)
90*9a0bf528SMauro Carvalho Chehab 
91*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC5		0x1a
92*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC5_CODE2	(0xff << 0)
93*9a0bf528SMauro Carvalho Chehab 
94*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC6		0x1b
95*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC6_CODE3	(0xff << 0)
96*9a0bf528SMauro Carvalho Chehab 
97*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC7		0x1c
98*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC7_CODE4	(0xff << 0)
99*9a0bf528SMauro Carvalho Chehab 
100*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC8		0x1d
101*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCC8_CODE5	(0xff << 0)
102*9a0bf528SMauro Carvalho Chehab 
103*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCCOUT		0x1e
104*9a0bf528SMauro Carvalho Chehab #define MB86A16_DCCOUT_DISEN	(0x01 << 0)
105*9a0bf528SMauro Carvalho Chehab 
106*9a0bf528SMauro Carvalho Chehab #define MB86A16_TONEOUT1	0x1f
107*9a0bf528SMauro Carvalho Chehab #define MB86A16_TONE_TDIVL	(0xff << 0)
108*9a0bf528SMauro Carvalho Chehab 
109*9a0bf528SMauro Carvalho Chehab #define MB86A16_TONEOUT2	0x20
110*9a0bf528SMauro Carvalho Chehab #define MB86A16_TONE_TMD	(0x03 << 2)
111*9a0bf528SMauro Carvalho Chehab #define MB86A16_TONE_TDIVH	(0x03 << 0)
112*9a0bf528SMauro Carvalho Chehab 
113*9a0bf528SMauro Carvalho Chehab #define MB86A16_FREQ1		0x21
114*9a0bf528SMauro Carvalho Chehab #define MB86A16_FREQ2		0x22
115*9a0bf528SMauro Carvalho Chehab #define MB86A16_FREQ3		0x23
116*9a0bf528SMauro Carvalho Chehab #define MB86A16_FREQ4		0x24
117*9a0bf528SMauro Carvalho Chehab #define MB86A16_FREQSET		0x25
118*9a0bf528SMauro Carvalho Chehab #define MB86A16_CNM		0x26
119*9a0bf528SMauro Carvalho Chehab #define MB86A16_PORT0		0x27
120*9a0bf528SMauro Carvalho Chehab #define MB86A16_PORT1		0x28
121*9a0bf528SMauro Carvalho Chehab #define MB86A16_DRCFILT		0x29
122*9a0bf528SMauro Carvalho Chehab #define MB86A16_AFC		0x2a
123*9a0bf528SMauro Carvalho Chehab #define MB86A16_AFCEXL		0x2b
124*9a0bf528SMauro Carvalho Chehab #define MB86A16_AFCEXH		0x2c
125*9a0bf528SMauro Carvalho Chehab #define MB86A16_DAGC		0x2d
126*9a0bf528SMauro Carvalho Chehab #define MB86A16_SEQMODE		0x32
127*9a0bf528SMauro Carvalho Chehab #define MB86A16_S0S1T		0x33
128*9a0bf528SMauro Carvalho Chehab #define MB86A16_S2S3T		0x34
129*9a0bf528SMauro Carvalho Chehab #define MB86A16_S4S5T		0x35
130*9a0bf528SMauro Carvalho Chehab #define MB86A16_CNTMR		0x36
131*9a0bf528SMauro Carvalho Chehab #define MB86A16_SIG1		0x37
132*9a0bf528SMauro Carvalho Chehab #define MB86A16_SIG2		0x38
133*9a0bf528SMauro Carvalho Chehab #define MB86A16_VIMAG		0x39
134*9a0bf528SMauro Carvalho Chehab #define MB86A16_VISET1		0x3a
135*9a0bf528SMauro Carvalho Chehab #define MB86A16_VISET2		0x3b
136*9a0bf528SMauro Carvalho Chehab #define MB86A16_VISET3		0x3c
137*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS1		0x3d
138*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS2		0x3e
139*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS3		0x3f
140*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS4		0x40
141*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS5		0x41
142*9a0bf528SMauro Carvalho Chehab #define MB86A16_FAGCS6		0x42
143*9a0bf528SMauro Carvalho Chehab #define MB86A16_CRM		0x43
144*9a0bf528SMauro Carvalho Chehab #define MB86A16_STRM		0x44
145*9a0bf528SMauro Carvalho Chehab #define MB86A16_DAGCML		0x45
146*9a0bf528SMauro Carvalho Chehab #define MB86A16_DAGCMH		0x46
147*9a0bf528SMauro Carvalho Chehab #define MB86A16_QPSKTST		0x49
148*9a0bf528SMauro Carvalho Chehab #define MB86A16_DISTMON		0x52
149*9a0bf528SMauro Carvalho Chehab #define MB86A16_VERSION		0x7f
150*9a0bf528SMauro Carvalho Chehab 
151*9a0bf528SMauro Carvalho Chehab #endif /* __MB86A16_PRIV_H */
152