V4L/DVB (3435): rename cb variable names in tuner structures for global consistency
[GitHub/moto-9609/android_kernel_motorola_exynos9610.git] / include / media / tuner-types.h
CommitLineData
7b0ac9cd
MK
1/*
2 * descriptions for simple tuners.
3 */
4
5#ifndef __TUNER_TYPES_H__
6#define __TUNER_TYPES_H__
7
8enum param_type {
9 TUNER_PARAM_TYPE_RADIO, \
10 TUNER_PARAM_TYPE_PAL, \
11 TUNER_PARAM_TYPE_SECAM, \
c943aa85 12 TUNER_PARAM_TYPE_NTSC
7b0ac9cd
MK
13};
14
15struct tuner_range {
16 unsigned short limit;
17 unsigned char cb;
18};
19
20struct tuner_params {
21 enum param_type type;
27487d44
HV
22 /* Many Philips based tuners have a comment like this in their
23 * datasheet:
24 *
25 * For channel selection involving band switching, and to ensure
26 * smooth tuning to the desired channel without causing
27 * unnecessary charge pump action, it is recommended to consider
28 * the difference between wanted channel frequency and the
29 * current channel frequency. Unnecessary charge pump action
30 * will result in very low tuning voltage which may drive the
31 * oscillator to extreme conditions.
32 *
de03d21b 33 * Set cb_first_if_lower_freq to 1, if this check is
01872c5d 34 * required for this tuner.
27487d44
HV
35 *
36 * I tested this for PAL by first setting the TV frequency to
37 * 203 MHz and then switching to 96.6 MHz FM radio. The result was
38 * static unless the control byte was sent first.
39 */
40 unsigned int cb_first_if_lower_freq:1;
7b0ac9cd
MK
41 unsigned char config; /* to be moved into struct tuner_range for dvb-pll merge */
42
43 unsigned int count;
44 struct tuner_range *ranges;
45};
46
47struct tunertype {
48 char *name;
7b0ac9cd
MK
49 struct tuner_params *params;
50};
51
52extern struct tunertype tuners[];
53extern unsigned const int tuner_count;
54
55#endif