xref: /openbmc/linux/drivers/media/tuners/tda18250.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1*c942fddfSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
2148abd3bSOlli Salonen /*
3148abd3bSOlli Salonen  * NXP TDA18250BHN silicon tuner driver
4148abd3bSOlli Salonen  *
5148abd3bSOlli Salonen  * Copyright (C) 2017 Olli Salonen <olli.salonen@iki.fi>
6148abd3bSOlli Salonen  */
7148abd3bSOlli Salonen 
8148abd3bSOlli Salonen #ifndef TDA18250_H
9148abd3bSOlli Salonen #define TDA18250_H
10148abd3bSOlli Salonen 
11148abd3bSOlli Salonen #include <linux/kconfig.h>
12148abd3bSOlli Salonen #include <media/media-device.h>
13fada1935SMauro Carvalho Chehab #include <media/dvb_frontend.h>
14148abd3bSOlli Salonen 
15148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_16MHZ 0
16148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_24MHZ 1
17148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_25MHZ 2
18148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_27MHZ 3
19148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_30MHZ 4
20148abd3bSOlli Salonen #define TDA18250_XTAL_FREQ_MAX 5
21148abd3bSOlli Salonen 
22148abd3bSOlli Salonen struct tda18250_config {
23148abd3bSOlli Salonen 	u16 if_dvbt_6;
24148abd3bSOlli Salonen 	u16 if_dvbt_7;
25148abd3bSOlli Salonen 	u16 if_dvbt_8;
26148abd3bSOlli Salonen 	u16 if_dvbc_6;
27148abd3bSOlli Salonen 	u16 if_dvbc_8;
28148abd3bSOlli Salonen 	u16 if_atsc;
29148abd3bSOlli Salonen 	u8 xtal_freq;
30148abd3bSOlli Salonen 	bool loopthrough;
31148abd3bSOlli Salonen 
32148abd3bSOlli Salonen 	/*
33148abd3bSOlli Salonen 	 * frontend
34148abd3bSOlli Salonen 	 */
35148abd3bSOlli Salonen 	struct dvb_frontend *fe;
36148abd3bSOlli Salonen 
37148abd3bSOlli Salonen #if defined(CONFIG_MEDIA_CONTROLLER)
38148abd3bSOlli Salonen 	struct media_device *mdev;
39148abd3bSOlli Salonen #endif
40148abd3bSOlli Salonen };
41148abd3bSOlli Salonen 
42148abd3bSOlli Salonen #endif
43