Lines Matching refs:tps

113 static inline int tps6507x_pmic_read(struct tps6507x_pmic *tps, u8 reg)
118 err = tps->mfd->read_dev(tps->mfd, reg, 1, &val);
126 static inline int tps6507x_pmic_write(struct tps6507x_pmic *tps, u8 reg, u8 val)
128 return tps->mfd->write_dev(tps->mfd, reg, 1, &val);
131 static int tps6507x_pmic_set_bits(struct tps6507x_pmic *tps, u8 reg, u8 mask)
135 mutex_lock(&tps->io_lock);
137 data = tps6507x_pmic_read(tps, reg);
139 dev_err(tps->mfd->dev, "Read from reg 0x%x failed\n", reg);
145 err = tps6507x_pmic_write(tps, reg, data);
147 dev_err(tps->mfd->dev, "Write for reg 0x%x failed\n", reg);
150 mutex_unlock(&tps->io_lock);
154 static int tps6507x_pmic_clear_bits(struct tps6507x_pmic *tps, u8 reg, u8 mask)
158 mutex_lock(&tps->io_lock);
160 data = tps6507x_pmic_read(tps, reg);
162 dev_err(tps->mfd->dev, "Read from reg 0x%x failed\n", reg);
168 err = tps6507x_pmic_write(tps, reg, data);
170 dev_err(tps->mfd->dev, "Write for reg 0x%x failed\n", reg);
173 mutex_unlock(&tps->io_lock);
177 static int tps6507x_pmic_reg_read(struct tps6507x_pmic *tps, u8 reg)
181 mutex_lock(&tps->io_lock);
183 data = tps6507x_pmic_read(tps, reg);
185 dev_err(tps->mfd->dev, "Read from reg 0x%x failed\n", reg);
187 mutex_unlock(&tps->io_lock);
191 static int tps6507x_pmic_reg_write(struct tps6507x_pmic *tps, u8 reg, u8 val)
195 mutex_lock(&tps->io_lock);
197 err = tps6507x_pmic_write(tps, reg, val);
199 dev_err(tps->mfd->dev, "Write for reg 0x%x failed\n", reg);
201 mutex_unlock(&tps->io_lock);
207 struct tps6507x_pmic *tps = rdev_get_drvdata(dev);
215 data = tps6507x_pmic_reg_read(tps, TPS6507X_REG_CON_CTRL1);
225 struct tps6507x_pmic *tps = rdev_get_drvdata(dev);
233 return tps6507x_pmic_set_bits(tps, TPS6507X_REG_CON_CTRL1, 1 << shift);
238 struct tps6507x_pmic *tps = rdev_get_drvdata(dev);
246 return tps6507x_pmic_clear_bits(tps, TPS6507X_REG_CON_CTRL1,
252 struct tps6507x_pmic *tps = rdev_get_drvdata(dev);
262 if (tps->info[rid]->defdcdc_default)
269 if (tps->info[rid]->defdcdc_default)
287 data = tps6507x_pmic_reg_read(tps, reg);
298 struct tps6507x_pmic *tps = rdev_get_drvdata(dev);
308 if (tps->info[rid]->defdcdc_default)
315 if (tps->info[rid]->defdcdc_default)
333 data = tps6507x_pmic_reg_read(tps, reg);
340 return tps6507x_pmic_reg_write(tps, reg, data);
357 struct tps6507x_pmic *tps = config->driver_data;
358 struct tps_info *info = tps->info[desc->id];
376 struct tps6507x_pmic *tps;
389 tps = devm_kzalloc(&pdev->dev, sizeof(*tps), GFP_KERNEL);
390 if (!tps)
393 mutex_init(&tps->io_lock);
396 tps->mfd = tps6507x_dev;
400 tps->info[i] = info;
407 tps->desc[i].name = info->name;
408 tps->desc[i].of_match = of_match_ptr(info->name);
409 tps->desc[i].regulators_node = of_match_ptr("regulators");
410 tps->desc[i].of_parse_cb = tps6507x_pmic_of_parse_cb;
411 tps->desc[i].id = i;
412 tps->desc[i].n_voltages = info->table_len;
413 tps->desc[i].volt_table = info->table;
414 tps->desc[i].ops = &tps6507x_pmic_ops;
415 tps->desc[i].type = REGULATOR_VOLTAGE;
416 tps->desc[i].owner = THIS_MODULE;
420 config.driver_data = tps;
422 rdev = devm_regulator_register(&pdev->dev, &tps->desc[i],
432 tps6507x_dev->pmic = tps;