Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1408908 > unrolled thread

[RFT][PATCH v2] regulator: max8973: Fix setting ramp delay

Started byAxel Lin <axel.lin@ingics.com>
First post2016-05-30 11:10 +0200
Last post2016-05-30 12:50 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [RFT][PATCH v2] regulator: max8973: Fix setting ramp delay Axel Lin <axel.lin@ingics.com> - 2016-05-30 11:10 +0200
    Re: [RFT][PATCH v2] regulator: max8973: Fix setting ramp delay Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-05-30 11:30 +0200
    Re: [RFT][PATCH v2] regulator: max8973: Fix setting ramp delay Laxman Dewangan <ldewangan@nvidia.com> - 2016-05-30 12:50 +0200

#1408908 — [RFT][PATCH v2] regulator: max8973: Fix setting ramp delay

FromAxel Lin <axel.lin@ingics.com>
Date2016-05-30 11:10 +0200
Subject[RFT][PATCH v2] regulator: max8973: Fix setting ramp delay
Message-ID<rErmV-2bT-11@gated-at.bofh.it>
Current code for .set_ramp_delay() rounds down the value written to
register, while the implementation of .set_voltage_time_sel() works on
original constraints (not rounded down).
Fix the logic in .set_ramp_delay and also remove unused ret_val variable.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
---
v2: Update commit log base on Krzysztof's comment.
 drivers/regulator/max8973-regulator.c | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/drivers/regulator/max8973-regulator.c b/drivers/regulator/max8973-regulator.c
index 08d2f13..3958f50 100644
--- a/drivers/regulator/max8973-regulator.c
+++ b/drivers/regulator/max8973-regulator.c
@@ -271,22 +271,18 @@ static int max8973_set_ramp_delay(struct regulator_dev *rdev,
 	struct max8973_chip *max = rdev_get_drvdata(rdev);
 	unsigned int control;
 	int ret;
-	int ret_val;
 
 	/* Set ramp delay */
-	if (ramp_delay < 25000) {
+	if (ramp_delay <= 12000)
 		control = MAX8973_RAMP_12mV_PER_US;
-		ret_val = 12000;
-	} else if (ramp_delay < 50000) {
+	else if (ramp_delay <= 25000)
 		control = MAX8973_RAMP_25mV_PER_US;
-		ret_val = 25000;
-	} else if (ramp_delay < 200000) {
+	else if (ramp_delay <= 50000)
 		control = MAX8973_RAMP_50mV_PER_US;
-		ret_val = 50000;
-	} else {
+	else if (ramp_delay <= 200000)
 		control = MAX8973_RAMP_200mV_PER_US;
-		ret_val = 200000;
-	}
+	else
+		return -EINVAL;
 
 	ret = regmap_update_bits(max->regmap, MAX8973_CONTROL1,
 			MAX8973_RAMP_MASK, control);
-- 
2.5.0

[toc] | [next] | [standalone]


#1408936

FromKrzysztof Kozlowski <k.kozlowski@samsung.com>
Date2016-05-30 11:30 +0200
Message-ID<rErGh-2in-19@gated-at.bofh.it>
In reply to#1408908
On 05/30/2016 11:09 AM, Axel Lin wrote:
> Current code for .set_ramp_delay() rounds down the value written to
> register, while the implementation of .set_voltage_time_sel() works on
> original constraints (not rounded down).
> Fix the logic in .set_ramp_delay and also remove unused ret_val variable.
> 
> Signed-off-by: Axel Lin <axel.lin@ingics.com>
> ---
> v2: Update commit log base on Krzysztof's comment.
>  drivers/regulator/max8973-regulator.c | 16 ++++++----------
>  1 file changed, 6 insertions(+), 10 deletions(-)


Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>

Best regards,
Krzysztof

[toc] | [prev] | [next] | [standalone]


#1408976

FromLaxman Dewangan <ldewangan@nvidia.com>
Date2016-05-30 12:50 +0200
Message-ID<rEsVH-2ZZ-1@gated-at.bofh.it>
In reply to#1408908
On Monday 30 May 2016 02:39 PM, Axel Lin wrote:
> Current code for .set_ramp_delay() rounds down the value written to
> register, while the implementation of .set_voltage_time_sel() works on
> original constraints (not rounded down).
> Fix the logic in .set_ramp_delay and also remove unused ret_val variable.
>
> Signed-off-by: Axel Lin <axel.lin@ingics.com>
>

Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web