* [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change @ 2016-11-23 11:02 Laxman Dewangan [not found] ` <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Laxman Dewangan @ 2016-11-23 11:02 UTC (permalink / raw) To: broonie, robh+dt Cc: mark.rutland, lgirdwood, linux-kernel, devicetree, Laxman Dewangan, Douglas Anderson, Aleksandr Frid Some regulators (some PWM regulators) have the voltage transition exponentially. On such cases, the settling time for voltage change is treated as constant time. Add DT property for providing the settling time for any level of voltage change for non-linear voltage change. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> CC: Douglas Anderson <dianders@chromium.org> CC: Aleksandr Frid <afrid@nvidia.com> --- This patch is continuation of discussion on patch regulator: pwm: Fix regulator ramp delay for continuous mode https://patchwork.kernel.org/patch/9216857/ where is it discussed to have separate property for PWM which has exponential voltage transition. Changes from V1: - Pass the flag to tell that voltage ramp is exponential instead of providing delay. Changes from V2: - Based on review comment from V1, make the settling time property independent of the regulator-ramp-delay and move this out of PWM regulator. --- Documentation/devicetree/bindings/regulator/regulator.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/regulator/regulator.txt b/Documentation/devicetree/bindings/regulator/regulator.txt index 6ab5aef..d18edb0 100644 --- a/Documentation/devicetree/bindings/regulator/regulator.txt +++ b/Documentation/devicetree/bindings/regulator/regulator.txt @@ -21,6 +21,9 @@ Optional properties: design requires. This property describes the total system ramp time required due to the combination of internal ramping of the regulator itself, and board design issues such as trace capacitance and load on the supply. +- regulator-settling-time-us: Settling time, in microseconds, for voltage + change if regulator have the constant time for any level voltage change. + This is useful when regulator have exponential voltage change. - regulator-soft-start: Enable soft start so that voltage ramps slowly - regulator-state-mem sub-root node for Suspend-to-RAM mode : suspend to memory, the device goes to sleep, but all data stored in memory, -- 2.1.4 ^ permalink raw reply related [flat|nested] 4+ messages in thread
[parent not found: <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>]
* [PATCH V3 2/2] regulator: Add settling time for non-linear voltage transition [not found] ` <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> @ 2016-11-23 11:02 ` Laxman Dewangan 2016-11-30 20:33 ` [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change Rob Herring 2017-04-05 17:31 ` Applied "regulator: DT: Add settling time property for non-linear voltage change" to the regulator tree Mark Brown 2 siblings, 0 replies; 4+ messages in thread From: Laxman Dewangan @ 2016-11-23 11:02 UTC (permalink / raw) To: broonie-DgEjT+Ai2ygdnm+yROfE0A, robh+dt-DgEjT+Ai2ygdnm+yROfE0A Cc: mark.rutland-5wv7dgnIgG8, lgirdwood-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Laxman Dewangan, Douglas Anderson, Aleksandr Frid Some regulators (some PWM regulators) have the voltage transition non-linear i.e. exponentially. On such cases, the settling time for voltage transition can not be presented in the voltage-ramp-delay. Add new property for non-linear voltage transition and handle this in getting the voltage settling time. Signed-off-by: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> CC: Douglas Anderson <dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> CC: Aleksandr Frid <afrid-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> --- This patch is continuation of discussion on patch regulator: pwm: Fix regulator ramp delay for continuous mode https://patchwork.kernel.org/patch/9216857/ where is it discussed to have separate property for PWM which has exponential voltage transition. Changes from V1: - Use new DT property to finding that voltage ramp is exponential or not and use flag for having fixed delay for all voltage change. Changes from V2: - Based on review comment from V1, make the settling time property independent of the regulator-ramp-delay and move this to core framework instead of handling in PWM regulator. --- drivers/regulator/core.c | 2 ++ drivers/regulator/of_regulator.c | 4 ++++ include/linux/regulator/machine.h | 3 +++ 3 files changed, 9 insertions(+) diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index 67426c0..06a2477 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -2752,6 +2752,8 @@ static int _regulator_set_voltage_time(struct regulator_dev *rdev, ramp_delay = rdev->constraints->ramp_delay; else if (rdev->desc->ramp_delay) ramp_delay = rdev->desc->ramp_delay; + else if (rdev->constraints->settling_time) + return rdev->constraints->settling_time; if (ramp_delay == 0) { rdev_warn(rdev, "ramp_delay not set\n"); diff --git a/drivers/regulator/of_regulator.c b/drivers/regulator/of_regulator.c index 4f613ec..09d677d 100644 --- a/drivers/regulator/of_regulator.c +++ b/drivers/regulator/of_regulator.c @@ -86,6 +86,10 @@ static void of_get_regulation_constraints(struct device_node *np, constraints->ramp_disable = true; } + ret = of_property_read_u32(np, "regulator-settling-time-us", &pval); + if (!ret) + constraints->settling_time = pval; + ret = of_property_read_u32(np, "regulator-enable-ramp-delay", &pval); if (!ret) constraints->enable_time = pval; diff --git a/include/linux/regulator/machine.h b/include/linux/regulator/machine.h index ad3e515..598a493 100644 --- a/include/linux/regulator/machine.h +++ b/include/linux/regulator/machine.h @@ -108,6 +108,8 @@ struct regulator_state { * @initial_state: Suspend state to set by default. * @initial_mode: Mode to set at startup. * @ramp_delay: Time to settle down after voltage change (unit: uV/us) + * @settling_time: Time to settle down after voltage change when voltage + * change is non-linear (unit: microseconds). * @active_discharge: Enable/disable active discharge. The enum * regulator_active_discharge values are used for * initialisation. @@ -149,6 +151,7 @@ struct regulation_constraints { unsigned int initial_mode; unsigned int ramp_delay; + unsigned int settling_time; unsigned int enable_time; unsigned int active_discharge; -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change [not found] ` <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-11-23 11:02 ` [PATCH V3 2/2] regulator: Add settling time for non-linear voltage transition Laxman Dewangan @ 2016-11-30 20:33 ` Rob Herring 2017-04-05 17:31 ` Applied "regulator: DT: Add settling time property for non-linear voltage change" to the regulator tree Mark Brown 2 siblings, 0 replies; 4+ messages in thread From: Rob Herring @ 2016-11-30 20:33 UTC (permalink / raw) To: Laxman Dewangan Cc: broonie-DgEjT+Ai2ygdnm+yROfE0A, mark.rutland-5wv7dgnIgG8, lgirdwood-Re5JQEeQqe8AvxtiuMwx3w, linux-kernel-u79uwXL29TY76Z2rM5mHXA, devicetree-u79uwXL29TY76Z2rM5mHXA, Douglas Anderson, Aleksandr Frid On Wed, Nov 23, 2016 at 04:32:39PM +0530, Laxman Dewangan wrote: > Some regulators (some PWM regulators) have the voltage transition > exponentially. On such cases, the settling time for voltage change > is treated as constant time. > > Add DT property for providing the settling time for any level of > voltage change for non-linear voltage change. > > Signed-off-by: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> > CC: Douglas Anderson <dianders-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org> > CC: Aleksandr Frid <afrid-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> Acked-by: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 4+ messages in thread
* Applied "regulator: DT: Add settling time property for non-linear voltage change" to the regulator tree [not found] ` <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-11-23 11:02 ` [PATCH V3 2/2] regulator: Add settling time for non-linear voltage transition Laxman Dewangan 2016-11-30 20:33 ` [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change Rob Herring @ 2017-04-05 17:31 ` Mark Brown 2 siblings, 0 replies; 4+ messages in thread From: Mark Brown @ 2017-04-05 17:31 UTC (permalink / raw) To: Laxman Dewangan; +Cc: Rob Herring, Mark Brown The patch regulator: DT: Add settling time property for non-linear voltage change has been applied to the regulator tree at git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator.git All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted. You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed. If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced. Please add any relevant lists and maintainers to the CCs when replying to this mail. Thanks, Mark >From cfd2cedb482ae29ce13a3db46cc24f0c082ca9cf Mon Sep 17 00:00:00 2001 From: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> Date: Tue, 4 Apr 2017 18:59:49 +0530 Subject: [PATCH] regulator: DT: Add settling time property for non-linear voltage change Some regulators (some PWM regulators) have the voltage transition exponentially. On such cases, the settling time for voltage change is treated as constant time. Add DT property for providing the settling time for any level of voltage change for non-linear voltage change. signed-off-by: Laxman Dewangan <ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> Acked-by: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> Signed-off-by: Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> --- Documentation/devicetree/bindings/regulator/regulator.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/regulator/regulator.txt b/Documentation/devicetree/bindings/regulator/regulator.txt index 6ab5aef619d9..d18edb075e1c 100644 --- a/Documentation/devicetree/bindings/regulator/regulator.txt +++ b/Documentation/devicetree/bindings/regulator/regulator.txt @@ -21,6 +21,9 @@ Optional properties: design requires. This property describes the total system ramp time required due to the combination of internal ramping of the regulator itself, and board design issues such as trace capacitance and load on the supply. +- regulator-settling-time-us: Settling time, in microseconds, for voltage + change if regulator have the constant time for any level voltage change. + This is useful when regulator have exponential voltage change. - regulator-soft-start: Enable soft start so that voltage ramps slowly - regulator-state-mem sub-root node for Suspend-to-RAM mode : suspend to memory, the device goes to sleep, but all data stored in memory, -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-04-05 17:31 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-11-23 11:02 [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change Laxman Dewangan [not found] ` <1479898960-14166-1-git-send-email-ldewangan-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> 2016-11-23 11:02 ` [PATCH V3 2/2] regulator: Add settling time for non-linear voltage transition Laxman Dewangan 2016-11-30 20:33 ` [PATCH V3 1/2] regulator: DT: Add settling time property for non-linear voltage change Rob Herring 2017-04-05 17:31 ` Applied "regulator: DT: Add settling time property for non-linear voltage change" to the regulator tree Mark Brown
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).