1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /** 3 * Driver for Zarlink ZL10036 DVB-S silicon tuner 4 * 5 * Copyright (C) 2006 Tino Reichardt 6 * Copyright (C) 2007-2009 Matthias Schwarzott <zzam@gentoo.de> 7 */ 8 9 #ifndef DVB_ZL10036_H 10 #define DVB_ZL10036_H 11 12 #include <linux/i2c.h> 13 #include <media/dvb_frontend.h> 14 15 struct zl10036_config { 16 u8 tuner_address; 17 int rf_loop_enable; 18 }; 19 20 #if IS_REACHABLE(CONFIG_DVB_ZL10036) 21 /** 22 * Attach a zl10036 tuner to the supplied frontend structure. 23 * 24 * @fe: Frontend to attach to. 25 * @config: zl10036_config structure. 26 * @i2c: pointer to struct i2c_adapter. 27 * return: FE pointer on success, NULL on failure. 28 */ 29 extern struct dvb_frontend *zl10036_attach(struct dvb_frontend *fe, 30 const struct zl10036_config *config, struct i2c_adapter *i2c); 31 #else 32 static inline struct dvb_frontend *zl10036_attach(struct dvb_frontend *fe, 33 const struct zl10036_config *config, struct i2c_adapter *i2c) 34 { 35 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 36 return NULL; 37 } 38 #endif 39 40 #endif /* DVB_ZL10036_H */ 41