diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2012-02-01 12:02:47 -0500 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2012-02-01 13:42:35 -0500 |
commit | 9dfac4fd7f8cdcdf734dff2ccc7ca467f53f1cfd (patch) | |
tree | 6a9ee37b2aac4b288c85387d83310e5f9cd9108e /drivers/pinctrl/pinmux.c | |
parent | 8dc6ae4d448758a30cf5fa822d6fe6f4e15a04c6 (diff) |
pinctrl: delete raw device pointers in pinmux maps
After discussion with Mark Brown in an unrelated thread about
ADC lookups, it came to my knowledge that the ability to pass
a struct device * in the regulator consumers is just a
historical artifact, and not really recommended. Since there
are no in-kernel users of these pointers, we just kill them
right now, before someone starts to use them.
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinmux.c')
-rw-r--r-- | drivers/pinctrl/pinmux.c | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/drivers/pinctrl/pinmux.c b/drivers/pinctrl/pinmux.c index 7c3193f7a044..1311f1d22002 100644 --- a/drivers/pinctrl/pinmux.c +++ b/drivers/pinctrl/pinmux.c | |||
@@ -354,7 +354,7 @@ int __init pinmux_register_mappings(struct pinmux_map const *maps, | |||
354 | return -EINVAL; | 354 | return -EINVAL; |
355 | } | 355 | } |
356 | 356 | ||
357 | if (!maps[i].ctrl_dev && !maps[i].ctrl_dev_name) { | 357 | if (!maps[i].ctrl_dev_name) { |
358 | pr_err("failed to register map %s (%d): no pin control device given\n", | 358 | pr_err("failed to register map %s (%d): no pin control device given\n", |
359 | maps[i].name, i); | 359 | maps[i].name, i); |
360 | return -EINVAL; | 360 | return -EINVAL; |
@@ -366,7 +366,7 @@ int __init pinmux_register_mappings(struct pinmux_map const *maps, | |||
366 | return -EINVAL; | 366 | return -EINVAL; |
367 | } | 367 | } |
368 | 368 | ||
369 | if (!maps[i].dev && !maps[i].dev_name) | 369 | if (!maps[i].dev_name) |
370 | pr_debug("add system map %s function %s with no device\n", | 370 | pr_debug("add system map %s function %s with no device\n", |
371 | maps[i].name, | 371 | maps[i].name, |
372 | maps[i].function); | 372 | maps[i].function); |
@@ -721,20 +721,12 @@ struct pinmux *pinmux_get(struct device *dev, const char *name) | |||
721 | /* | 721 | /* |
722 | * First, try to find the pctldev given in the map | 722 | * First, try to find the pctldev given in the map |
723 | */ | 723 | */ |
724 | pctldev = get_pinctrl_dev_from_dev(map->ctrl_dev, | 724 | pctldev = get_pinctrl_dev_from_devname(map->ctrl_dev_name); |
725 | map->ctrl_dev_name); | ||
726 | if (!pctldev) { | 725 | if (!pctldev) { |
727 | const char *devname = NULL; | ||
728 | |||
729 | if (map->ctrl_dev) | ||
730 | devname = dev_name(map->ctrl_dev); | ||
731 | else if (map->ctrl_dev_name) | ||
732 | devname = map->ctrl_dev_name; | ||
733 | |||
734 | pr_warning("could not find a pinctrl device for pinmux function %s, fishy, they shall all have one\n", | 726 | pr_warning("could not find a pinctrl device for pinmux function %s, fishy, they shall all have one\n", |
735 | map->function); | 727 | map->function); |
736 | pr_warning("given pinctrl device name: %s", | 728 | pr_warning("given pinctrl device name: %s", |
737 | devname ? devname : "UNDEFINED"); | 729 | map->ctrl_dev_name); |
738 | 730 | ||
739 | /* Continue to check the other mappings anyway... */ | 731 | /* Continue to check the other mappings anyway... */ |
740 | continue; | 732 | continue; |
@@ -925,7 +917,7 @@ static int pinmux_hog_map(struct pinctrl_dev *pctldev, | |||
925 | struct pinmux *pmx; | 917 | struct pinmux *pmx; |
926 | int ret; | 918 | int ret; |
927 | 919 | ||
928 | if (map->dev || map->dev_name) { | 920 | if (map->dev_name) { |
929 | /* | 921 | /* |
930 | * TODO: the day we have device tree support, we can | 922 | * TODO: the day we have device tree support, we can |
931 | * traverse the device tree and hog to specific device nodes | 923 | * traverse the device tree and hog to specific device nodes |
@@ -996,9 +988,8 @@ int pinmux_hog_maps(struct pinctrl_dev *pctldev) | |||
996 | if (!map->hog_on_boot) | 988 | if (!map->hog_on_boot) |
997 | continue; | 989 | continue; |
998 | 990 | ||
999 | if ((map->ctrl_dev == dev) || | 991 | if (map->ctrl_dev_name && |
1000 | (map->ctrl_dev_name && | 992 | !strcmp(map->ctrl_dev_name, devname)) { |
1001 | !strcmp(map->ctrl_dev_name, devname))) { | ||
1002 | /* OK time to hog! */ | 993 | /* OK time to hog! */ |
1003 | ret = pinmux_hog_map(pctldev, map); | 994 | ret = pinmux_hog_map(pctldev, map); |
1004 | if (ret) | 995 | if (ret) |
@@ -1156,14 +1147,12 @@ static int pinmux_maps_show(struct seq_file *s, void *what) | |||
1156 | struct pinmux_map const *map = &pinmux_maps[i]; | 1147 | struct pinmux_map const *map = &pinmux_maps[i]; |
1157 | 1148 | ||
1158 | seq_printf(s, "%s:\n", map->name); | 1149 | seq_printf(s, "%s:\n", map->name); |
1159 | if (map->dev || map->dev_name) | 1150 | if (map->dev_name) |
1160 | seq_printf(s, " device: %s\n", | 1151 | seq_printf(s, " device: %s\n", |
1161 | map->dev ? dev_name(map->dev) : | ||
1162 | map->dev_name); | 1152 | map->dev_name); |
1163 | else | 1153 | else |
1164 | seq_printf(s, " SYSTEM MUX\n"); | 1154 | seq_printf(s, " SYSTEM MUX\n"); |
1165 | seq_printf(s, " controlling device %s\n", | 1155 | seq_printf(s, " controlling device %s\n", |
1166 | map->ctrl_dev ? dev_name(map->ctrl_dev) : | ||
1167 | map->ctrl_dev_name); | 1156 | map->ctrl_dev_name); |
1168 | seq_printf(s, " function: %s\n", map->function); | 1157 | seq_printf(s, " function: %s\n", map->function); |
1169 | seq_printf(s, " group: %s\n", map->group ? map->group : | 1158 | seq_printf(s, " group: %s\n", map->group ? map->group : |