Lines Matching defs:vreg

189 static int rpm_reg_write(struct qcom_rpm_reg *vreg,
196 vreg->val[req->word] &= ~req->mask;
197 vreg->val[req->word] |= value << req->shift;
199 return qcom_rpm_write(vreg->rpm,
201 vreg->resource,
202 vreg->val,
203 vreg->parts->request_len);
209 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
210 const struct rpm_reg_parts *parts = vreg->parts;
222 mutex_lock(&vreg->lock);
223 if (vreg->is_enabled)
224 ret = rpm_reg_write(vreg, req, uV / 1000);
227 vreg->uV = uV;
228 mutex_unlock(&vreg->lock);
236 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
237 const struct rpm_reg_parts *parts = vreg->parts;
249 mutex_lock(&vreg->lock);
250 if (vreg->is_enabled)
251 ret = rpm_reg_write(vreg, req, uV);
254 vreg->uV = uV;
255 mutex_unlock(&vreg->lock);
262 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
264 return vreg->uV;
269 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
270 const struct rpm_reg_parts *parts = vreg->parts;
277 mutex_lock(&vreg->lock);
278 ret = rpm_reg_write(vreg, req, vreg->uV / 1000);
280 vreg->is_enabled = 1;
281 mutex_unlock(&vreg->lock);
288 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
289 const struct rpm_reg_parts *parts = vreg->parts;
296 mutex_lock(&vreg->lock);
297 ret = rpm_reg_write(vreg, req, vreg->uV);
299 vreg->is_enabled = 1;
300 mutex_unlock(&vreg->lock);
307 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
308 const struct rpm_reg_parts *parts = vreg->parts;
315 mutex_lock(&vreg->lock);
316 ret = rpm_reg_write(vreg, req, 1);
318 vreg->is_enabled = 1;
319 mutex_unlock(&vreg->lock);
326 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
327 const struct rpm_reg_parts *parts = vreg->parts;
334 mutex_lock(&vreg->lock);
335 ret = rpm_reg_write(vreg, req, 0);
337 vreg->is_enabled = 0;
338 mutex_unlock(&vreg->lock);
345 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
346 const struct rpm_reg_parts *parts = vreg->parts;
353 mutex_lock(&vreg->lock);
354 ret = rpm_reg_write(vreg, req, 0);
356 vreg->is_enabled = 0;
357 mutex_unlock(&vreg->lock);
364 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
365 const struct rpm_reg_parts *parts = vreg->parts;
372 mutex_lock(&vreg->lock);
373 ret = rpm_reg_write(vreg, req, 0);
375 vreg->is_enabled = 0;
376 mutex_unlock(&vreg->lock);
383 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
385 return vreg->is_enabled;
390 struct qcom_rpm_reg *vreg = rdev_get_drvdata(rdev);
391 const struct rpm_reg_parts *parts = vreg->parts;
403 mutex_lock(&vreg->lock);
404 ret = rpm_reg_write(vreg, req, load_mA);
405 mutex_unlock(&vreg->lock);
630 static int rpm_reg_set(struct qcom_rpm_reg *vreg,
637 vreg->val[req->word] &= ~req->mask;
638 vreg->val[req->word] |= value << req->shift;
645 struct qcom_rpm_reg *vreg)
667 rpm_reg_set(vreg, &vreg->parts->freq, i + 1);
680 struct qcom_rpm_reg *vreg = config->driver_data;
690 ret = rpm_reg_set(vreg, &vreg->parts->pd, 1);
697 if (vreg->parts->freq.mask) {
698 ret = rpm_reg_of_parse_freq(dev, node, vreg);
703 if (vreg->parts->pm.mask) {
707 ret = rpm_reg_set(vreg, &vreg->parts->pm, pwm);
714 if (vreg->parts->fm.mask) {
741 if (FORCE_MODE_IS_2_BITS(vreg))
747 if (vreg->supports_force_mode_auto)
751 if (vreg->supports_force_mode_bypass)
761 ret = rpm_reg_set(vreg, &vreg->parts->fm, force_mode);
943 struct qcom_rpm_reg *vreg;
959 vreg = devm_kmalloc(&pdev->dev, sizeof(*vreg), GFP_KERNEL);
960 if (!vreg)
963 memcpy(vreg, reg->template, sizeof(*vreg));
964 mutex_init(&vreg->lock);
966 vreg->dev = &pdev->dev;
967 vreg->resource = reg->resource;
968 vreg->rpm = rpm;
970 vreg->desc.id = -1;
971 vreg->desc.owner = THIS_MODULE;
972 vreg->desc.type = REGULATOR_VOLTAGE;
973 vreg->desc.name = reg->name;
974 vreg->desc.supply_name = reg->supply;
975 vreg->desc.of_match = reg->name;
976 vreg->desc.of_parse_cb = rpm_reg_of_parse;
979 config.driver_data = vreg;
980 rdev = devm_regulator_register(&pdev->dev, &vreg->desc, &config);