pinctrl: pinctrl_register_mappings() shouldn't be __init
authorStephen Warren <swarren@nvidia.com>
Mon, 20 Feb 2012 06:45:41 +0000 (23:45 -0700)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 22 Feb 2012 16:59:30 +0000 (17:59 +0100)
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

index 8a91eb2..84a24a6 100644 (file)
@@ -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;