diff options
author | Tony Lindgren <tony@atomide.com> | 2016-12-30 10:37:31 -0800 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2017-01-09 19:41:07 +0100 |
commit | 92c2b671848e7816455ba5374e98913d920f3257 (patch) | |
tree | a28248ac8382d86bf500416d99232c2ee095e816 | |
parent | d83bb5a46dedc39a1226272bec4eb47867ba25d4 (diff) | |
download | lwn-92c2b671848e7816455ba5374e98913d920f3257.tar.gz lwn-92c2b671848e7816455ba5374e98913d920f3257.zip |
pinctrl: core: Make dt_free_map optional
If the pin controller driver is using devm_kzalloc, there may not be
anything to do for dt_free_map. Let's make it optional to avoid
unncessary boilerplate code.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/pinctrl/core.c | 3 | ||||
-rw-r--r-- | drivers/pinctrl/devicetree.c | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/drivers/pinctrl/core.c b/drivers/pinctrl/core.c index 9f305ac06275..5b1ab06d92c2 100644 --- a/drivers/pinctrl/core.c +++ b/drivers/pinctrl/core.c @@ -1913,9 +1913,6 @@ static int pinctrl_check_ops(struct pinctrl_dev *pctldev) !ops->get_group_name) return -EINVAL; - if (ops->dt_node_to_map && !ops->dt_free_map) - return -EINVAL; - return 0; } diff --git a/drivers/pinctrl/devicetree.c b/drivers/pinctrl/devicetree.c index e082bddad83a..0e5c9f14a706 100644 --- a/drivers/pinctrl/devicetree.c +++ b/drivers/pinctrl/devicetree.c @@ -42,7 +42,8 @@ static void dt_free_map(struct pinctrl_dev *pctldev, { if (pctldev) { const struct pinctrl_ops *ops = pctldev->desc->pctlops; - ops->dt_free_map(pctldev, map, num_maps); + if (ops->dt_free_map) + ops->dt_free_map(pctldev, map, num_maps); } else { /* There is no pctldev for PIN_MAP_TYPE_DUMMY_STATE */ kfree(map); |