18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Toshiba TC90522 Demodulator
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (C) 2014 Akihiro Tsukada <tskd08@gmail.com>
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/*
98c2ecf20Sopenharmony_ci * The demod has 4 input (2xISDB-T and 2xISDB-S),
108c2ecf20Sopenharmony_ci * and provides independent sub modules for each input.
118c2ecf20Sopenharmony_ci * As the sub modules work in parallel and have the separate i2c addr's,
128c2ecf20Sopenharmony_ci * this driver treats each sub module as one demod device.
138c2ecf20Sopenharmony_ci */
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci#ifndef TC90522_H
168c2ecf20Sopenharmony_ci#define TC90522_H
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci#include <linux/i2c.h>
198c2ecf20Sopenharmony_ci#include <media/dvb_frontend.h>
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci/* I2C device types */
228c2ecf20Sopenharmony_ci#define TC90522_I2C_DEV_SAT "tc90522sat"
238c2ecf20Sopenharmony_ci#define TC90522_I2C_DEV_TER "tc90522ter"
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_cistruct tc90522_config {
268c2ecf20Sopenharmony_ci	/* [OUT] frontend returned by driver */
278c2ecf20Sopenharmony_ci	struct dvb_frontend *fe;
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	/* [OUT] tuner I2C adapter returned by driver */
308c2ecf20Sopenharmony_ci	struct i2c_adapter *tuner_i2c;
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci	/* [IN] use two separate I2C transactions for one tuner read */
338c2ecf20Sopenharmony_ci	bool split_tuner_read_i2c;
348c2ecf20Sopenharmony_ci};
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci#endif /* TC90522_H */
37