From 8c348bebe1f0b9e0f0608321713f32c61da45206 Mon Sep 17 00:00:00 2001 From: Taniya Das Date: Sat, 3 Dec 2016 19:06:59 +0530 Subject: clk: Add vdd_class support for handoff and use_max_uV Some dedicated power rails do not require a max voltage vote during bootup. Allow clock drivers to skip handoff for the corresponding VDD classes. Multiple vdd_class structures might share same set of regulators. If the FMAXes for these different vdd_class structures do not have the same level vote, there could be a conflict when setting voltage on the regulator. Add a flag use_max_uV to vote for INT_MAX as max_uV when calling regulator_set_voltage(). Constraints in the regulator driver make sure that the final voltage meets the requirement of that regulator's operational range. Change-Id: I15c9dc3ecf907723a136cbe90597ccafeba91af0 Signed-off-by: Taniya Das --- include/linux/clk-provider.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include/linux') diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h index aed90a4902c7..5cd588fa9f6a 100644 --- a/include/linux/clk-provider.h +++ b/include/linux/clk-provider.h @@ -269,6 +269,8 @@ struct regulator; regulator * @level_votes: array of votes for each level * @num_levels: specifies the size of level_votes array + * @skip_handoff: do not vote for the max possible voltage during init + * @use_max_uV: use INT_MAX for max_uV when calling regulator_set_voltage * @cur_level: the currently set voltage level * @lock: lock to protect this struct */ @@ -280,6 +282,8 @@ struct clk_vdd_class { int *vdd_uv; int *level_votes; int num_levels; + bool skip_handoff; + bool use_max_uV; unsigned long cur_level; struct mutex lock; }; -- cgit v1.2.3