18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Driver for Conexant CX24113/CX24128 Tuner (Satellite) 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2007-8 Patrick Boettcher <pb@linuxtv.org> 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci#ifndef CX24113_H 98c2ecf20Sopenharmony_ci#define CX24113_H 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_cistruct dvb_frontend; 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_cistruct cx24113_config { 148c2ecf20Sopenharmony_ci u8 i2c_addr; /* 0x14 or 0x54 */ 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci u32 xtal_khz; 178c2ecf20Sopenharmony_ci}; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#if IS_REACHABLE(CONFIG_DVB_TUNER_CX24113) 208c2ecf20Sopenharmony_ciextern struct dvb_frontend *cx24113_attach(struct dvb_frontend *, 218c2ecf20Sopenharmony_ci const struct cx24113_config *config, struct i2c_adapter *i2c); 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciextern void cx24113_agc_callback(struct dvb_frontend *fe); 248c2ecf20Sopenharmony_ci#else 258c2ecf20Sopenharmony_cistatic inline struct dvb_frontend *cx24113_attach(struct dvb_frontend *fe, 268c2ecf20Sopenharmony_ci const struct cx24113_config *config, struct i2c_adapter *i2c) 278c2ecf20Sopenharmony_ci{ 288c2ecf20Sopenharmony_ci printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 298c2ecf20Sopenharmony_ci return NULL; 308c2ecf20Sopenharmony_ci} 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_cistatic inline void cx24113_agc_callback(struct dvb_frontend *fe) 338c2ecf20Sopenharmony_ci{ 348c2ecf20Sopenharmony_ci printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 358c2ecf20Sopenharmony_ci} 368c2ecf20Sopenharmony_ci#endif 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci#endif /* CX24113_H */ 39