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


Groups > linux.kernel > #1391006

[PATCH 3/3] regulator: max77686: Configure enable time to properly handle regulator enable

Path csiph.com!news.mixmin.net!aioe.org!gothmog.csi.it!bofh.it!news.nic.it!robomod
From Krzysztof Kozlowski <k.kozlowski@samsung.com>
Newsgroups linux.kernel
Subject [PATCH 3/3] regulator: max77686: Configure enable time to properly handle regulator enable
Date Fri, 29 Apr 2016 13:10:02 +0200
Message-ID <rtet4-4St-15@gated-at.bofh.it> (permalink)
References <rtet4-4St-13@gated-at.bofh.it>
X-Original-To Kukjin Kim <kgene@kernel.org>, Krzysztof Kozlowski <k.kozlowski@samsung.com>, Chanwoo Choi <cw00.choi@samsung.com>, Liam Girdwood <lgirdwood@gmail.com>, Mark Brown <broonie@kernel.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-usb@vger.kernel.org
X-Auditid cbfec7f4-f796c6d000001486-95-57233eb953f6
X-Mailer git-send-email 1.9.1
X-Brightmail-Tracker H4sIAAAAAAAAA+NgFjrHLMWRmVeSWpSXmKPExsVy+t/xa7o77ZTDDW4dlrfYOGM9q8XUh0/Y LK5/ec5qMf/IOVaL5sXr2SxOTX7GZPH6haFF/+PXzBbfrnQwWWx6fI3V4vKuOWwWM87vY7JY tKyV2WLdxlvsFmuP3GW3aFv9gdVBwGPnrLvsHptWdbJ57J+7ht1j85J6j3/H2D36tqxi9Pi8 Sc7j1NfP7AEcUVw2Kak5mWWpRfp2CVwZy75tZS34K1Bx/NcptgbGz7xdjJwcEgImEgdXXWOG sMUkLtxbzwZiCwksZZQ4dkuji5ELyG5kkui6cYURJMEmYCyxefkSNpCEiMB0ZondLw6ygDjM AgsYJb4sn80OUiUskCrR/vwu2FgWAVWJyWuWg8V5BdwkXp1YygqxTk7i5LHJYDangLvE/Vnf mSFWu0msO/KebQIj7wJGhlWMoqmlyQXFSem5hnrFibnFpXnpesn5uZsYIaH8ZQfj4mNWhxgF OBiVeHhn3FMKF2JNLCuuzD3EKMHBrCTCe9RWOVyINyWxsiq1KD++qDQntfgQozQHi5I479xd 70OEBNITS1KzU1MLUotgskwcnFINjOVeEk83GxT7r47eVcRqe8qvMzfadvtlqf/K6yfMdlx0 8OzhI1yrrZtz5/N+sgjSnlbHc03usWndj5RyPd20X9ZMUanBseJP6ypVDX+X1JiKRvisMDL+ telE7tG+CYvTf77Q8Eq6cdrR6pTGvSM3fv1fpJC+umPXCTb391NuHS17Mk9x6v3INiWW4oxE Qy3mouJEACLTRG5hAgAA
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 50
Organization linux.* mail to news gateway
X-Original-Cc linux.amoon@gmail.com, tjakobi@math.uni-bielefeld.de, m.szyprowski@samsung.com, hverkuil@xs4all.nl, Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
X-Original-Date Fri, 29 Apr 2016 12:59:51 +0200
X-Original-Message-ID <1461927591-7864-4-git-send-email-k.kozlowski@samsung.com>
X-Original-References <1461927591-7864-1-git-send-email-k.kozlowski@samsung.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1391006

Show key headers only | View raw


The enable time for buck regulators was not configured but actually is
essential: consumers, like usb3503, doing hard reset (regulator off/on)
should wait for the regulator to settle.

Configure the enable time according to datasheet.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
---
 drivers/regulator/max77686-regulator.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/regulator/max77686-regulator.c b/drivers/regulator/max77686-regulator.c
index d1ab6a4da88f..ac4fa581e0a5 100644
--- a/drivers/regulator/max77686-regulator.c
+++ b/drivers/regulator/max77686-regulator.c
@@ -41,6 +41,8 @@
 #define MAX77686_LDO_LOW_UVSTEP	25000
 #define MAX77686_BUCK_MINUV	750000
 #define MAX77686_BUCK_UVSTEP	50000
+#define MAX77686_BUCK_ENABLE_TIME	40		/* us */
+#define MAX77686_DVS_ENABLE_TIME	22		/* us */
 #define MAX77686_RAMP_DELAY	100000			/* uV/us */
 #define MAX77686_DVS_RAMP_DELAY	27500			/* uV/us */
 #define MAX77686_DVS_MINUV	600000
@@ -422,6 +424,7 @@ static struct regulator_ops max77686_buck_dvs_ops = {
 	.min_uV		= MAX77686_BUCK_MINUV,				\
 	.uV_step	= MAX77686_BUCK_UVSTEP,				\
 	.ramp_delay	= MAX77686_RAMP_DELAY,				\
+	.enable_time	= MAX77686_BUCK_ENABLE_TIME,			\
 	.n_voltages	= MAX77686_VSEL_MASK + 1,			\
 	.vsel_reg	= MAX77686_REG_BUCK5OUT + (num - 5) * 2,	\
 	.vsel_mask	= MAX77686_VSEL_MASK,				\
@@ -439,6 +442,7 @@ static struct regulator_ops max77686_buck_dvs_ops = {
 	.min_uV		= MAX77686_BUCK_MINUV,				\
 	.uV_step	= MAX77686_BUCK_UVSTEP,				\
 	.ramp_delay	= MAX77686_RAMP_DELAY,				\
+	.enable_time	= MAX77686_BUCK_ENABLE_TIME,			\
 	.n_voltages	= MAX77686_VSEL_MASK + 1,			\
 	.vsel_reg	= MAX77686_REG_BUCK1OUT,			\
 	.vsel_mask	= MAX77686_VSEL_MASK,				\
@@ -456,6 +460,7 @@ static struct regulator_ops max77686_buck_dvs_ops = {
 	.min_uV		= MAX77686_DVS_MINUV,				\
 	.uV_step	= MAX77686_DVS_UVSTEP,				\
 	.ramp_delay	= MAX77686_DVS_RAMP_DELAY,			\
+	.enable_time	= MAX77686_DVS_ENABLE_TIME,			\
 	.n_voltages	= MAX77686_DVS_VSEL_MASK + 1,			\
 	.vsel_reg	= MAX77686_REG_BUCK2DVS1 + (num - 2) * 10,	\
 	.vsel_mask	= MAX77686_DVS_VSEL_MASK,			\
-- 
1.9.1

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH 3/3] regulator: max77686: Configure enable time to properly  handle regulator enable Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-04-29 13:10 +0200
  Applied "regulator: max77686: Configure enable time to properly handle regulator enable" to the regulator tree Mark Brown <broonie@kernel.org> - 2016-04-29 13:40 +0200

csiph-web