Linux-libre 5.4.48-gnu
[librecmc/linux-libre.git] / drivers / media / dvb-frontends / cxd2880 / cxd2880_dvbt.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * cxd2880_dvbt.h
4  * Sony CXD2880 DVB-T2/T tuner + demodulator driver
5  * DVB-T related definitions
6  *
7  * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation
8  */
9
10 #ifndef CXD2880_DVBT_H
11 #define CXD2880_DVBT_H
12
13 #include "cxd2880_common.h"
14
15 enum cxd2880_dvbt_constellation {
16         CXD2880_DVBT_CONSTELLATION_QPSK,
17         CXD2880_DVBT_CONSTELLATION_16QAM,
18         CXD2880_DVBT_CONSTELLATION_64QAM,
19         CXD2880_DVBT_CONSTELLATION_RESERVED_3
20 };
21
22 enum cxd2880_dvbt_hierarchy {
23         CXD2880_DVBT_HIERARCHY_NON,
24         CXD2880_DVBT_HIERARCHY_1,
25         CXD2880_DVBT_HIERARCHY_2,
26         CXD2880_DVBT_HIERARCHY_4
27 };
28
29 enum cxd2880_dvbt_coderate {
30         CXD2880_DVBT_CODERATE_1_2,
31         CXD2880_DVBT_CODERATE_2_3,
32         CXD2880_DVBT_CODERATE_3_4,
33         CXD2880_DVBT_CODERATE_5_6,
34         CXD2880_DVBT_CODERATE_7_8,
35         CXD2880_DVBT_CODERATE_RESERVED_5,
36         CXD2880_DVBT_CODERATE_RESERVED_6,
37         CXD2880_DVBT_CODERATE_RESERVED_7
38 };
39
40 enum cxd2880_dvbt_guard {
41         CXD2880_DVBT_GUARD_1_32,
42         CXD2880_DVBT_GUARD_1_16,
43         CXD2880_DVBT_GUARD_1_8,
44         CXD2880_DVBT_GUARD_1_4
45 };
46
47 enum cxd2880_dvbt_mode {
48         CXD2880_DVBT_MODE_2K,
49         CXD2880_DVBT_MODE_8K,
50         CXD2880_DVBT_MODE_RESERVED_2,
51         CXD2880_DVBT_MODE_RESERVED_3
52 };
53
54 enum cxd2880_dvbt_profile {
55         CXD2880_DVBT_PROFILE_HP = 0,
56         CXD2880_DVBT_PROFILE_LP
57 };
58
59 struct cxd2880_dvbt_tpsinfo {
60         enum cxd2880_dvbt_constellation constellation;
61         enum cxd2880_dvbt_hierarchy hierarchy;
62         enum cxd2880_dvbt_coderate rate_hp;
63         enum cxd2880_dvbt_coderate rate_lp;
64         enum cxd2880_dvbt_guard guard;
65         enum cxd2880_dvbt_mode mode;
66         u8 fnum;
67         u8 length_indicator;
68         u16 cell_id;
69         u8 cell_id_ok;
70         u8 reserved_even;
71         u8 reserved_odd;
72 };
73
74 #endif