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
78