2019-05-19 21:51:31 +08:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
2013-04-06 01:35:18 +08:00
|
|
|
/*
|
|
|
|
* Elonics R820T silicon tuner driver
|
|
|
|
*
|
|
|
|
* Copyright (C) 2012 Antti Palosaari <crope@iki.fi>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef R820T_H
|
|
|
|
#define R820T_H
|
|
|
|
|
2017-12-29 02:03:51 +08:00
|
|
|
#include <media/dvb_frontend.h>
|
2013-04-06 01:35:18 +08:00
|
|
|
|
|
|
|
enum r820t_chip {
|
|
|
|
CHIP_R820T,
|
2013-04-11 02:54:46 +08:00
|
|
|
CHIP_R620D,
|
|
|
|
CHIP_R828D,
|
|
|
|
CHIP_R828,
|
2013-04-06 01:35:18 +08:00
|
|
|
CHIP_R828S,
|
|
|
|
CHIP_R820C,
|
|
|
|
};
|
|
|
|
|
|
|
|
struct r820t_config {
|
|
|
|
u8 i2c_addr; /* 0x34 */
|
|
|
|
u32 xtal;
|
|
|
|
enum r820t_chip rafael_chip;
|
|
|
|
unsigned max_i2c_msg_len;
|
2013-04-10 19:51:45 +08:00
|
|
|
bool use_diplexer;
|
2013-04-26 02:40:21 +08:00
|
|
|
bool use_predetect;
|
2013-04-06 01:35:18 +08:00
|
|
|
};
|
|
|
|
|
2015-02-19 01:12:42 +08:00
|
|
|
#if IS_REACHABLE(CONFIG_MEDIA_TUNER_R820T)
|
2013-04-06 01:35:18 +08:00
|
|
|
struct dvb_frontend *r820t_attach(struct dvb_frontend *fe,
|
|
|
|
struct i2c_adapter *i2c,
|
|
|
|
const struct r820t_config *cfg);
|
|
|
|
#else
|
|
|
|
static inline struct dvb_frontend *r820t_attach(struct dvb_frontend *fe,
|
|
|
|
struct i2c_adapter *i2c,
|
|
|
|
const struct r820t_config *cfg)
|
|
|
|
{
|
|
|
|
pr_warn("%s: driver disabled by Kconfig\n", __func__);
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|