[PATCH v7] reset: Add driver for gpio-controlled reset pins
Philipp Zabel
p.zabel at pengutronix.de
Thu May 30 19:08:48 EST 2013
Hi Stephen,
Am Mittwoch, den 29.05.2013, 17:19 -0600 schrieb Stephen Warren:
> On 05/28/2013 09:06 AM, Philipp Zabel wrote:
> > This driver implements a reset controller device that toggle a gpio
> > connected to a reset pin of a peripheral IC. The delay between assertion
> > and de-assertion of the reset signal can be configured via device tree.
>
> > diff --git a/drivers/reset/gpio-reset.c b/drivers/reset/gpio-reset.c
>
> > +static void __gpio_reset_set(struct reset_controller_dev *rcdev, int asserted)
>
> Nit: Technically I think __ is a reserved name-space, so you shouldn't
> prefix "user-level" (rather than libc/similar) symbols with it, but it's
> not a big deal.
I'll s/__//.
> > +static int gpio_reset_probe(struct platform_device *pdev)
>
> > + if (of_gpio_named_count(np, "reset-gpios") != 1)
> > + return -EINVAL;
>
> Should that error-path (and the path for of_property_read_u32() failure)
> include a dev_err() like some already do, so it's obvious what the
> failure is?
For reset-gpios, yes. reset-delay-us is marked as optional in the
bindings.
> > + reset_controller_register(&drvdata->rcdev);
> > +
> > + platform_set_drvdata(pdev, drvdata);
>
> It might be better to set the drvdata right after it's been allocated.
> It perhaps doesn't matter much here, but if the reset controller core
> ever starts calling into the registered device inside the call to
> reset_controller_register(), then there might be a problem.
Alright. I'll move ist above the reset_controller_register() call.
> Aside from those minor issues,
> Reviewed-by: Stephen Warren <swarren at nvidia.com>
thanks
Philipp
More information about the devicetree-discuss
mailing list