From 13398a4b90c87f0250928f01b5735a157fcc0847 Mon Sep 17 00:00:00 2001 From: Stephen Warren <swarren@nvidia.com> Date: Sun, 19 Feb 2012 23:45:41 -0700 Subject: [PATCH] pinctrl: pinctrl_register_mappings() shouldn't be __init It may be common for pinctrl_register_mappings() to be used from __init context, but there's no reason that additional mappings shouldn't be added at a later point, e.g. if loading modules that add pin controllers and their mapping tables. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> --- drivers/pinctrl/core.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index 8a91eb24eb52..84a24a693e0c 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c @@ -641,18 +641,13 @@ EXPORT_SYMBOL_GPL(pinctrl_disable); /** * pinctrl_register_mappings() - register a set of pin controller mappings - * @maps: the pincontrol mappings table to register, this should be marked with - * __initdata so it can be discarded after boot, this function will - * perform a shallow copy for the mapping entries. + * @maps: the pincontrol mappings table to register. This should probably be + * marked with __initdata so it can be discarded after boot. This + * function will perform a shallow copy for the mapping entries. * @num_maps: the number of maps in the mapping table - * - * Only call this once during initialization of your machine, the function is - * tagged as __init and won't be callable after init has completed. The map - * passed into this function will be owned by the pinmux core and cannot be - * freed. */ -int __init pinctrl_register_mappings(struct pinctrl_map const *maps, - unsigned num_maps) +int pinctrl_register_mappings(struct pinctrl_map const *maps, + unsigned num_maps) { void *tmp_maps; int i; -- 2.30.9