On Tue, Jul 30, 2013 at 12:00:37PM +0200, Laurent Pinchart wrote: > Hi Simon, > > On Tuesday 30 July 2013 11:08:59 Simon Horman wrote: > > [ CC Greg Kroah-Hartman, linux-serial@xxxxxxxxxxxxxxx, > > linux-arm-kernel@xxxxxxxxxxxxxxxxxxx ] > > > > On Fri, Jul 26, 2013 at 04:22:02PM +0200, Laurent Pinchart wrote: > > > Replace kzalloc and clk_get by their managed counterparts to simplify > > > error and cleanup paths. > > > > Hi Laurent, > > > > I was recently asked for shmobile clocksource patches to be reviewed by the > > clocksource maintainers. > > I suppose you mean serial port, not clock source. > > > I believe that means Greg Kroah-Hartman and linux-serial@xxxxxxxxxxxxxxx who > > I have CCed on this email accordingly. > > linux-serial@xxxxxxxxxxxxxxx was already CC'ed in my original e-mail. > > > I have also CCed linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > > Actually you haven't ;-) :^) > > as many moons ago I was asked for all patches that will go through my tree > > and on to arm-soc to be sent there. > > This patch will likely go through the serial tree, which is why I hadn't CC'ed > LAKML. Understood, that makes sense. > > > Signed-off-by: Laurent Pinchart > > > <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx> > > > --- > > > > > > drivers/tty/serial/8250/8250_em.c | 27 ++++++++------------------- > > > 1 file changed, 8 insertions(+), 19 deletions(-) > > > > > > diff --git a/drivers/tty/serial/8250/8250_em.c > > > b/drivers/tty/serial/8250/8250_em.c index 916cc19..5f3bba1 100644 > > > --- a/drivers/tty/serial/8250/8250_em.c > > > +++ b/drivers/tty/serial/8250/8250_em.c > > > @@ -95,25 +95,23 @@ static int serial8250_em_probe(struct platform_device > > > *pdev)> > > > struct resource *irq = platform_get_resource(pdev, IORESOURCE_IRQ, > > > 0); > > > struct serial8250_em_priv *priv; > > > struct uart_8250_port up; > > > - int ret = -EINVAL; > > > + int ret; > > > > > > if (!regs || !irq) { > > > dev_err(&pdev->dev, "missing registers or irq\n"); > > > - goto err0; > > > + return -EINVAL; > > > } > > > > > > - priv = kzalloc(sizeof(*priv), GFP_KERNEL); > > > + priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); > > > if (!priv) { > > > dev_err(&pdev->dev, "unable to allocate private data\n"); > > > - ret = -ENOMEM; > > > - goto err0; > > > + return -ENOMEM; > > > } > > > > > > - priv->sclk = clk_get(&pdev->dev, "sclk"); > > > + priv->sclk = devm_clk_get(&pdev->dev, "sclk"); > > > if (IS_ERR(priv->sclk)) { > > > dev_err(&pdev->dev, "unable to get clock\n"); > > > - ret = PTR_ERR(priv->sclk); > > > - goto err1; > > > + return PTR_ERR(priv->sclk); > > > } > > > > > > memset(&up, 0, sizeof(up)); > > > @@ -136,20 +134,13 @@ static int serial8250_em_probe(struct > > > platform_device *pdev)> > > > ret = serial8250_register_8250_port(&up); > > > if (ret < 0) { > > > dev_err(&pdev->dev, "unable to register 8250 port\n"); > > > - goto err2; > > > + clk_disable(priv->sclk); > > > + return ret; > > > } > > > > > > priv->line = ret; > > > platform_set_drvdata(pdev, priv); > > > return 0; > > > - > > > - err2: > > > - clk_disable(priv->sclk); > > > - clk_put(priv->sclk); > > > - err1: > > > - kfree(priv); > > > - err0: > > > - return ret; > > > } > > > > > > static int serial8250_em_remove(struct platform_device *pdev) > > > > > > @@ -158,8 +149,6 @@ static int serial8250_em_remove(struct platform_device > > > *pdev)> > > > serial8250_unregister_port(priv->line); > > > clk_disable(priv->sclk); > > > > > > - clk_put(priv->sclk); > > > - kfree(priv); > > > > > > return 0; > > > > > > } > -- > Regards, > > Laurent Pinchart > > -- > To unsubscribe from this list: send the line "unsubscribe linux-sh" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html