[PATCH 1/4] clk: ux500: Adapt PRCMU and PRCC clocks for common clk
Arnd Bergmann
arnd at arndb.de
Sun Aug 26 00:47:58 EDT 2012
On Friday 24 August 2012, Ulf Hansson wrote:
> From: Ulf Hansson <ulf.hansson at linaro.org>
>
> First version of common clock implementation of PRCMU clocks
> and PRCC clocks for ux500 platforms.
>
> Signed-off-by: Ulf Hansson <ulf.hansson at linaro.org>
Very nice, glad to see you got this working!
I only noticed one thing that you should improve:
> +#define to_clk_prcc(_hw) container_of(_hw, struct clk_prcc, hw)
> +
> +struct clk_prcc {
> + struct clk_hw hw;
> + unsigned int io_base;
> + u32 cg_sel;
> + int is_enabled;
> +};
> +
> +/* PRCC clock operations. */
> +
> +static int clk_prcc_pclk_enable(struct clk_hw *hw)
> +{
> + struct clk_prcc *clk = to_clk_prcc(hw);
> + void __iomem *io_base = __io_address(clk->io_base);
In a proper device driver, we should not use hacks like __io_address. Please
change the driver to ioremap the register area at initialization time, and
don't pass a physical io_base like above but instead pass an offset into
the register area.
Arnd
More information about the linux-arm-kernel
mailing list