18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * lnbh24.h - driver for lnb supply and control ic lnbh24
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (C) 2009 NetUP Inc.
68c2ecf20Sopenharmony_ci * Copyright (C) 2009 Igor M. Liplianin <liplianin@netup.ru>
78c2ecf20Sopenharmony_ci */
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci#ifndef _LNBH24_H
108c2ecf20Sopenharmony_ci#define _LNBH24_H
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci/* system register bits */
138c2ecf20Sopenharmony_ci#define LNBH24_OLF	0x01
148c2ecf20Sopenharmony_ci#define LNBH24_OTF	0x02
158c2ecf20Sopenharmony_ci#define LNBH24_EN	0x04
168c2ecf20Sopenharmony_ci#define LNBH24_VSEL	0x08
178c2ecf20Sopenharmony_ci#define LNBH24_LLC	0x10
188c2ecf20Sopenharmony_ci#define LNBH24_TEN	0x20
198c2ecf20Sopenharmony_ci#define LNBH24_TTX	0x40
208c2ecf20Sopenharmony_ci#define LNBH24_PCL	0x80
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci#include <linux/dvb/frontend.h>
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci#if IS_REACHABLE(CONFIG_DVB_LNBP21)
258c2ecf20Sopenharmony_ci/* override_set and override_clear control which
268c2ecf20Sopenharmony_ci   system register bits (above) to always set & clear */
278c2ecf20Sopenharmony_ciextern struct dvb_frontend *lnbh24_attach(struct dvb_frontend *fe,
288c2ecf20Sopenharmony_ci				struct i2c_adapter *i2c, u8 override_set,
298c2ecf20Sopenharmony_ci				u8 override_clear, u8 i2c_addr);
308c2ecf20Sopenharmony_ci#else
318c2ecf20Sopenharmony_cistatic inline struct dvb_frontend *lnbh24_attach(struct dvb_frontend *fe,
328c2ecf20Sopenharmony_ci				struct i2c_adapter *i2c, u8 override_set,
338c2ecf20Sopenharmony_ci				u8 override_clear, u8 i2c_addr)
348c2ecf20Sopenharmony_ci{
358c2ecf20Sopenharmony_ci	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
368c2ecf20Sopenharmony_ci	return NULL;
378c2ecf20Sopenharmony_ci}
388c2ecf20Sopenharmony_ci#endif
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ci#endif
41