1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Silicon Labs Si2168 DVB-T/T2/C demodulator driver
4 *
5 * Copyright (C) 2014 Antti Palosaari <crope@iki.fi>
6 */
7
8#ifndef SI2168_H
9#define SI2168_H
10
11#include <linux/dvb/frontend.h>
12/**
13 * struct si2168_config - configuration parameters for si2168
14 *
15 * @fe:
16 * frontend returned by driver
17 * @i2c_adapter:
18 * tuner I2C adapter returned by driver
19 * @ts_mode:
20 * Transport Stream mode. Can be:
21 * - %SI2168_TS_PARALLEL
22 * - %SI2168_TS_SERIAL
23 * - %SI2168_TS_TRISTATE
24 * - %SI2168_TS_CLK_MANUAL
25 * @ts_clock_inv:
26 * TS clock inverted
27 * @ts_clock_gapped:
28 * TS clock gapped
29 * @spectral_inversion:
30 * Inverted spectrum
31 *
32 * Note:
33 * The I2C address of this demod is 0x64.
34 */
35struct si2168_config {
36 struct dvb_frontend **fe;
37 struct i2c_adapter **i2c_adapter;
38
39#define SI2168_TS_PARALLEL 0x06
40#define SI2168_TS_SERIAL 0x03
41#define SI2168_TS_TRISTATE 0x00
42#define SI2168_TS_CLK_MANUAL 0x20
43 u8 ts_mode;
44
45 /* Flags */
46 unsigned int ts_clock_inv:1;
47 unsigned int ts_clock_gapped:1;
48 unsigned int spectral_inversion:1;
49};
50
51#endif
52

source code of linux/drivers/media/dvb-frontends/si2168.h