[PATCH 2/2] clk: initial clock driver for TWL6030
Mark Brown
broonie at kernel.org
Wed Jul 30 10:50:33 PDT 2014
On Wed, Jul 30, 2014 at 04:02:29PM +0200, Stefan Assmann wrote:
> +static int twl6030_clk32kg_is_prepared(struct clk_hw *hw)
> +{
> + struct twl6030_desc *desc = to_twl6030_desc(hw);
> +
> + return desc->enabled;
> +}
Why not just check the register map - can't the register be cached? If
that's not possible a comment would be good.
> +static int of_twl6030_clk32kg_probe(struct platform_device *pdev)
> +{
> + struct device_node *node = pdev->dev.of_node;
> + struct clk *clk;
> + int ret = 0;
> +
> + if (!node)
> + return -ENODEV;
> +
> + clk = clk_get(&pdev->dev, "clk32kg");
devm_clk_get()?
> + if (IS_ERR(clk))
> + ret = -EPROBE_DEFER;
Shouldn't the provided return code be being used?
> + else
> + clk_prepare(clk);
Why is the clock driver defaulting to enabling the clock, and if it
needs to shouldn't it be doing a prepere_enable() even if the enable
happens not to do anything to the hardware? Otherwise child clocks
might get confused.
The return value is also not being checked.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140730/ed6a6771/attachment.sig>
More information about the linux-arm-kernel
mailing list