cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

si21xx.h (830B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef SI21XX_H
      3#define SI21XX_H
      4
      5#include <linux/dvb/frontend.h>
      6#include <media/dvb_frontend.h>
      7
      8struct si21xx_config {
      9	/* the demodulator's i2c address */
     10	u8 demod_address;
     11
     12	/* minimum delay before retuning */
     13	int min_delay_ms;
     14};
     15
     16#if IS_REACHABLE(CONFIG_DVB_SI21XX)
     17extern struct dvb_frontend *si21xx_attach(const struct si21xx_config *config,
     18						struct i2c_adapter *i2c);
     19#else
     20static inline struct dvb_frontend *si21xx_attach(
     21		const struct si21xx_config *config, struct i2c_adapter *i2c)
     22{
     23	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
     24	return NULL;
     25}
     26#endif
     27
     28static inline int si21xx_writeregister(struct dvb_frontend *fe, u8 reg, u8 val)
     29{
     30	int r = 0;
     31	u8 buf[] = {reg, val};
     32	if (fe->ops.write)
     33		r = fe->ops.write(fe, buf, 2);
     34	return r;
     35}
     36
     37#endif