[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1357199114.25181.48.camel@joe-AO722>
Date: Wed, 02 Jan 2013 23:45:14 -0800
From: Joe Perches <joe@...ches.com>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: Tony Prisk <linux@...sktech.co.nz>, Arnd Bergmann <arnd@...db.de>,
Olof Johansson <olof@...om.net>, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
vt8500-wm8505-linux-kernel@...glegroups.com,
John Stultz <johnstul@...ibm.com>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [PATCH 1/2] timer: vt8500: Move system timer to clocksource
On Wed, 2013-01-02 at 23:35 -0800, Dmitry Torokhov wrote:
> On Thu, Jan 03, 2013 at 04:25:09PM +1300, Tony Prisk wrote:
> > +static void __init vt8500_timer_init(void)
> > +{
> > + struct device_node *np;
> > + int timer_irq;
> > +
> > + np = of_find_matching_node(NULL, vt8500_timer_ids);
> > + if (!np) {
> > + pr_err("%s: Timer description missing from Device Tree\n",
> > + __func__);
> > + return;
> > + }
> > + regbase = of_iomap(np, 0);
> > + if (!regbase) {
> > + pr_err("%s: Missing iobase description in Device Tree\n",
> > + __func__);
> > + of_node_put(np);
> > + return;
> > + }
> > + timer_irq = irq_of_parse_and_map(np, 0);
> > + if (!timer_irq) {
> > + pr_err("%s: Missing irq description in Device Tree\n",
> > + __func__);
> > + of_node_put(np);
> > + return;
>
> You are forgetting to unmap the regbase here.
Also I think it'd be nicer to write something like:
struct device_node *np;
int timer_irq;
const char *reason;
np = of_find_matching_node(NULL, vt8500_timer_ids);
if (!np) {
reason = "timer";
goto error;
}
regbase = of_iomap(np, 0);
if (!regbase) {
reason = "iobase";
goto error_put;
}
timer_irq = irq_of_parse_and_map(np, 0);
if (!timer_irq) {
reason = "irq";
goto error_remap;
}
...
error_remap:
unmap...;
error_put:
of_node_put(np);
error:
pr_err("%s: Missing %s description in Device Tree\n",
__func__, reason);
return;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists