linux/drivers/media/tuners/tda18271-priv.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
    tda18271-priv.h - private header for the NXP TDA18271 silicon tuner

    Copyright (C) 2007, 2008 Michael Krufky <[email protected]>

*/

#ifndef __TDA18271_PRIV_H__
#define __TDA18271_PRIV_H__

#define pr_fmt(fmt)

#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/mutex.h>
#include "tuner-i2c.h"
#include "tda18271.h"

#define R_ID
#define R_TM
#define R_PL
#define R_EP1
#define R_EP2
#define R_EP3
#define R_EP4
#define R_EP5
#define R_CPD
#define R_CD1
#define R_CD2
#define R_CD3
#define R_MPD
#define R_MD1
#define R_MD2
#define R_MD3
#define R_EB1
#define R_EB2
#define R_EB3
#define R_EB4
#define R_EB5
#define R_EB6
#define R_EB7
#define R_EB8
#define R_EB9
#define R_EB10
#define R_EB11
#define R_EB12
#define R_EB13
#define R_EB14
#define R_EB15
#define R_EB16
#define R_EB17
#define R_EB18
#define R_EB19
#define R_EB20
#define R_EB21
#define R_EB22
#define R_EB23

#define TDA18271_NUM_REGS

/*---------------------------------------------------------------------*/

struct tda18271_rf_tracking_filter_cal {};

enum tda18271_pll {};

struct tda18271_map_layout;

enum tda18271_ver {};

struct tda18271_priv {};

/*---------------------------------------------------------------------*/

extern int tda18271_debug;

#define DBG_INFO
#define DBG_MAP
#define DBG_REG
#define DBG_ADV
#define DBG_CAL

__attribute__((format(printf, 4, 5)))
void _tda_printk(struct tda18271_priv *state, const char *level,
		 const char *func, const char *fmt, ...);

#define tda_printk(st, lvl, fmt, arg...)

#define tda_dprintk(st, lvl, fmt, arg...)

#define tda_info(fmt, arg...)
#define tda_warn(fmt, arg...)
#define tda_err(fmt, arg...)
#define tda_dbg(fmt, arg...)
#define tda_map(fmt, arg...)
#define tda_reg(fmt, arg...)
#define tda_cal(fmt, arg...)

#define tda_fail(ret)

/*---------------------------------------------------------------------*/

enum tda18271_map_type {};

extern int tda18271_lookup_pll_map(struct dvb_frontend *fe,
				   enum tda18271_map_type map_type,
				   u32 *freq, u8 *post_div, u8 *div);
extern int tda18271_lookup_map(struct dvb_frontend *fe,
			       enum tda18271_map_type map_type,
			       u32 *freq, u8 *val);

extern int tda18271_lookup_thermometer(struct dvb_frontend *fe);

extern int tda18271_lookup_rf_band(struct dvb_frontend *fe,
				   u32 *freq, u8 *rf_band);

extern int tda18271_lookup_cid_target(struct dvb_frontend *fe,
				      u32 *freq, u8 *cid_target,
				      u16 *count_limit);

extern int tda18271_assign_map_layout(struct dvb_frontend *fe);

/*---------------------------------------------------------------------*/

extern int tda18271_read_regs(struct dvb_frontend *fe);
extern int tda18271_read_extended(struct dvb_frontend *fe);
extern int tda18271_write_regs(struct dvb_frontend *fe, int idx, int len);
extern int tda18271_init_regs(struct dvb_frontend *fe);

extern int tda18271_charge_pump_source(struct dvb_frontend *fe,
				       enum tda18271_pll pll, int force);
extern int tda18271_set_standby_mode(struct dvb_frontend *fe,
				     int sm, int sm_lt, int sm_xt);

extern int tda18271_calc_main_pll(struct dvb_frontend *fe, u32 freq);
extern int tda18271_calc_cal_pll(struct dvb_frontend *fe, u32 freq);

extern int tda18271_calc_bp_filter(struct dvb_frontend *fe, u32 *freq);
extern int tda18271_calc_km(struct dvb_frontend *fe, u32 *freq);
extern int tda18271_calc_rf_band(struct dvb_frontend *fe, u32 *freq);
extern int tda18271_calc_gain_taper(struct dvb_frontend *fe, u32 *freq);
extern int tda18271_calc_ir_measure(struct dvb_frontend *fe, u32 *freq);
extern int tda18271_calc_rf_cal(struct dvb_frontend *fe, u32 *freq);

#endif /* __TDA18271_PRIV_H__ */