Lines Matching defs:isl6421

3  * isl6421.h - driver for lnb supply and control ic ISL6421
19 #include "isl6421.h"
21 struct isl6421 {
36 struct isl6421 *isl6421 = (struct isl6421 *) fe->sec_priv;
39 .addr = isl6421->i2c_addr,
41 .buf = &isl6421->config,
44 .addr = isl6421->i2c_addr,
52 isl6421->config &= ~(ISL6421_VSEL1 | ISL6421_EN1);
60 isl6421->config |= ISL6421_EN1;
64 isl6421->config |= (ISL6421_EN1 | ISL6421_VSEL1);
75 if (isl6421->is_off && !is_off)
76 isl6421->config |= ISL6421_DCL;
78 isl6421->config |= isl6421->override_or;
79 isl6421->config &= isl6421->override_and;
81 ret = i2c_transfer(isl6421->i2c, msg, 2);
88 isl6421->is_off = is_off;
95 if ((isl6421->config & ISL6421_DCL) &&
96 !(isl6421->override_or & ISL6421_DCL)) {
97 isl6421->config &= ~ISL6421_DCL;
99 ret = i2c_transfer(isl6421->i2c, msg, 2);
108 isl6421->config &= ~(ISL6421_VSEL1 | ISL6421_EN1);
109 ret = i2c_transfer(isl6421->i2c, msg, 1);
114 isl6421->is_off = true;
116 dev_warn(&isl6421->i2c->dev,
126 struct isl6421 *isl6421 = (struct isl6421 *) fe->sec_priv;
127 struct i2c_msg msg = { .addr = isl6421->i2c_addr, .flags = 0,
128 .buf = &isl6421->config,
129 .len = sizeof(isl6421->config) };
132 isl6421->config |= ISL6421_LLC1;
134 isl6421->config &= ~ISL6421_LLC1;
136 isl6421->config |= isl6421->override_or;
137 isl6421->config &= isl6421->override_and;
139 return (i2c_transfer(isl6421->i2c, &msg, 1) == 1) ? 0 : -EIO;
145 struct isl6421 *isl6421 = (struct isl6421 *) fe->sec_priv;
146 struct i2c_msg msg = { .addr = isl6421->i2c_addr, .flags = 0,
147 .buf = &isl6421->config,
148 .len = sizeof(isl6421->config) };
152 isl6421->config |= ISL6421_ENT1;
155 isl6421->config &= ~ISL6421_ENT1;
161 isl6421->config |= isl6421->override_or;
162 isl6421->config &= isl6421->override_and;
164 return (i2c_transfer(isl6421->i2c, &msg, 1) == 1) ? 0 : -EIO;
180 struct isl6421 *isl6421 = kmalloc(sizeof(struct isl6421), GFP_KERNEL);
181 if (!isl6421)
185 isl6421->config = ISL6421_ISEL1;
186 isl6421->i2c = i2c;
187 isl6421->i2c_addr = i2c_addr;
188 fe->sec_priv = isl6421;
191 isl6421->override_or = override_set;
194 isl6421->override_and = ~override_clear;
198 kfree(isl6421);
203 isl6421->is_off = true;
218 MODULE_DESCRIPTION("Driver for lnb supply and control ic isl6421");