linux/drivers/media/dvb-frontends/stv0367.h
<<
>>
Prefs
   1/*
   2 * stv0367.h
   3 *
   4 * Driver for ST STV0367 DVB-T & DVB-C demodulator IC.
   5 *
   6 * Copyright (C) ST Microelectronics.
   7 * Copyright (C) 2010,2011 NetUP Inc.
   8 * Copyright (C) 2010,2011 Igor M. Liplianin <liplianin@netup.ru>
   9 *
  10 * This program is free software; you can redistribute it and/or modify
  11 * it under the terms of the GNU General Public License as published by
  12 * the Free Software Foundation; either version 2 of the License, or
  13 * (at your option) any later version.
  14 *
  15 * This program is distributed in the hope that it will be useful,
  16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
  17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  18 *
  19 * GNU General Public License for more details.
  20 */
  21
  22#ifndef STV0367_H
  23#define STV0367_H
  24
  25#include <linux/dvb/frontend.h>
  26#include <media/dvb_frontend.h>
  27
  28#define STV0367_ICSPEED_53125   53125000
  29#define STV0367_ICSPEED_58000   58000000
  30
  31struct stv0367_config {
  32        u8 demod_address;
  33        u32 xtal;
  34        u32 if_khz;/*4500*/
  35        int if_iq_mode;
  36        int ts_mode;
  37        int clk_pol;
  38};
  39
  40#if IS_REACHABLE(CONFIG_DVB_STV0367)
  41extern struct
  42dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
  43                                        struct i2c_adapter *i2c);
  44extern struct
  45dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
  46                                        struct i2c_adapter *i2c);
  47extern struct
  48dvb_frontend *stv0367ddb_attach(const struct stv0367_config *config,
  49                                        struct i2c_adapter *i2c);
  50#else
  51static inline struct
  52dvb_frontend *stv0367ter_attach(const struct stv0367_config *config,
  53                                        struct i2c_adapter *i2c)
  54{
  55        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  56        return NULL;
  57}
  58static inline struct
  59dvb_frontend *stv0367cab_attach(const struct stv0367_config *config,
  60                                        struct i2c_adapter *i2c)
  61{
  62        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  63        return NULL;
  64}
  65static inline struct
  66dvb_frontend *stv0367ddb_attach(const struct stv0367_config *config,
  67                                        struct i2c_adapter *i2c)
  68{
  69        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  70        return NULL;
  71}
  72#endif
  73
  74#endif
  75