Messages in this thread Patch in this message | | | From | Nathan Chancellor <> | Subject | [PATCH] clk: imx6q: Annotate imx6q_obtain_fixed_clk_hw with __init | Date | Mon, 17 Jun 2019 19:24:05 -0700 |
| |
When building with clang, the following modpost warning occurs:
WARNING: vmlinux.o(.text+0x974dbc): Section mismatch in reference from the function imx6q_obtain_fixed_clk_hw() to the function .init.text:imx_obtain_fixed_clock_hw() The function imx6q_obtain_fixed_clk_hw() references the function __init imx_obtain_fixed_clock_hw(). This is often because imx6q_obtain_fixed_clk_hw lacks a __init annotation or the annotation of imx_obtain_fixed_clock_hw is wrong.
imx6q_obtain_fixed_clk_hw is only used in imx6q_clocks_init, which is marked __init so do that to imx6q_obtain_fixed_clk_hw to avoid this warning.
Fixes: 992b703b5b38 ("clk: imx6q: Switch to clk_hw based API") Link: https://github.com/ClangBuiltLinux/linux/issues/541 Reported-by: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> --- drivers/clk/imx/clk-imx6q.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/imx/clk-imx6q.c b/drivers/clk/imx/clk-imx6q.c index 2caa71e91119..18914e0a1850 100644 --- a/drivers/clk/imx/clk-imx6q.c +++ b/drivers/clk/imx/clk-imx6q.c @@ -418,8 +418,9 @@ static void disable_anatop_clocks(void __iomem *anatop_base) writel_relaxed(reg, anatop_base + CCM_ANALOG_PLL_VIDEO); } -static struct clk_hw *imx6q_obtain_fixed_clk_hw(struct device_node *np, - const char *name, unsigned long rate) +static struct clk_hw __init *imx6q_obtain_fixed_clk_hw(struct device_node *np, + const char *name, + unsigned long rate) { struct clk *clk = of_clk_get_by_name(np, name); struct clk_hw *hw; -- 2.22.0
| |