1/* 2 * lnbp22.h - driver for lnb supply and control ic lnbp22 3 * 4 * Copyright (C) 2006 Dominik Kuhlen 5 * Based on lnbp21.h 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * To obtain the license, point your browser to 19 * http://www.gnu.org/copyleft/gpl.html 20 * 21 * 22 * the project's page is at https://linuxtv.org 23 */ 24 25#ifndef _LNBP22_H 26#define _LNBP22_H 27 28/* Enable */ 29#define LNBP22_EN 0x10 30/* Voltage selection */ 31#define LNBP22_VSEL 0x02 32/* Plus 1 Volt Bit */ 33#define LNBP22_LLC 0x01 34 35#include <linux/dvb/frontend.h> 36 37#if IS_REACHABLE(CONFIG_DVB_LNBP22) 38/* 39 * override_set and override_clear control which system register bits (above) 40 * to always set & clear 41 */ 42extern struct dvb_frontend *lnbp22_attach(struct dvb_frontend *fe, 43 struct i2c_adapter *i2c); 44#else 45static inline struct dvb_frontend *lnbp22_attach(struct dvb_frontend *fe, 46 struct i2c_adapter *i2c) 47{ 48 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 49 return NULL; 50} 51#endif /* CONFIG_DVB_LNBP22 */ 52 53#endif /* _LNBP22_H */ 54