Messages in this thread | | | From | SeongJae Park <> | Date | Mon, 20 Jan 2014 17:07:23 +0900 | Subject | Re: [PATCH] clk: export __clk_get_hw for re-use in others |
| |
On Mon, Jan 20, 2014 at 4:47 PM, Mike Turquette <mturquette@linaro.org> wrote: > On Sun, Jan 19, 2014 at 9:37 AM, Greg KH <gregkh@linuxfoundation.org> wrote: >> On Sun, Jan 19, 2014 at 02:55:07PM +0900, SeongJae Park wrote: >>> Following build comes while modprobe process: >>> > ERROR: "__clk_get_hw" [drivers/clk/clk-max77686.ko] undefined! >>> > make[2]: *** [__modpost] Error 1 >>> > make[1]: *** [modules] Error 2 >>> >>> Export the symbol to fix it and for other part's usecase. >>> >>> Signed-off-by: SeongJae Park <sj38.park@gmail.com> >>> --- >>> drivers/clk/clk.c | 1 + >>> 1 file changed, 1 insertion(+) >>> >>> diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c >>> index 2b38dc9..3883fba 100644 >>> --- a/drivers/clk/clk.c >>> +++ b/drivers/clk/clk.c >>> @@ -575,6 +575,7 @@ struct clk_hw *__clk_get_hw(struct clk *clk) >>> { >>> return !clk ? NULL : clk->hw; >>> } >>> +EXPORT_SYMBOL_GPL(__clk_get_hw); >> >> __ functions should usually only be for "internal" use, why does this >> get exported to modules? Why not just put it in a .h file? > > It was originally used only within the clock core but it is sensible > for hardware-specific clock drivers to use this as well. I plan to > audit all of the double-underscore functions in > include/linux/clk-provider.h for 3.15. > > Regards, > Mike > Thank you very much for answering about it, Mike.
I agree Greg's indication and think Mike's explanation is reasonable.
So, I think it would be better to just export the symbol now because it would be easier for future functions renaming and similar issues were solved in this way in past: https://lkml.org/lkml/2013/4/15/50
Or, maybe I can change the client code of __clk_get_hw to not use the function.
What do you think would be better to fix this build error? Or, do you have better idea? I will respect your opinion.
Thanks and Regards. SeongJae Park.
>> >> greg k-h
| |