[v3,2/6] power: add power sequence library
Matthias Kaehlcke
mka at chromium.org
Fri Jul 29 13:06:48 PDT 2016
Hi Peter,
Thanks for your work on this, a few comments inline
On 07/20/2016 02:40 AM, Peter Chen wrote:
> ...
>
> +static int pwrseq_generic_on(struct device_node *np, struct pwrseq *pwrseq)
> +{
>
> ...
>
> + if (gpiod_reset) {
> + u32 duration_us = 50;
> +
> + of_property_read_u32(np, "reset-duration-us",
> + &duration_us);
> + usleep_range(duration_us, duration_us + 10);
The end of the range could allow for more margin. Also consider busy
looping for very short delays as in
http://lxr.free-electrons.com/source/drivers/regulator/core.c#L2062
> ...
>
> +static int pwrseq_generic_get(struct device_node *np, struct pwrseq *pwrseq)
> +{
> + struct pwrseq_generic *pwrseq_gen = to_generic_pwrseq(pwrseq);
> + enum of_gpio_flags flags;
> + int reset_gpio, ret = 0;
> +
> + pwrseq_gen->clk = of_clk_get_by_name(np, NULL);
This only gets the first of potentially multiple clocks, is that intended?
More information about the linux-arm-kernel
mailing list