0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef __ISL_6423_H
0010 #define __ISL_6423_H
0011
0012 #include <linux/dvb/frontend.h>
0013
0014 enum isl6423_current {
0015 SEC_CURRENT_275m = 0,
0016 SEC_CURRENT_515m,
0017 SEC_CURRENT_635m,
0018 SEC_CURRENT_800m,
0019 };
0020
0021 enum isl6423_curlim {
0022 SEC_CURRENT_LIM_ON = 1,
0023 SEC_CURRENT_LIM_OFF
0024 };
0025
0026 struct isl6423_config {
0027 enum isl6423_current current_max;
0028 enum isl6423_curlim curlim;
0029 u8 addr;
0030 u8 mod_extern;
0031 };
0032
0033 #if IS_REACHABLE(CONFIG_DVB_ISL6423)
0034
0035
0036 extern struct dvb_frontend *isl6423_attach(struct dvb_frontend *fe,
0037 struct i2c_adapter *i2c,
0038 const struct isl6423_config *config);
0039
0040 #else
0041 static inline struct dvb_frontend *isl6423_attach(struct dvb_frontend *fe,
0042 struct i2c_adapter *i2c,
0043 const struct isl6423_config *config)
0044 {
0045 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
0046 return NULL;
0047 }
0048
0049 #endif
0050
0051 #endif