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
15enum 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
22enum 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
29enum 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
40enum 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
47enum 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
54enum cxd2880_dvbt_profile {
55	CXD2880_DVBT_PROFILE_HP = 0,
56	CXD2880_DVBT_PROFILE_LP
57};
58
59struct 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
75