• Home
  • Raw
  • Download

Lines Matching +full:vsel +full:- +full:state +full:- +full:high

97 /* dump registers in regmap-debugfs */
165 ret = regmap_read(lp->regmap, addr, &val); in lp872x_read_byte()
167 dev_err(lp->dev, "failed to read 0x%.2x\n", addr); in lp872x_read_byte()
177 return regmap_write(lp->regmap, addr, data); in lp872x_write_byte()
183 return regmap_update_bits(lp->regmap, addr, mask, data); in lp872x_update_bits()
188 enum lp872x_id chip = lp->chipid; in lp872x_get_timestep_usec()
208 return -EINVAL; in lp872x_get_timestep_usec()
217 return -EINVAL; in lp872x_get_timestep_usec()
238 addr = LP872X_LDO1_VOUT + rid - LP8725_ID_BASE; in lp872x_regulator_enable_time()
244 return -EINVAL; in lp872x_regulator_enable_time()
259 enum lp872x_dvs_state state; in lp872x_set_dvs() local
261 state = dvs_sel == SEL_V1 ? DVS_HIGH : DVS_LOW; in lp872x_set_dvs()
262 gpio_set_value(gpio, state); in lp872x_set_dvs()
263 lp->dvs_pin = state; in lp872x_set_dvs()
277 addr = (lp->dvs_pin == DVS_HIGH) ? in lp872x_select_buck_vout_addr()
291 addr = (lp->dvs_pin == DVS_HIGH) ? in lp872x_select_buck_vout_addr()
326 struct lp872x_dvs *dvs = lp->pdata ? lp->pdata->dvs : NULL; in lp872x_buck_set_voltage_sel()
328 if (dvs && gpio_is_valid(dvs->gpio)) in lp872x_buck_set_voltage_sel()
329 lp872x_set_dvs(lp, dvs->vsel, dvs->gpio); in lp872x_buck_set_voltage_sel()
333 return -EINVAL; in lp872x_buck_set_voltage_sel()
347 return -EINVAL; in lp872x_buck_get_voltage_sel()
372 return -EINVAL; in lp8725_buck_set_current_limit()
375 for (i = ARRAY_SIZE(lp8725_buck_uA) - 1; i >= 0; i--) { in lp8725_buck_set_current_limit()
383 return -EINVAL; in lp8725_buck_set_current_limit()
401 return -EINVAL; in lp8725_buck_get_current_limit()
411 lp8725_buck_uA[val] : -EINVAL; in lp8725_buck_get_current_limit()
437 return -EINVAL; in lp872x_buck_set_mode()
445 return -EINVAL; in lp872x_buck_set_mode()
471 return -EINVAL; in lp872x_buck_get_mode()
733 struct lp872x_dvs *dvs = lp->pdata ? lp->pdata->dvs : NULL; in lp872x_init_dvs()
741 gpio = dvs->gpio; in lp872x_init_dvs()
745 pinstate = dvs->init_state; in lp872x_init_dvs()
746 ret = devm_gpio_request_one(lp->dev, gpio, pinstate, "LP872X DVS"); in lp872x_init_dvs()
748 dev_err(lp->dev, "gpio request err: %d\n", ret); in lp872x_init_dvs()
752 lp->dvs_pin = pinstate; in lp872x_init_dvs()
757 return lp872x_update_bits(lp, LP872X_GENERAL_CFG, mask[lp->chipid], in lp872x_init_dvs()
758 default_dvs_mode[lp->chipid]); in lp872x_init_dvs()
765 if (!lp->pdata) in lp872x_hw_enable()
766 return -EINVAL; in lp872x_hw_enable()
768 gpio = lp->pdata->enable_gpio; in lp872x_hw_enable()
772 /* Always set enable GPIO high. */ in lp872x_hw_enable()
773 ret = devm_gpio_request_one(lp->dev, gpio, GPIOF_OUT_INIT_HIGH, "LP872X EN"); in lp872x_hw_enable()
775 dev_err(lp->dev, "gpio request err: %d\n", ret); in lp872x_hw_enable()
780 if (lp->chipid == LP8720) in lp872x_hw_enable()
790 struct lp872x_platform_data *pdata = lp->pdata; in lp872x_config()
793 if (!pdata || !pdata->update_config) in lp872x_config()
796 ret = lp872x_write_byte(lp, LP872X_GENERAL_CFG, pdata->general_config); in lp872x_config()
807 struct lp872x_platform_data *pdata = lp->pdata; in lp872x_find_regulator_init_data()
813 for (i = 0; i < lp->num_regulators; i++) { in lp872x_find_regulator_init_data()
814 if (pdata->regulator_data[i].id == id) in lp872x_find_regulator_init_data()
815 return pdata->regulator_data[i].init_data; in lp872x_find_regulator_init_data()
828 for (i = 0; i < lp->num_regulators; i++) { in lp872x_regulator_register()
829 desc = (lp->chipid == LP8720) ? &lp8720_regulator_desc[i] : in lp872x_regulator_register()
832 cfg.dev = lp->dev; in lp872x_regulator_register()
833 cfg.init_data = lp872x_find_regulator_init_data(desc->id, lp); in lp872x_regulator_register()
835 cfg.regmap = lp->regmap; in lp872x_regulator_register()
837 rdev = devm_regulator_register(lp->dev, desc, &cfg); in lp872x_regulator_register()
839 dev_err(lp->dev, "regulator register err"); in lp872x_regulator_register()
881 struct device_node *np = dev->of_node; in lp872x_populate_pdata_from_dt()
891 return ERR_PTR(-ENOMEM); in lp872x_populate_pdata_from_dt()
893 of_property_read_u8(np, "ti,general-config", &pdata->general_config); in lp872x_populate_pdata_from_dt()
894 if (of_find_property(np, "ti,update-config", NULL)) in lp872x_populate_pdata_from_dt()
895 pdata->update_config = true; in lp872x_populate_pdata_from_dt()
897 pdata->dvs = devm_kzalloc(dev, sizeof(struct lp872x_dvs), GFP_KERNEL); in lp872x_populate_pdata_from_dt()
898 if (!pdata->dvs) in lp872x_populate_pdata_from_dt()
899 return ERR_PTR(-ENOMEM); in lp872x_populate_pdata_from_dt()
901 pdata->dvs->gpio = of_get_named_gpio(np, "ti,dvs-gpio", 0); in lp872x_populate_pdata_from_dt()
902 of_property_read_u8(np, "ti,dvs-vsel", (u8 *)&pdata->dvs->vsel); in lp872x_populate_pdata_from_dt()
903 of_property_read_u8(np, "ti,dvs-state", &dvs_state); in lp872x_populate_pdata_from_dt()
904 pdata->dvs->init_state = dvs_state ? DVS_HIGH : DVS_LOW; in lp872x_populate_pdata_from_dt()
906 pdata->enable_gpio = of_get_named_gpio(np, "enable-gpios", 0); in lp872x_populate_pdata_from_dt()
929 pdata->regulator_data[i].id = in lp872x_populate_pdata_from_dt()
931 pdata->regulator_data[i].init_data = match[i].init_data; in lp872x_populate_pdata_from_dt()
954 if (cl->dev.of_node) { in lp872x_probe()
955 pdata = lp872x_populate_pdata_from_dt(&cl->dev, in lp872x_probe()
956 (enum lp872x_id)id->driver_data); in lp872x_probe()
960 pdata = dev_get_platdata(&cl->dev); in lp872x_probe()
963 lp = devm_kzalloc(&cl->dev, sizeof(struct lp872x), GFP_KERNEL); in lp872x_probe()
965 return -ENOMEM; in lp872x_probe()
967 lp->num_regulators = lp872x_num_regulators[id->driver_data]; in lp872x_probe()
969 lp->regmap = devm_regmap_init_i2c(cl, &lp872x_regmap_config); in lp872x_probe()
970 if (IS_ERR(lp->regmap)) { in lp872x_probe()
971 ret = PTR_ERR(lp->regmap); in lp872x_probe()
972 dev_err(&cl->dev, "regmap init i2c err: %d\n", ret); in lp872x_probe()
976 lp->dev = &cl->dev; in lp872x_probe()
977 lp->pdata = pdata; in lp872x_probe()
978 lp->chipid = id->driver_data; in lp872x_probe()