ves1820.h (977B)
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 VES1820 - Single Chip Cable Channel Receiver driver module 4 5 Copyright (C) 1999 Convergence Integrated Media GmbH <ralph@convergence.de> 6 7*/ 8 9#ifndef VES1820_H 10#define VES1820_H 11 12#include <linux/dvb/frontend.h> 13 14#define VES1820_SELAGC_PWM 0 15#define VES1820_SELAGC_SIGNAMPERR 1 16 17struct ves1820_config 18{ 19 /* the demodulator's i2c address */ 20 u8 demod_address; 21 22 /* value of XIN to use */ 23 u32 xin; 24 25 /* does inversion need inverted? */ 26 u8 invert:1; 27 28 /* SELAGC control */ 29 u8 selagc:1; 30}; 31 32#if IS_REACHABLE(CONFIG_DVB_VES1820) 33extern struct dvb_frontend* ves1820_attach(const struct ves1820_config* config, 34 struct i2c_adapter* i2c, u8 pwm); 35#else 36static inline struct dvb_frontend* ves1820_attach(const struct ves1820_config* config, 37 struct i2c_adapter* i2c, u8 pwm) 38{ 39 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 40 return NULL; 41} 42#endif // CONFIG_DVB_VES1820 43 44#endif // VES1820_H