Re: [PATCH] drivers: reset: Mark function as static in core.c

From: Philipp Zabel
Date: Sat Dec 14 2013 - 16:38:00 EST


On Sat, Dec 14, 2013 at 12:56:57PM -0800, Josh Triplett wrote:
> On Sat, Dec 14, 2013 at 05:15:34PM +0300, Dan Carpenter wrote:
> > On Sat, Dec 14, 2013 at 06:56:10PM +0530, Rashika Kheria wrote:
> > > This patch marks the function of_reset_simple_xlate() and
> > > devm_reset_control_put() as static in core.c because it is not used
> > > outside this file.
> > >
> > > Thus, it also eliminate the following warnings in core.c:
> > > drivers/reset/core.c:46:5: warning: no previous prototype for âof_reset_simple_xlateâ [-Wmissing-prototypes]
> > > drivers/reset/core.c:262:6: warning: no previous prototype for âdevm_reset_control_putâ [-Wmissing-prototypes]
> > >
> >
> > These are EXPORT_SYMBOL_GPL() so that doesn't make sense.
> > devm_reset_control_put() is not used at all and of_reset_simple_xlate()
> > doesn't look like it needs to be exported. Philipp?
>
> That sounds like the right fix to me: drop devm_reset_control_put and
> its export completely, and drop the export of make
> of_reset_simple_xlate. Unless there's some relevant out-of-tree caller
> of either function, that seems sensible.

Yes, of_reset_simple_xlate() is used as default if the driver does not specify
the .of_xlate field of the rcdev parameter to reset_controller_register().
It does not need to be exported. This is analogous to of_gpio_simple_xlate.

devm_reset_control_put would be needed if a driver wanted to release
the reset control before the devres cleanup for some reason. I added
it for symmetry with devm_reset_control_get but forgot the header
prototypes.
If this is considered not useful, we should probably also review
devm_{clk,gpiod,phy,pinctrl,pwm,regulator,usb}_put.

regards
Philipp
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/