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