xref: /linux/drivers/media/dvb-frontends/drx39xyj/drx39xxj.h (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  *  Driver for Micronas DRX39xx family (drx3933j)
4  *
5  *  Written by Devin Heitmueller <devin.heitmueller@kernellabs.com>
6  */
7 
8 #ifndef DRX39XXJ_H
9 #define DRX39XXJ_H
10 
11 #include <linux/dvb/frontend.h>
12 #include <media/dvb_frontend.h>
13 #include "drx_driver.h"
14 
15 struct drx39xxj_state {
16 	struct i2c_adapter *i2c;
17 	struct drx_demod_instance *demod;
18 	struct dvb_frontend frontend;
19 	unsigned int i2c_gate_open:1;
20 	const struct firmware *fw;
21 };
22 
23 #if IS_REACHABLE(CONFIG_DVB_DRX39XYJ)
24 struct dvb_frontend *drx39xxj_attach(struct i2c_adapter *i2c);
25 #else
26 static inline struct dvb_frontend *drx39xxj_attach(struct i2c_adapter *i2c) {
27 	return NULL;
28 };
29 #endif
30 
31 #endif /* DVB_DUMMY_FE_H */
32