Linux-libre 4.19.20-gnu
[librecmc/linux-libre.git] / drivers / media / dvb-frontends / cxd2880 / cxd2880_tnrdmd_dvbt_mon.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * cxd2880_tnrdmd_dvbt_mon.h
4  * Sony CXD2880 DVB-T2/T tuner + demodulator driver
5  * DVB-T monitor interface
6  *
7  * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation
8  */
9
10 #ifndef CXD2880_TNRDMD_DVBT_MON_H
11 #define CXD2880_TNRDMD_DVBT_MON_H
12
13 #include "cxd2880_tnrdmd.h"
14 #include "cxd2880_dvbt.h"
15
16 int cxd2880_tnrdmd_dvbt_mon_sync_stat(struct cxd2880_tnrdmd
17                                       *tnr_dmd, u8 *sync_stat,
18                                       u8 *ts_lock_stat,
19                                       u8 *unlock_detected);
20
21 int cxd2880_tnrdmd_dvbt_mon_sync_stat_sub(struct cxd2880_tnrdmd
22                                           *tnr_dmd, u8 *sync_stat,
23                                           u8 *unlock_detected);
24
25 int cxd2880_tnrdmd_dvbt_mon_mode_guard(struct cxd2880_tnrdmd
26                                        *tnr_dmd,
27                                        enum cxd2880_dvbt_mode
28                                        *mode,
29                                        enum cxd2880_dvbt_guard
30                                        *guard);
31
32 int cxd2880_tnrdmd_dvbt_mon_carrier_offset(struct cxd2880_tnrdmd
33                                            *tnr_dmd, int *offset);
34
35 int cxd2880_tnrdmd_dvbt_mon_carrier_offset_sub(struct
36                                                cxd2880_tnrdmd
37                                                *tnr_dmd,
38                                                int *offset);
39
40 int cxd2880_tnrdmd_dvbt_mon_tps_info(struct cxd2880_tnrdmd
41                                      *tnr_dmd,
42                                      struct cxd2880_dvbt_tpsinfo
43                                      *info);
44
45 int cxd2880_tnrdmd_dvbt_mon_packet_error_number(struct
46                                                 cxd2880_tnrdmd
47                                                 *tnr_dmd,
48                                                 u32 *pen);
49
50 int cxd2880_tnrdmd_dvbt_mon_spectrum_sense(struct cxd2880_tnrdmd
51                                            *tnr_dmd,
52                                            enum
53                                            cxd2880_tnrdmd_spectrum_sense
54                                            *sense);
55
56 int cxd2880_tnrdmd_dvbt_mon_snr(struct cxd2880_tnrdmd *tnr_dmd,
57                                 int *snr);
58
59 int cxd2880_tnrdmd_dvbt_mon_snr_diver(struct cxd2880_tnrdmd
60                                       *tnr_dmd, int *snr,
61                                       int *snr_main, int *snr_sub);
62
63 int cxd2880_tnrdmd_dvbt_mon_sampling_offset(struct cxd2880_tnrdmd
64                                             *tnr_dmd, int *ppm);
65
66 int cxd2880_tnrdmd_dvbt_mon_sampling_offset_sub(struct
67                                                 cxd2880_tnrdmd
68                                                 *tnr_dmd,
69                                                 int *ppm);
70
71 int cxd2880_tnrdmd_dvbt_mon_ssi(struct cxd2880_tnrdmd *tnr_dmd,
72                                 u8 *ssi);
73
74 int cxd2880_tnrdmd_dvbt_mon_ssi_sub(struct cxd2880_tnrdmd *tnr_dmd,
75                                     u8 *ssi);
76
77 #endif