2019-05-27 08:55:06 +02:00
/* SPDX-License-Identifier: GPL-2.0-or-later */
2015-07-28 11:33:03 -03:00
/*
* cxd2841er . h
*
* Sony CXD2441ER digital demodulator driver public definitions
*
* Copyright 2012 Sony Corporation
* Copyright ( C ) 2014 NetUP Inc .
* Copyright ( C ) 2014 Sergey Kozlov < serjk @ netup . ru >
* Copyright ( C ) 2014 Abylay Ospan < aospan @ netup . ru >
*/
# ifndef CXD2841ER_H
# define CXD2841ER_H
# include <linux/dvb/frontend.h>
2017-04-09 16:38:18 -03:00
# define CXD2841ER_USE_GATECTRL 1 /* bit 0 */
# define CXD2841ER_AUTO_IFHZ 2 /* bit 1 */
# define CXD2841ER_TS_SERIAL 4 /* bit 2 */
2017-04-09 16:38:19 -03:00
# define CXD2841ER_ASCOT 8 /* bit 3 */
2017-04-09 16:38:20 -03:00
# define CXD2841ER_EARLY_TUNE 16 /* bit 4 */
2017-04-09 16:38:21 -03:00
# define CXD2841ER_NO_WAIT_LOCK 32 /* bit 5 */
2017-04-09 16:38:22 -03:00
# define CXD2841ER_NO_AGCNEG 64 /* bit 6 */
2017-04-09 16:38:23 -03:00
# define CXD2841ER_TSBITS 128 /* bit 7 */
2017-04-09 16:38:16 -03:00
2016-03-22 19:20:34 -03:00
enum cxd2841er_xtal {
SONY_XTAL_20500 , /* 20.5 MHz */
SONY_XTAL_24000 , /* 24 MHz */
SONY_XTAL_41000 /* 41 MHz */
} ;
2015-07-28 11:33:03 -03:00
struct cxd2841er_config {
u8 i2c_addr ;
2016-03-22 19:20:34 -03:00
enum cxd2841er_xtal xtal ;
2017-04-09 16:38:15 -03:00
u32 flags ;
2015-07-28 11:33:03 -03:00
} ;
# if IS_REACHABLE(CONFIG_DVB_CXD2841ER)
extern struct dvb_frontend * cxd2841er_attach_s ( struct cxd2841er_config * cfg ,
struct i2c_adapter * i2c ) ;
2016-05-14 00:08:40 -03:00
extern struct dvb_frontend * cxd2841er_attach_t_c ( struct cxd2841er_config * cfg ,
2015-07-28 11:33:03 -03:00
struct i2c_adapter * i2c ) ;
# else
static inline struct dvb_frontend * cxd2841er_attach_s (
struct cxd2841er_config * cfg ,
struct i2c_adapter * i2c )
{
2016-03-22 19:20:34 -03:00
pr_warn ( " %s: driver disabled by Kconfig \n " , __func__ ) ;
2015-07-28 11:33:03 -03:00
return NULL ;
}
2016-05-14 00:08:40 -03:00
static inline struct dvb_frontend * cxd2841er_attach_t_c (
2016-03-22 19:20:34 -03:00
struct cxd2841er_config * cfg , struct i2c_adapter * i2c )
{
pr_warn ( " %s: driver disabled by Kconfig \n " , __func__ ) ;
2015-07-28 11:33:03 -03:00
return NULL ;
}
2016-03-22 19:20:34 -03:00
2015-07-28 11:33:03 -03:00
# endif
# endif