1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 Driver for STV0297 demodulator 4 5 Copyright (C) 2003-2004 Dennis Noermann <dennis.noermann@noernet.de> 6 7 */ 8 9 #ifndef STV0297_H 10 #define STV0297_H 11 12 #include <linux/dvb/frontend.h> 13 #include <media/dvb_frontend.h> 14 15 struct stv0297_config 16 { 17 /* the demodulator's i2c address */ 18 u8 demod_address; 19 20 /* inittab - array of pairs of values. 21 * First of each pair is the register, second is the value. 22 * List should be terminated with an 0xff, 0xff pair. 23 */ 24 u8* inittab; 25 26 /* does the "inversion" need inverted? */ 27 u8 invert:1; 28 29 /* set to 1 if the device requires an i2c STOP during reading */ 30 u8 stop_during_read:1; 31 }; 32 33 #if IS_REACHABLE(CONFIG_DVB_STV0297) 34 extern struct dvb_frontend* stv0297_attach(const struct stv0297_config* config, 35 struct i2c_adapter* i2c); 36 #else 37 static inline struct dvb_frontend* stv0297_attach(const struct stv0297_config* config, 38 struct i2c_adapter* i2c) 39 { 40 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 41 return NULL; 42 } 43 #endif // CONFIG_DVB_STV0297 44 45 #endif // STV0297_H 46