linux/drivers/media/dvb-frontends/ves1820.h
<<
>>
Prefs
   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
  45