0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef CXD2880_TNRDMD_DVBT2_H
0011 #define CXD2880_TNRDMD_DVBT2_H
0012
0013 #include "cxd2880_common.h"
0014 #include "cxd2880_tnrdmd.h"
0015
0016 enum cxd2880_tnrdmd_dvbt2_tune_info {
0017 CXD2880_TNRDMD_DVBT2_TUNE_INFO_OK,
0018 CXD2880_TNRDMD_DVBT2_TUNE_INFO_INVALID_PLP_ID
0019 };
0020
0021 struct cxd2880_dvbt2_tune_param {
0022 u32 center_freq_khz;
0023 enum cxd2880_dtv_bandwidth bandwidth;
0024 u16 data_plp_id;
0025 enum cxd2880_dvbt2_profile profile;
0026 enum cxd2880_tnrdmd_dvbt2_tune_info tune_info;
0027 };
0028
0029 #define CXD2880_DVBT2_TUNE_PARAM_PLPID_AUTO 0xffff
0030
0031 int cxd2880_tnrdmd_dvbt2_tune1(struct cxd2880_tnrdmd *tnr_dmd,
0032 struct cxd2880_dvbt2_tune_param
0033 *tune_param);
0034
0035 int cxd2880_tnrdmd_dvbt2_tune2(struct cxd2880_tnrdmd *tnr_dmd,
0036 struct cxd2880_dvbt2_tune_param
0037 *tune_param);
0038
0039 int cxd2880_tnrdmd_dvbt2_sleep_setting(struct cxd2880_tnrdmd
0040 *tnr_dmd);
0041
0042 int cxd2880_tnrdmd_dvbt2_check_demod_lock(struct cxd2880_tnrdmd
0043 *tnr_dmd,
0044 enum
0045 cxd2880_tnrdmd_lock_result
0046 *lock);
0047
0048 int cxd2880_tnrdmd_dvbt2_check_ts_lock(struct cxd2880_tnrdmd
0049 *tnr_dmd,
0050 enum
0051 cxd2880_tnrdmd_lock_result
0052 *lock);
0053
0054 int cxd2880_tnrdmd_dvbt2_set_plp_cfg(struct cxd2880_tnrdmd
0055 *tnr_dmd, u8 auto_plp,
0056 u8 plp_id);
0057
0058 int cxd2880_tnrdmd_dvbt2_diver_fef_setting(struct cxd2880_tnrdmd
0059 *tnr_dmd);
0060
0061 int cxd2880_tnrdmd_dvbt2_check_l1post_valid(struct cxd2880_tnrdmd
0062 *tnr_dmd,
0063 u8 *l1_post_valid);
0064
0065 #endif