[PATCH 3/3] meson_uart: adds the core clock handling to the driver
Neil Armstrong
narmstrong at baylibre.com
Thu Mar 23 00:50:18 PDT 2017
Le 22/03/2017 21:46, Helmut Klein a écrit :
> the added lines are 1:1 ripped off amlogic's driver. They do what i want them to do.
>
> I've hot no idea, if they are acceptable in that form.
>
>
> diff -Napur a/drivers/tty/serial/meson_uart.c b/drivers/tty/serial/meson_uart.c
> --- a/drivers/tty/serial/meson_uart.c 2017-03-09 21:09:47.000000000 +0100
> +++ b/drivers/tty/serial/meson_uart.c 2017-03-22 19:01:38.581613578 +0100
> @@ -600,6 +600,7 @@ static int meson_uart_probe(struct platf
> struct resource *res_mem, *res_irq;
> struct uart_port *port;
> struct clk *clk;
> + struct clk *core_clk;
> int ret = 0;
>
> if (pdev->dev.of_node)
> @@ -625,6 +626,15 @@ static int meson_uart_probe(struct platf
> if (!port)
> return -ENOMEM;
>
> + core_clk = devm_clk_get(&pdev->dev, "core");
> + if (!IS_ERR(core_clk)) {
> + ret = clk_prepare_enable(core_clk);
> + if(ret) {
> + dev_err(&pdev->dev, "couldn't enable clkc\n");
> + return ret;
> + }
> + }
it's correct, but the another way to go is :
if (IS_ERR(core_clk))
core_clk = NULL;
ret = clk_prepare_enable(core_clk);
if(ret) {
dev_err(&pdev->dev, "couldn't enable clkc\n");
return ret;
}
clk_prepare_enable will accept NULL clk.
> +
> clk = clk_get(&pdev->dev, NULL);
> if (IS_ERR(clk))
> return PTR_ERR(clk);
>
Please also Cc the tty/serial maintainer here also.
Neil
More information about the linux-amlogic
mailing list