Loading drivers/regulator/core.c +22 −0 Original line number Diff line number Diff line Loading @@ -1866,6 +1866,28 @@ int regulator_is_enabled(struct regulator *regulator) } EXPORT_SYMBOL_GPL(regulator_is_enabled); /** * regulator_can_change_voltage - check if regulator can change voltage * @regulator: regulator source * * Returns positive if the regulator driver backing the source/client * can change its voltage, false otherwise. Usefull for detecting fixed * or dummy regulators and disabling voltage change logic in the client * driver. */ int regulator_can_change_voltage(struct regulator *regulator) { struct regulator_dev *rdev = regulator->rdev; if (rdev->constraints && rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_VOLTAGE && rdev->desc->n_voltages > 1) return 1; return 0; } EXPORT_SYMBOL_GPL(regulator_can_change_voltage); /** * regulator_count_voltages - count regulator_list_voltage() selectors * @regulator: regulator source Loading include/linux/regulator/consumer.h +1 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ int regulator_bulk_force_disable(int num_consumers, void regulator_bulk_free(int num_consumers, struct regulator_bulk_data *consumers); int regulator_can_change_voltage(struct regulator *regulator); int regulator_count_voltages(struct regulator *regulator); int regulator_list_voltage(struct regulator *regulator, unsigned selector); int regulator_is_supported_voltage(struct regulator *regulator, Loading Loading
drivers/regulator/core.c +22 −0 Original line number Diff line number Diff line Loading @@ -1866,6 +1866,28 @@ int regulator_is_enabled(struct regulator *regulator) } EXPORT_SYMBOL_GPL(regulator_is_enabled); /** * regulator_can_change_voltage - check if regulator can change voltage * @regulator: regulator source * * Returns positive if the regulator driver backing the source/client * can change its voltage, false otherwise. Usefull for detecting fixed * or dummy regulators and disabling voltage change logic in the client * driver. */ int regulator_can_change_voltage(struct regulator *regulator) { struct regulator_dev *rdev = regulator->rdev; if (rdev->constraints && rdev->constraints->valid_ops_mask & REGULATOR_CHANGE_VOLTAGE && rdev->desc->n_voltages > 1) return 1; return 0; } EXPORT_SYMBOL_GPL(regulator_can_change_voltage); /** * regulator_count_voltages - count regulator_list_voltage() selectors * @regulator: regulator source Loading
include/linux/regulator/consumer.h +1 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ int regulator_bulk_force_disable(int num_consumers, void regulator_bulk_free(int num_consumers, struct regulator_bulk_data *consumers); int regulator_can_change_voltage(struct regulator *regulator); int regulator_count_voltages(struct regulator *regulator); int regulator_list_voltage(struct regulator *regulator, unsigned selector); int regulator_is_supported_voltage(struct regulator *regulator, Loading