cregit-Linux how code gets into the kernel

Release 4.7 drivers/media/tuners/xc5000.h

/*
 *  Driver for Xceive XC5000 "QAM/8VSB single chip tuner"
 *
 *  Copyright (c) 2007 Steven Toth <stoth@linuxtv.org>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#ifndef __XC5000_H__

#define __XC5000_H__

#include <linux/kconfig.h>
#include <linux/firmware.h>

struct dvb_frontend;
struct i2c_adapter;


#define XC5000A 1

#define XC5000C 2


struct xc5000_config {
	
u8   i2c_address;
	
u32  if_khz;
	
u8   radio_input;
	
u16  xtal_khz;
	
u16  output_amp;

	
int chip_id;
};

/* xc5000 callback command */

#define XC5000_TUNER_RESET		0

/* Possible Radio inputs */

#define XC5000_RADIO_NOT_CONFIGURED		0

#define XC5000_RADIO_FM1			1

#define XC5000_RADIO_FM2			2

#define XC5000_RADIO_FM1_MONO			3

/* For each bridge framework, when it attaches either analog or digital,
 * it has to store a reference back to its _core equivalent structure,
 * so that it can service the hardware by steering gpio's etc.
 * Each bridge implementation is different so cast devptr accordingly.
 * The xc5000 driver cares not for this value, other than ensuring
 * it's passed back to a bridge during tuner_callback().
 */

#if IS_REACHABLE(CONFIG_MEDIA_TUNER_XC5000)
extern struct dvb_frontend *xc5000_attach(struct dvb_frontend *fe,
					  struct i2c_adapter *i2c,
					  const struct xc5000_config *cfg);
#else

static inline struct dvb_frontend *xc5000_attach(struct dvb_frontend *fe, struct i2c_adapter *i2c, const struct xc5000_config *cfg) { printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); return NULL; }

Contributors

PersonTokensPropCommitsCommitProp
steven tothsteven toth3494.44%133.33%
harvey harrisonharvey harrison12.78%133.33%
lawrence rustlawrence rust12.78%133.33%
Total36100.00%3100.00%

#endif #endif

Overall Contributors

PersonTokensPropCommitsCommitProp
steven tothsteven toth9868.06%422.22%
devin heitmuellerdevin heitmueller1611.11%15.56%
michael krufkymichael krufky1510.42%633.33%
dmitry belimovdmitry belimov42.78%15.56%
mauro carvalho chehabmauro carvalho chehab42.78%211.11%
richard vollkommerrichard vollkommer32.08%15.56%
lawrence rustlawrence rust21.39%15.56%
harvey harrisonharvey harrison10.69%15.56%
arnd bergmannarnd bergmann10.69%15.56%
Total144100.00%18100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
{% endraw %}