xref: /linux/drivers/media/dvb-frontends/cxd2880/cxd2880.h (revision c13aca79ff3c4af5fd31a5b2743a90eba6e36a26)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * cxd2880.h
4  * Sony CXD2880 DVB-T2/T tuner + demodulator driver public definitions
5  *
6  * Copyright (C) 2016, 2017, 2018 Sony Semiconductor Solutions Corporation
7  */
8 
9 #ifndef CXD2880_H
10 #define CXD2880_H
11 
12 struct cxd2880_config {
13 	struct spi_device *spi;
14 	struct mutex *spi_mutex; /* For SPI access exclusive control */
15 };
16 
17 #if IS_REACHABLE(CONFIG_DVB_CXD2880)
18 extern struct dvb_frontend *cxd2880_attach(struct dvb_frontend *fe,
19 					struct cxd2880_config *cfg);
20 #else
cxd2880_attach(struct dvb_frontend * fe,struct cxd2880_config * cfg)21 static inline struct dvb_frontend *cxd2880_attach(struct dvb_frontend *fe,
22 					struct cxd2880_config *cfg)
23 {
24 	pr_warn("%s: driver disabled by Kconfig\n", __func__);
25 	return NULL;
26 }
27 #endif /* CONFIG_DVB_CXD2880 */
28 
29 #endif /* CXD2880_H */
30