linux/drivers/media/dvb-frontends/mb86a20s.h
<<
>>
Prefs
   1/*
   2 *   Fujitsu mb86a20s driver
   3 *
   4 *   Copyright (C) 2010 Mauro Carvalho Chehab <mchehab@redhat.com>
   5 *
   6 *   This program is free software; you can redistribute it and/or
   7 *   modify it under the terms of the GNU General Public License as
   8 *   published by the Free Software Foundation version 2.
   9 *
  10 *   This program is distributed in the hope that it will be useful,
  11 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  12 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13 *   General Public License for more details.
  14 */
  15
  16#ifndef MB86A20S_H
  17#define MB86A20S_H
  18
  19#include <linux/kconfig.h>
  20#include <linux/dvb/frontend.h>
  21
  22/**
  23 * struct mb86a20s_config - Define the per-device attributes of the frontend
  24 *
  25 * @fclk:               Clock frequency. If zero, assumes the default
  26 *                      (32.57142 Mhz)
  27 * @demod_address:      the demodulator's i2c address
  28 * @is_serial:          if true, TS is serial. Otherwise, TS is parallel
  29 */
  30
  31struct mb86a20s_config {
  32        u32     fclk;
  33        u8      demod_address;
  34        bool    is_serial;
  35};
  36
  37#if IS_ENABLED(CONFIG_DVB_MB86A20S)
  38extern struct dvb_frontend *mb86a20s_attach(const struct mb86a20s_config *config,
  39                                           struct i2c_adapter *i2c);
  40extern struct i2c_adapter *mb86a20s_get_tuner_i2c_adapter(struct dvb_frontend *);
  41#else
  42static inline struct dvb_frontend *mb86a20s_attach(
  43        const struct mb86a20s_config *config, struct i2c_adapter *i2c)
  44{
  45        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  46        return NULL;
  47}
  48static struct i2c_adapter *
  49        mb86a20s_get_tuner_i2c_adapter(struct dvb_frontend *fe)
  50{
  51        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
  52        return NULL;
  53}
  54#endif
  55
  56#endif /* MB86A20S */
  57