All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RESEND 1/3] regulator: max8997: Use simple equation to get selector
@ 2012-04-10  6:20 Axel Lin
  2012-04-10  6:21 ` [PATCH RESEND 2/3] regulator: max8998: " Axel Lin
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Axel Lin @ 2012-04-10  6:20 UTC (permalink / raw)
  To: linux-kernel; +Cc: Kyungmin Park, MyungJoo Ham, Liam Girdwood, Mark Brown

It's more efficient to get the best selector by simple equation.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
---
 drivers/regulator/max8997.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/regulator/max8997.c b/drivers/regulator/max8997.c
index 6e7beee..de752da 100644
--- a/drivers/regulator/max8997.c
+++ b/drivers/regulator/max8997.c
@@ -416,7 +416,7 @@ static inline int max8997_get_voltage_proper_val(
 		const struct voltage_map_desc *desc,
 		int min_vol, int max_vol)
 {
-	int i = 0;
+	int i;
 
 	if (desc == NULL)
 		return -EINVAL;
@@ -424,9 +424,10 @@ static inline int max8997_get_voltage_proper_val(
 	if (max_vol < desc->min || min_vol > desc->max)
 		return -EINVAL;
 
-	while (desc->min + desc->step * i < min_vol &&
-			desc->min + desc->step * i < desc->max)
-		i++;
+	if (min_vol < desc->min)
+		min_vol = desc->min;
+
+	i = DIV_ROUND_UP(min_vol - desc->min, desc->step);
 
 	if (desc->min + desc->step * i > max_vol)
 		return -EINVAL;
-- 
1.7.5.4




^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-04-10  9:14 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-10  6:20 [PATCH RESEND 1/3] regulator: max8997: Use simple equation to get selector Axel Lin
2012-04-10  6:21 ` [PATCH RESEND 2/3] regulator: max8998: " Axel Lin
2012-04-10  6:22 ` [PATCH 3/3] regulator: max8997: Remove n_bits from struct voltage_map_desc Axel Lin
2012-04-10  9:14 ` [PATCH RESEND 1/3] regulator: max8997: Use simple equation to get selector Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.