/* SPDX-License-Identifier: GPL-2.0 */ /* * The Virtual DTV test driver serves as a reference DVB driver and helps * validate the existing APIs in the media subsystem. It can also aid * developers working on userspace applications. * * Copyright (C) 2020 Daniel W. S. Almeida */ #ifndef VIDTV_TUNER_H #define VIDTV_TUNER_H #include <linux/types.h> #include <media/dvb_frontend.h> #define NUM_VALID_TUNER_FREQS 8 /** * struct vidtv_tuner_config - Configuration used to init the tuner. * @fe: A pointer to the dvb_frontend structure allocated by vidtv_demod. * @mock_power_up_delay_msec: Simulate a power-up delay. * @mock_tune_delay_msec: Simulate a tune delay. * @vidtv_valid_dvb_t_freqs: The valid DVB-T frequencies to simulate. * @vidtv_valid_dvb_c_freqs: The valid DVB-C frequencies to simulate. * @vidtv_valid_dvb_s_freqs: The valid DVB-S frequencies to simulate. * @max_frequency_shift_hz: The maximum frequency shift in HZ allowed when * tuning in a channel * * The configuration used to init the tuner module, usually filled * by a bridge driver. For vidtv, this is filled by vidtv_bridge before the * tuner module is probed. */ struct vidtv_tuner_config { struct dvb_frontend *fe; u32 mock_power_up_delay_msec; u32 mock_tune_delay_msec; u32 vidtv_valid_dvb_t_freqs[NUM_VALID_TUNER_FREQS]; u32 vidtv_valid_dvb_c_freqs[NUM_VALID_TUNER_FREQS]; u32 vidtv_valid_dvb_s_freqs[NUM_VALID_TUNER_FREQS]; u8 max_frequency_shift_hz; }; #endif //VIDTV_TUNER_H