18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci	NxtWave Communications - NXT6000 demodulator driver
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci    Copyright (C) 2002-2003 Florian Schirmer <jolt@tuxbox.org>
68c2ecf20Sopenharmony_ci    Copyright (C) 2003 Paul Andreassen <paul@andreassen.com.au>
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci*/
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#ifndef NXT6000_H
118c2ecf20Sopenharmony_ci#define NXT6000_H
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci#include <linux/dvb/frontend.h>
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_cistruct nxt6000_config
168c2ecf20Sopenharmony_ci{
178c2ecf20Sopenharmony_ci	/* the demodulator's i2c address */
188c2ecf20Sopenharmony_ci	u8 demod_address;
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci	/* should clock inversion be used? */
218c2ecf20Sopenharmony_ci	u8 clock_inversion:1;
228c2ecf20Sopenharmony_ci};
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci#if IS_REACHABLE(CONFIG_DVB_NXT6000)
258c2ecf20Sopenharmony_ciextern struct dvb_frontend* nxt6000_attach(const struct nxt6000_config* config,
268c2ecf20Sopenharmony_ci					   struct i2c_adapter* i2c);
278c2ecf20Sopenharmony_ci#else
288c2ecf20Sopenharmony_cistatic inline struct dvb_frontend* nxt6000_attach(const struct nxt6000_config* config,
298c2ecf20Sopenharmony_ci					   struct i2c_adapter* i2c)
308c2ecf20Sopenharmony_ci{
318c2ecf20Sopenharmony_ci	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
328c2ecf20Sopenharmony_ci	return NULL;
338c2ecf20Sopenharmony_ci}
348c2ecf20Sopenharmony_ci#endif // CONFIG_DVB_NXT6000
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci#endif // NXT6000_H
37