1 /* 2 * lnbh24.h - driver for lnb supply and control ic lnbh24 3 * 4 * Copyright (C) 2009 NetUP Inc. 5 * Copyright (C) 2009 Igor M. Liplianin <liplianin@netup.ru> 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * 16 * GNU General Public License for more details. 17 */ 18 19 #ifndef _LNBH24_H 20 #define _LNBH24_H 21 22 /* system register bits */ 23 #define LNBH24_OLF 0x01 24 #define LNBH24_OTF 0x02 25 #define LNBH24_EN 0x04 26 #define LNBH24_VSEL 0x08 27 #define LNBH24_LLC 0x10 28 #define LNBH24_TEN 0x20 29 #define LNBH24_TTX 0x40 30 #define LNBH24_PCL 0x80 31 32 #include <linux/dvb/frontend.h> 33 34 #if IS_REACHABLE(CONFIG_DVB_LNBP21) 35 /* override_set and override_clear control which 36 system register bits (above) to always set & clear */ 37 extern struct dvb_frontend *lnbh24_attach(struct dvb_frontend *fe, 38 struct i2c_adapter *i2c, u8 override_set, 39 u8 override_clear, u8 i2c_addr); 40 #else 41 static inline struct dvb_frontend *lnbh24_attach(struct dvb_frontend *fe, 42 struct i2c_adapter *i2c, u8 override_set, 43 u8 override_clear, u8 i2c_addr) 44 { 45 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 46 return NULL; 47 } 48 #endif 49 50 #endif 51