mb86a20s.h (1162B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Fujitsu mb86a20s driver 4 * 5 * Copyright (C) 2010 Mauro Carvalho Chehab 6 */ 7 8#ifndef MB86A20S_H 9#define MB86A20S_H 10 11#include <linux/dvb/frontend.h> 12 13/** 14 * struct mb86a20s_config - Define the per-device attributes of the frontend 15 * 16 * @fclk: Clock frequency. If zero, assumes the default 17 * (32.57142 Mhz) 18 * @demod_address: the demodulator's i2c address 19 * @is_serial: if true, TS is serial. Otherwise, TS is parallel 20 */ 21struct mb86a20s_config { 22 u32 fclk; 23 u8 demod_address; 24 bool is_serial; 25}; 26 27#if IS_REACHABLE(CONFIG_DVB_MB86A20S) 28/** 29 * mb86a20s_attach - Attach a mb86a20s demod 30 * 31 * @config: pointer to &struct mb86a20s_config with demod configuration. 32 * @i2c: i2c adapter to use. 33 * 34 * return: FE pointer on success, NULL on failure. 35 */ 36extern struct dvb_frontend *mb86a20s_attach(const struct mb86a20s_config *config, 37 struct i2c_adapter *i2c); 38 39#else 40static inline struct dvb_frontend *mb86a20s_attach( 41 const struct mb86a20s_config *config, struct i2c_adapter *i2c) 42{ 43 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 44 return NULL; 45} 46#endif 47 48#endif /* MB86A20S */