136 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2/*3 * cxd2880_tnrdmd_dvbt2_mon.h4 * Sony CXD2880 DVB-T2/T tuner + demodulator driver5 * DVB-T2 monitor interface6 *7 * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation8 */9 10#ifndef CXD2880_TNRDMD_DVBT2_MON_H11#define CXD2880_TNRDMD_DVBT2_MON_H12 13#include "cxd2880_tnrdmd.h"14#include "cxd2880_dvbt2.h"15 16int cxd2880_tnrdmd_dvbt2_mon_sync_stat(struct cxd2880_tnrdmd17 *tnr_dmd, u8 *sync_stat,18 u8 *ts_lock_stat,19 u8 *unlock_detected);20 21int cxd2880_tnrdmd_dvbt2_mon_sync_stat_sub(struct cxd2880_tnrdmd22 *tnr_dmd,23 u8 *sync_stat,24 u8 *unlock_detected);25 26int cxd2880_tnrdmd_dvbt2_mon_carrier_offset(struct cxd2880_tnrdmd27 *tnr_dmd, int *offset);28 29int cxd2880_tnrdmd_dvbt2_mon_carrier_offset_sub(struct30 cxd2880_tnrdmd31 *tnr_dmd,32 int *offset);33 34int cxd2880_tnrdmd_dvbt2_mon_l1_pre(struct cxd2880_tnrdmd *tnr_dmd,35 struct cxd2880_dvbt2_l1pre36 *l1_pre);37 38int cxd2880_tnrdmd_dvbt2_mon_version(struct cxd2880_tnrdmd39 *tnr_dmd,40 enum cxd2880_dvbt2_version41 *ver);42 43int cxd2880_tnrdmd_dvbt2_mon_ofdm(struct cxd2880_tnrdmd *tnr_dmd,44 struct cxd2880_dvbt2_ofdm *ofdm);45 46int cxd2880_tnrdmd_dvbt2_mon_data_plps(struct cxd2880_tnrdmd47 *tnr_dmd, u8 *plp_ids,48 u8 *num_plps);49 50int cxd2880_tnrdmd_dvbt2_mon_active_plp(struct cxd2880_tnrdmd51 *tnr_dmd,52 enum53 cxd2880_dvbt2_plp_btype54 type,55 struct cxd2880_dvbt2_plp56 *plp_info);57 58int cxd2880_tnrdmd_dvbt2_mon_data_plp_error(struct cxd2880_tnrdmd59 *tnr_dmd,60 u8 *plp_error);61 62int cxd2880_tnrdmd_dvbt2_mon_l1_change(struct cxd2880_tnrdmd63 *tnr_dmd, u8 *l1_change);64 65int cxd2880_tnrdmd_dvbt2_mon_l1_post(struct cxd2880_tnrdmd66 *tnr_dmd,67 struct cxd2880_dvbt2_l1post68 *l1_post);69 70int cxd2880_tnrdmd_dvbt2_mon_bbheader(struct cxd2880_tnrdmd71 *tnr_dmd,72 enum cxd2880_dvbt2_plp_btype73 type,74 struct cxd2880_dvbt2_bbheader75 *bbheader);76 77int cxd2880_tnrdmd_dvbt2_mon_in_bandb_ts_rate(struct cxd2880_tnrdmd78 *tnr_dmd,79 enum80 cxd2880_dvbt2_plp_btype81 type,82 u32 *ts_rate_bps);83 84int cxd2880_tnrdmd_dvbt2_mon_spectrum_sense(struct cxd2880_tnrdmd85 *tnr_dmd,86 enum87 cxd2880_tnrdmd_spectrum_sense88 *sense);89 90int cxd2880_tnrdmd_dvbt2_mon_snr(struct cxd2880_tnrdmd *tnr_dmd,91 int *snr);92 93int cxd2880_tnrdmd_dvbt2_mon_snr_diver(struct cxd2880_tnrdmd94 *tnr_dmd, int *snr,95 int *snr_main,96 int *snr_sub);97 98int cxd2880_tnrdmd_dvbt2_mon_packet_error_number(struct99 cxd2880_tnrdmd100 *tnr_dmd,101 u32 *pen);102 103int cxd2880_tnrdmd_dvbt2_mon_sampling_offset(struct cxd2880_tnrdmd104 *tnr_dmd, int *ppm);105 106int cxd2880_tnrdmd_dvbt2_mon_sampling_offset_sub(struct107 cxd2880_tnrdmd108 *tnr_dmd,109 int *ppm);110 111int cxd2880_tnrdmd_dvbt2_mon_qam(struct cxd2880_tnrdmd *tnr_dmd,112 enum cxd2880_dvbt2_plp_btype type,113 enum cxd2880_dvbt2_plp_constell114 *qam);115 116int cxd2880_tnrdmd_dvbt2_mon_code_rate(struct cxd2880_tnrdmd117 *tnr_dmd,118 enum cxd2880_dvbt2_plp_btype119 type,120 enum121 cxd2880_dvbt2_plp_code_rate122 *code_rate);123 124int cxd2880_tnrdmd_dvbt2_mon_profile(struct cxd2880_tnrdmd125 *tnr_dmd,126 enum cxd2880_dvbt2_profile127 *profile);128 129int cxd2880_tnrdmd_dvbt2_mon_ssi(struct cxd2880_tnrdmd *tnr_dmd,130 u8 *ssi);131 132int cxd2880_tnrdmd_dvbt2_mon_ssi_sub(struct cxd2880_tnrdmd133 *tnr_dmd, u8 *ssi);134 135#endif136