How to register a "clk-divider" with a "clk_div_table"

dhu at hodcarrier.org dhu at hodcarrier.org
Fri Mar 18 07:24:35 CET 2022


Dear all,
I am tying to port u-boot to new soc, now i am rewrite my clk driver to use "CCF" clk driver.
I have find this api:
- - - - - - - - - - -
struct clk *clk_register_divider(struct device *dev, const char *name,
                const char *parent_name, unsigned long flags,
                void __iomem *reg, u8 shift, u8 width,
                u8 clk_divider_flags)
- - - - - - - - - - -
it seems don't have a agument to pass a divider table(struct clk_div_table),
and it calls a "static" function below and pass a "NULL" pointer to argument `table'.
(while this function is static, I should not call it in my driver to pass a divider table.)

- - - - - - - - - - -
static struct clk *_register_divider(struct device *dev, const char *name,
                const char *parent_name, unsigned long flags,
                void __iomem *reg, u8 shift, u8 width,
                u8 clk_divider_flags, const struct clk_div_table *table)
- - - - - - - - - - -
I also grep-ed the `clk_register_divider', there only `drivers/clk/ti/clk-k3.c' used it.

my question is, what is the proper way to register a divider using ccf in u-boot.

many thanks.









More information about the U-Boot mailing list