Lines Matching refs:vreg
4260 static int ufshcd_config_vreg_load(struct device *dev, struct ufs_vreg *vreg, in ufshcd_config_vreg_load() argument
4265 if (!vreg) in ufshcd_config_vreg_load()
4268 ret = regulator_set_load(vreg->reg, ua); in ufshcd_config_vreg_load()
4271 __func__, vreg->name, ua, ret); in ufshcd_config_vreg_load()
4278 struct ufs_vreg *vreg) in ufshcd_config_vreg_lpm() argument
4280 return ufshcd_config_vreg_load(hba->dev, vreg, UFS_VREG_LPM_LOAD_UA); in ufshcd_config_vreg_lpm()
4284 struct ufs_vreg *vreg) in ufshcd_config_vreg_hpm() argument
4286 return ufshcd_config_vreg_load(hba->dev, vreg, vreg->max_uA); in ufshcd_config_vreg_hpm()
4290 struct ufs_vreg *vreg, bool on) in ufshcd_config_vreg() argument
4293 struct regulator *reg = vreg->reg; in ufshcd_config_vreg()
4294 const char *name = vreg->name; in ufshcd_config_vreg()
4297 BUG_ON(!vreg); in ufshcd_config_vreg()
4300 min_uV = on ? vreg->min_uV : 0; in ufshcd_config_vreg()
4301 ret = regulator_set_voltage(reg, min_uV, vreg->max_uV); in ufshcd_config_vreg()
4308 uA_load = on ? vreg->max_uA : 0; in ufshcd_config_vreg()
4309 ret = ufshcd_config_vreg_load(dev, vreg, uA_load); in ufshcd_config_vreg()
4317 static int ufshcd_enable_vreg(struct device *dev, struct ufs_vreg *vreg) in ufshcd_enable_vreg() argument
4321 if (!vreg || vreg->enabled) in ufshcd_enable_vreg()
4324 ret = ufshcd_config_vreg(dev, vreg, true); in ufshcd_enable_vreg()
4326 ret = regulator_enable(vreg->reg); in ufshcd_enable_vreg()
4329 vreg->enabled = true; in ufshcd_enable_vreg()
4332 __func__, vreg->name, ret); in ufshcd_enable_vreg()
4337 static int ufshcd_disable_vreg(struct device *dev, struct ufs_vreg *vreg) in ufshcd_disable_vreg() argument
4341 if (!vreg || !vreg->enabled) in ufshcd_disable_vreg()
4344 ret = regulator_disable(vreg->reg); in ufshcd_disable_vreg()
4348 ufshcd_config_vreg(dev, vreg, false); in ufshcd_disable_vreg()
4349 vreg->enabled = false; in ufshcd_disable_vreg()
4352 __func__, vreg->name, ret); in ufshcd_disable_vreg()
4398 static int ufshcd_get_vreg(struct device *dev, struct ufs_vreg *vreg) in ufshcd_get_vreg() argument
4402 if (!vreg) in ufshcd_get_vreg()
4405 vreg->reg = devm_regulator_get(dev, vreg->name); in ufshcd_get_vreg()
4406 if (IS_ERR(vreg->reg)) { in ufshcd_get_vreg()
4407 ret = PTR_ERR(vreg->reg); in ufshcd_get_vreg()
4409 __func__, vreg->name, ret); in ufshcd_get_vreg()