On Sat Aug 3, 2024 at 11:57 AM BST, Harry Austen wrote: > Utilise clock provider API with struct clk_hw instances instead of the > consumer-side struct clk. > > Signed-off-by: Harry Austen <hpausten@xxxxxxxxxxxxxx> > --- > v1 -> v2: > - Move onecell data to end of struct for single allocation > - Just move to clk_hw API. Move devres transition to subsequent patch > > drivers/clk/xilinx/clk-xlnx-clock-wizard.c | 77 +++++++++++----------- > 1 file changed, 40 insertions(+), 37 deletions(-) > > diff --git a/drivers/clk/xilinx/clk-xlnx-clock-wizard.c b/drivers/clk/xilinx/clk-xlnx-clock-wizard.c > index 0ca045849ea3e..ccaf30c2d9481 100644 > --- a/drivers/clk/xilinx/clk-xlnx-clock-wizard.c > +++ b/drivers/clk/xilinx/clk-xlnx-clock-wizard.c > @@ -17,6 +17,7 @@ > #include <linux/of.h> > #include <linux/math64.h> > #include <linux/module.h> > +#include <linux/overflow.h> > #include <linux/err.h> > #include <linux/iopoll.h> > > @@ -121,26 +122,24 @@ enum clk_wzrd_int_clks { > /** > * struct clk_wzrd - Clock wizard private data structure > * > - * @clk_data: Clock data > + * @clk_data: Output clock data Realised I probably should have moved this doc comment to the bottom too, which also resulted in me putting the new `adev` parameter documentation in a weird location in patch 6. Will fix in v3. > * @nb: Notifier block > * @base: Memory base > * @clk_in1: Handle to input clock 'clk_in1' > * @axi_clk: Handle to input clock 's_axi_aclk' > * @clks_internal: Internal clocks > - * @clkout: Output clocks > * @speed_grade: Speed grade of the device > * @suspended: Flag indicating power state of the device > */ > struct clk_wzrd {