Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pinctrl: make pinctrl_register() return proper error code

Currently, pinctrl_register() just returns NULL on error, so the
callers can not know the exact reason of the failure.

Some of the pinctrl drivers return -EINVAL, some -ENODEV, and some
-ENOMEM on error of pinctrl_register(), although the error code
might be different from the real cause of the error.

This commit reworks pinctrl_register() to return the appropriate
error code and modifies all of the pinctrl drivers to use IS_ERR()
for the error checking and PTR_ERR() for getting the error code.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Acked-by: Patrice Chotard <patrice.chotard@st.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Acked-by: Heiko Stuebner <heiko@sntech.de>
Tested-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Acked-by: Lee Jones <lee@kernel.org>
Acked-by: Sören Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Ray Jui <rjui@broadcom.com>
Acked-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Acked-by: Hongzhou Yang <hongzhou.yang@mediatek.com>
Acked-by: Wei Chen <Wei.Chen@csr.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Masahiro Yamada and committed by
Linus Walleij
323de9ef e73ac02d

+98 -95
+2 -2
drivers/pinctrl/bcm/pinctrl-bcm281xx.c
··· 1425 1425 pctl = pinctrl_register(&bcm281xx_pinctrl_desc, 1426 1426 &pdev->dev, 1427 1427 pdata); 1428 - if (!pctl) { 1428 + if (IS_ERR(pctl)) { 1429 1429 dev_err(&pdev->dev, "Failed to register pinctrl\n"); 1430 - return -ENODEV; 1430 + return PTR_ERR(pctl); 1431 1431 } 1432 1432 1433 1433 platform_set_drvdata(pdev, pdata);
+2 -2
drivers/pinctrl/bcm/pinctrl-bcm2835.c
··· 1036 1036 } 1037 1037 1038 1038 pc->pctl_dev = pinctrl_register(&bcm2835_pinctrl_desc, dev, pc); 1039 - if (!pc->pctl_dev) { 1039 + if (IS_ERR(pc->pctl_dev)) { 1040 1040 gpiochip_remove(&pc->gpio_chip); 1041 - return -EINVAL; 1041 + return PTR_ERR(pc->pctl_dev); 1042 1042 } 1043 1043 1044 1044 pc->gpio_range = bcm2835_pinctrl_gpio_range;
+2 -2
drivers/pinctrl/bcm/pinctrl-cygnus-gpio.c
··· 748 748 pctldesc->confops = &cygnus_pconf_ops; 749 749 750 750 chip->pctl = pinctrl_register(pctldesc, chip->dev, chip); 751 - if (!chip->pctl) { 751 + if (IS_ERR(chip->pctl)) { 752 752 dev_err(chip->dev, "unable to register pinctrl device\n"); 753 - return -EINVAL; 753 + return PTR_ERR(chip->pctl); 754 754 } 755 755 756 756 return 0;
+2 -2
drivers/pinctrl/bcm/pinctrl-cygnus-mux.c
··· 989 989 990 990 pinctrl->pctl = pinctrl_register(&cygnus_pinctrl_desc, &pdev->dev, 991 991 pinctrl); 992 - if (!pinctrl->pctl) { 992 + if (IS_ERR(pinctrl->pctl)) { 993 993 dev_err(&pdev->dev, "unable to register Cygnus IOMUX pinctrl\n"); 994 - return -EINVAL; 994 + return PTR_ERR(pinctrl->pctl); 995 995 } 996 996 997 997 return 0;
+2 -2
drivers/pinctrl/berlin/berlin.c
··· 320 320 } 321 321 322 322 pctrl->pctrl_dev = pinctrl_register(&berlin_pctrl_desc, dev, pctrl); 323 - if (!pctrl->pctrl_dev) { 323 + if (IS_ERR(pctrl->pctrl_dev)) { 324 324 dev_err(dev, "failed to register pinctrl driver\n"); 325 - return -EINVAL; 325 + return PTR_ERR(pctrl->pctrl_dev); 326 326 } 327 327 328 328 return 0;
+10 -7
drivers/pinctrl/core.c
··· 1706 1706 int ret; 1707 1707 1708 1708 if (!pctldesc) 1709 - return NULL; 1709 + return ERR_PTR(-EINVAL); 1710 1710 if (!pctldesc->name) 1711 - return NULL; 1711 + return ERR_PTR(-EINVAL); 1712 1712 1713 1713 pctldev = kzalloc(sizeof(*pctldev), GFP_KERNEL); 1714 1714 if (pctldev == NULL) { 1715 1715 dev_err(dev, "failed to alloc struct pinctrl_dev\n"); 1716 - return NULL; 1716 + return ERR_PTR(-ENOMEM); 1717 1717 } 1718 1718 1719 1719 /* Initialize pin control device struct */ ··· 1726 1726 mutex_init(&pctldev->mutex); 1727 1727 1728 1728 /* check core ops for sanity */ 1729 - if (pinctrl_check_ops(pctldev)) { 1729 + ret = pinctrl_check_ops(pctldev); 1730 + if (ret) { 1730 1731 dev_err(dev, "pinctrl ops lacks necessary functions\n"); 1731 1732 goto out_err; 1732 1733 } 1733 1734 1734 1735 /* If we're implementing pinmuxing, check the ops for sanity */ 1735 1736 if (pctldesc->pmxops) { 1736 - if (pinmux_check_ops(pctldev)) 1737 + ret = pinmux_check_ops(pctldev); 1738 + if (ret) 1737 1739 goto out_err; 1738 1740 } 1739 1741 1740 1742 /* If we're implementing pinconfig, check the ops for sanity */ 1741 1743 if (pctldesc->confops) { 1742 - if (pinconf_check_ops(pctldev)) 1744 + ret = pinconf_check_ops(pctldev); 1745 + if (ret) 1743 1746 goto out_err; 1744 1747 } 1745 1748 ··· 1788 1785 out_err: 1789 1786 mutex_destroy(&pctldev->mutex); 1790 1787 kfree(pctldev); 1791 - return NULL; 1788 + return ERR_PTR(ret); 1792 1789 } 1793 1790 EXPORT_SYMBOL_GPL(pinctrl_register); 1794 1791
+2 -2
drivers/pinctrl/freescale/pinctrl-imx.c
··· 727 727 ipctl->dev = info->dev; 728 728 platform_set_drvdata(pdev, ipctl); 729 729 ipctl->pctl = pinctrl_register(&imx_pinctrl_desc, &pdev->dev, ipctl); 730 - if (!ipctl->pctl) { 730 + if (IS_ERR(ipctl->pctl)) { 731 731 dev_err(&pdev->dev, "could not register IMX pinctrl driver\n"); 732 - return -EINVAL; 732 + return PTR_ERR(ipctl->pctl); 733 733 } 734 734 735 735 dev_info(&pdev->dev, "initialized IMX pinctrl driver\n");
+2 -2
drivers/pinctrl/freescale/pinctrl-imx1-core.c
··· 633 633 ipctl->dev = info->dev; 634 634 platform_set_drvdata(pdev, ipctl); 635 635 ipctl->pctl = pinctrl_register(pctl_desc, &pdev->dev, ipctl); 636 - if (!ipctl->pctl) { 636 + if (IS_ERR(ipctl->pctl)) { 637 637 dev_err(&pdev->dev, "could not register IMX pinctrl driver\n"); 638 - return -EINVAL; 638 + return PTR_ERR(ipctl->pctl); 639 639 } 640 640 641 641 ret = of_platform_populate(pdev->dev.of_node, NULL, NULL, &pdev->dev);
+2 -2
drivers/pinctrl/freescale/pinctrl-mxs.c
··· 540 540 } 541 541 542 542 d->pctl = pinctrl_register(&mxs_pinctrl_desc, &pdev->dev, d); 543 - if (!d->pctl) { 543 + if (IS_ERR(d->pctl)) { 544 544 dev_err(&pdev->dev, "Couldn't register MXS pinctrl driver\n"); 545 - ret = -EINVAL; 545 + ret = PTR_ERR(d->pctl); 546 546 goto err; 547 547 } 548 548
+2 -2
drivers/pinctrl/intel/pinctrl-cherryview.c
··· 1489 1489 pctrl->pctldesc.npins = pctrl->community->npins; 1490 1490 1491 1491 pctrl->pctldev = pinctrl_register(&pctrl->pctldesc, &pdev->dev, pctrl); 1492 - if (!pctrl->pctldev) { 1492 + if (IS_ERR(pctrl->pctldev)) { 1493 1493 dev_err(&pdev->dev, "failed to register pinctrl driver\n"); 1494 - return -ENODEV; 1494 + return PTR_ERR(pctrl->pctldev); 1495 1495 } 1496 1496 1497 1497 ret = chv_gpio_probe(pctrl, irq);
+2 -2
drivers/pinctrl/intel/pinctrl-intel.c
··· 1021 1021 pctrl->pctldesc.npins = pctrl->soc->npins; 1022 1022 1023 1023 pctrl->pctldev = pinctrl_register(&pctrl->pctldesc, &pdev->dev, pctrl); 1024 - if (!pctrl->pctldev) { 1024 + if (IS_ERR(pctrl->pctldev)) { 1025 1025 dev_err(&pdev->dev, "failed to register pinctrl driver\n"); 1026 - return -ENODEV; 1026 + return PTR_ERR(pctrl->pctldev); 1027 1027 } 1028 1028 1029 1029 ret = intel_gpio_probe(pctrl, irq);
+2 -2
drivers/pinctrl/mediatek/pinctrl-mtk-common.c
··· 1269 1269 mtk_pctrl_desc.npins = pctl->devdata->npins; 1270 1270 pctl->dev = &pdev->dev; 1271 1271 pctl->pctl_dev = pinctrl_register(&mtk_pctrl_desc, &pdev->dev, pctl); 1272 - if (!pctl->pctl_dev) { 1272 + if (IS_ERR(pctl->pctl_dev)) { 1273 1273 dev_err(&pdev->dev, "couldn't register pinctrl driver\n"); 1274 - return -EINVAL; 1274 + return PTR_ERR(pctl->pctl_dev); 1275 1275 } 1276 1276 1277 1277 pctl->chip = devm_kzalloc(&pdev->dev, sizeof(*pctl->chip), GFP_KERNEL);
+2 -2
drivers/pinctrl/meson/pinctrl-meson.c
··· 738 738 pc->desc.npins = pc->data->num_pins; 739 739 740 740 pc->pcdev = pinctrl_register(&pc->desc, pc->dev, pc); 741 - if (!pc->pcdev) { 741 + if (IS_ERR(pc->pcdev)) { 742 742 dev_err(pc->dev, "can't register pinctrl device"); 743 - return -EINVAL; 743 + return PTR_ERR(pc->pcdev); 744 744 } 745 745 746 746 ret = meson_gpiolib_register(pc);
+2 -2
drivers/pinctrl/mvebu/pinctrl-mvebu.c
··· 706 706 } 707 707 708 708 pctl->pctldev = pinctrl_register(&pctl->desc, &pdev->dev, pctl); 709 - if (!pctl->pctldev) { 709 + if (IS_ERR(pctl->pctldev)) { 710 710 dev_err(&pdev->dev, "unable to register pinctrl driver\n"); 711 - return -EINVAL; 711 + return PTR_ERR(pctl->pctldev); 712 712 } 713 713 714 714 dev_info(&pdev->dev, "registered pinctrl driver\n");
+2 -2
drivers/pinctrl/nomadik/pinctrl-abx500.c
··· 1235 1235 abx500_pinctrl_desc.pins = pct->soc->pins; 1236 1236 abx500_pinctrl_desc.npins = pct->soc->npins; 1237 1237 pct->pctldev = pinctrl_register(&abx500_pinctrl_desc, &pdev->dev, pct); 1238 - if (!pct->pctldev) { 1238 + if (IS_ERR(pct->pctldev)) { 1239 1239 dev_err(&pdev->dev, 1240 1240 "could not register abx500 pinctrl driver\n"); 1241 - ret = -EINVAL; 1241 + ret = PTR_ERR(pct->pctldev); 1242 1242 goto out_rem_chip; 1243 1243 } 1244 1244 dev_info(&pdev->dev, "registered pin controller\n");
+2 -2
drivers/pinctrl/nomadik/pinctrl-nomadik.c
··· 2029 2029 npct->dev = &pdev->dev; 2030 2030 2031 2031 npct->pctl = pinctrl_register(&nmk_pinctrl_desc, &pdev->dev, npct); 2032 - if (!npct->pctl) { 2032 + if (IS_ERR(npct->pctl)) { 2033 2033 dev_err(&pdev->dev, "could not register Nomadik pinctrl driver\n"); 2034 - return -EINVAL; 2034 + return PTR_ERR(npct->pctl); 2035 2035 } 2036 2036 2037 2037 /* We will handle a range of GPIO pins */
+2 -2
drivers/pinctrl/pinctrl-adi2.c
··· 1070 1070 1071 1071 /* Now register the pin controller and all pins it handles */ 1072 1072 pinctrl->pctl = pinctrl_register(&adi_pinmux_desc, &pdev->dev, pinctrl); 1073 - if (!pinctrl->pctl) { 1073 + if (IS_ERR(pinctrl->pctl)) { 1074 1074 dev_err(&pdev->dev, "could not register pinctrl ADI2 driver\n"); 1075 - return -EINVAL; 1075 + return PTR_ERR(pinctrl->pctl); 1076 1076 } 1077 1077 1078 1078 platform_set_drvdata(pdev, pinctrl);
+2 -2
drivers/pinctrl/pinctrl-amd.c
··· 789 789 amd_pinctrl_desc.name = dev_name(&pdev->dev); 790 790 gpio_dev->pctrl = pinctrl_register(&amd_pinctrl_desc, 791 791 &pdev->dev, gpio_dev); 792 - if (!gpio_dev->pctrl) { 792 + if (IS_ERR(gpio_dev->pctrl)) { 793 793 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 794 - return -ENODEV; 794 + return PTR_ERR(gpio_dev->pctrl); 795 795 } 796 796 797 797 ret = gpiochip_add(&gpio_dev->gc);
+2 -2
drivers/pinctrl/pinctrl-as3722.c
··· 586 586 as3722_pinctrl_desc.npins = ARRAY_SIZE(as3722_pins_desc); 587 587 as_pci->pctl = pinctrl_register(&as3722_pinctrl_desc, 588 588 &pdev->dev, as_pci); 589 - if (!as_pci->pctl) { 589 + if (IS_ERR(as_pci->pctl)) { 590 590 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 591 - return -EINVAL; 591 + return PTR_ERR(as_pci->pctl); 592 592 } 593 593 594 594 as_pci->gpio_chip = as3722_gpio_chip;
+2 -2
drivers/pinctrl/pinctrl-at91.c
··· 1238 1238 platform_set_drvdata(pdev, info); 1239 1239 info->pctl = pinctrl_register(&at91_pinctrl_desc, &pdev->dev, info); 1240 1240 1241 - if (!info->pctl) { 1241 + if (IS_ERR(info->pctl)) { 1242 1242 dev_err(&pdev->dev, "could not register AT91 pinctrl driver\n"); 1243 - return -EINVAL; 1243 + return PTR_ERR(info->pctl); 1244 1244 } 1245 1245 1246 1246 /* We will handle a range of GPIO pins */
+2 -2
drivers/pinctrl/pinctrl-lantiq.c
··· 337 337 info->dev = &pdev->dev; 338 338 339 339 info->pctrl = pinctrl_register(desc, &pdev->dev, info); 340 - if (!info->pctrl) { 340 + if (IS_ERR(info->pctrl)) { 341 341 dev_err(&pdev->dev, "failed to register LTQ pinmux driver\n"); 342 - return -EINVAL; 342 + return PTR_ERR(info->pctrl); 343 343 } 344 344 platform_set_drvdata(pdev, info); 345 345 return 0;
+2 -2
drivers/pinctrl/pinctrl-lpc18xx.c
··· 1180 1180 platform_set_drvdata(pdev, scu); 1181 1181 1182 1182 scu->pctl = pinctrl_register(&lpc18xx_scu_desc, &pdev->dev, scu); 1183 - if (!scu->pctl) { 1183 + if (IS_ERR(scu->pctl)) { 1184 1184 dev_err(&pdev->dev, "Could not register pinctrl driver\n"); 1185 1185 clk_disable_unprepare(scu->clk); 1186 - return -EINVAL; 1186 + return PTR_ERR(scu->pctl); 1187 1187 } 1188 1188 1189 1189 return 0;
+2 -2
drivers/pinctrl/pinctrl-palmas.c
··· 1044 1044 palmas_pinctrl_desc.pins = palmas_pins_desc; 1045 1045 palmas_pinctrl_desc.npins = ARRAY_SIZE(palmas_pins_desc); 1046 1046 pci->pctl = pinctrl_register(&palmas_pinctrl_desc, &pdev->dev, pci); 1047 - if (!pci->pctl) { 1047 + if (IS_ERR(pci->pctl)) { 1048 1048 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 1049 - return -ENODEV; 1049 + return PTR_ERR(pci->pctl); 1050 1050 } 1051 1051 return 0; 1052 1052 }
+2 -2
drivers/pinctrl/pinctrl-pistachio.c
··· 1474 1474 1475 1475 pctl->pctldev = pinctrl_register(&pistachio_pinctrl_desc, &pdev->dev, 1476 1476 pctl); 1477 - if (!pctl->pctldev) { 1477 + if (IS_ERR(pctl->pctldev)) { 1478 1478 dev_err(&pdev->dev, "Failed to register pinctrl device\n"); 1479 - return -EINVAL; 1479 + return PTR_ERR(pctl->pctldev); 1480 1480 } 1481 1481 1482 1482 ret = pistachio_gpio_register(pctl);
+2 -2
drivers/pinctrl/pinctrl-rockchip.c
··· 1274 1274 return ret; 1275 1275 1276 1276 info->pctl_dev = pinctrl_register(ctrldesc, &pdev->dev, info); 1277 - if (!info->pctl_dev) { 1277 + if (IS_ERR(info->pctl_dev)) { 1278 1278 dev_err(&pdev->dev, "could not register pinctrl driver\n"); 1279 - return -EINVAL; 1279 + return PTR_ERR(info->pctl_dev); 1280 1280 } 1281 1281 1282 1282 for (bank = 0; bank < info->ctrl->nr_banks; ++bank) {
+2 -2
drivers/pinctrl/pinctrl-single.c
··· 1921 1921 goto free; 1922 1922 1923 1923 pcs->pctl = pinctrl_register(&pcs->desc, pcs->dev, pcs); 1924 - if (!pcs->pctl) { 1924 + if (IS_ERR(pcs->pctl)) { 1925 1925 dev_err(pcs->dev, "could not register single pinctrl driver\n"); 1926 - ret = -EINVAL; 1926 + ret = PTR_ERR(pcs->pctl); 1927 1927 goto free; 1928 1928 } 1929 1929
+2 -2
drivers/pinctrl/pinctrl-st.c
··· 1737 1737 pctl_desc->name = dev_name(&pdev->dev); 1738 1738 1739 1739 info->pctl = pinctrl_register(pctl_desc, &pdev->dev, info); 1740 - if (!info->pctl) { 1740 + if (IS_ERR(info->pctl)) { 1741 1741 dev_err(&pdev->dev, "Failed pinctrl registration\n"); 1742 - return -EINVAL; 1742 + return PTR_ERR(info->pctl); 1743 1743 } 1744 1744 1745 1745 for (i = 0; i < info->nbanks; i++)
+2 -2
drivers/pinctrl/pinctrl-tb10x.c
··· 807 807 } 808 808 809 809 state->pctl = pinctrl_register(&tb10x_pindesc, dev, state); 810 - if (!state->pctl) { 810 + if (IS_ERR(state->pctl)) { 811 811 dev_err(dev, "could not register TB10x pin driver\n"); 812 - ret = -EINVAL; 812 + ret = PTR_ERR(state->pctl); 813 813 goto fail; 814 814 } 815 815
+2 -2
drivers/pinctrl/pinctrl-tegra-xusb.c
··· 922 922 padctl->desc.owner = THIS_MODULE; 923 923 924 924 padctl->pinctrl = pinctrl_register(&padctl->desc, &pdev->dev, padctl); 925 - if (!padctl->pinctrl) { 925 + if (IS_ERR(padctl->pinctrl)) { 926 926 dev_err(&pdev->dev, "failed to register pincontrol\n"); 927 - err = -ENODEV; 927 + err = PTR_ERR(padctl->pinctrl); 928 928 goto reset; 929 929 } 930 930
+2 -2
drivers/pinctrl/pinctrl-tegra.c
··· 703 703 } 704 704 705 705 pmx->pctl = pinctrl_register(&tegra_pinctrl_desc, &pdev->dev, pmx); 706 - if (!pmx->pctl) { 706 + if (IS_ERR(pmx->pctl)) { 707 707 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 708 - return -ENODEV; 708 + return PTR_ERR(pmx->pctl); 709 709 } 710 710 711 711 pinctrl_add_gpio_range(pmx->pctl, &tegra_pinctrl_gpio_range);
+2 -2
drivers/pinctrl/pinctrl-tz1090-pdc.c
··· 948 948 return PTR_ERR(pmx->regs); 949 949 950 950 pmx->pctl = pinctrl_register(&tz1090_pdc_pinctrl_desc, &pdev->dev, pmx); 951 - if (!pmx->pctl) { 951 + if (IS_ERR(pmx->pctl)) { 952 952 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 953 - return -ENODEV; 953 + return PTR_ERR(pmx->pctl); 954 954 } 955 955 956 956 platform_set_drvdata(pdev, pmx);
+2 -2
drivers/pinctrl/pinctrl-tz1090.c
··· 1963 1963 return PTR_ERR(pmx->regs); 1964 1964 1965 1965 pmx->pctl = pinctrl_register(&tz1090_pinctrl_desc, &pdev->dev, pmx); 1966 - if (!pmx->pctl) { 1966 + if (IS_ERR(pmx->pctl)) { 1967 1967 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 1968 - return -ENODEV; 1968 + return PTR_ERR(pmx->pctl); 1969 1969 } 1970 1970 1971 1971 platform_set_drvdata(pdev, pmx);
+2 -2
drivers/pinctrl/pinctrl-u300.c
··· 1068 1068 return PTR_ERR(upmx->virtbase); 1069 1069 1070 1070 upmx->pctl = pinctrl_register(&u300_pmx_desc, &pdev->dev, upmx); 1071 - if (!upmx->pctl) { 1071 + if (IS_ERR(upmx->pctl)) { 1072 1072 dev_err(&pdev->dev, "could not register U300 pinmux driver\n"); 1073 - return -EINVAL; 1073 + return PTR_ERR(upmx->pctl); 1074 1074 } 1075 1075 1076 1076 platform_set_drvdata(pdev, upmx);
+2 -2
drivers/pinctrl/pinctrl-zynq.c
··· 1196 1196 pctrl->nfuncs = ARRAY_SIZE(zynq_pmux_functions); 1197 1197 1198 1198 pctrl->pctrl = pinctrl_register(&zynq_desc, &pdev->dev, pctrl); 1199 - if (!pctrl->pctrl) 1200 - return -ENOMEM; 1199 + if (IS_ERR(pctrl->pctrl)) 1200 + return PTR_ERR(pctrl->pctrl); 1201 1201 1202 1202 platform_set_drvdata(pdev, pctrl); 1203 1203
+2 -2
drivers/pinctrl/qcom/pinctrl-msm.c
··· 906 906 msm_pinctrl_desc.pins = pctrl->soc->pins; 907 907 msm_pinctrl_desc.npins = pctrl->soc->npins; 908 908 pctrl->pctrl = pinctrl_register(&msm_pinctrl_desc, &pdev->dev, pctrl); 909 - if (!pctrl->pctrl) { 909 + if (IS_ERR(pctrl->pctrl)) { 910 910 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 911 - return -ENODEV; 911 + return PTR_ERR(pctrl->pctrl); 912 912 } 913 913 914 914 ret = msm_gpio_init(pctrl);
+2 -2
drivers/pinctrl/qcom/pinctrl-spmi-gpio.c
··· 776 776 state->chip.can_sleep = false; 777 777 778 778 state->ctrl = pinctrl_register(pctrldesc, dev, state); 779 - if (!state->ctrl) 780 - return -ENODEV; 779 + if (IS_ERR(state->ctrl)) 780 + return PTR_ERR(state->ctrl); 781 781 782 782 ret = gpiochip_add(&state->chip); 783 783 if (ret) {
+2 -2
drivers/pinctrl/qcom/pinctrl-spmi-mpp.c
··· 890 890 state->chip.can_sleep = false; 891 891 892 892 state->ctrl = pinctrl_register(pctrldesc, dev, state); 893 - if (!state->ctrl) 894 - return -ENODEV; 893 + if (IS_ERR(state->ctrl)) 894 + return PTR_ERR(state->ctrl); 895 895 896 896 ret = gpiochip_add(&state->chip); 897 897 if (ret) {
+2 -2
drivers/pinctrl/samsung/pinctrl-exynos5440.c
··· 822 822 return ret; 823 823 824 824 pctl_dev = pinctrl_register(ctrldesc, &pdev->dev, priv); 825 - if (!pctl_dev) { 825 + if (IS_ERR(pctl_dev)) { 826 826 dev_err(&pdev->dev, "could not register pinctrl driver\n"); 827 - return -EINVAL; 827 + return PTR_ERR(pctl_dev); 828 828 } 829 829 830 830 grange.name = "exynos5440-pctrl-gpio-range";
+2 -2
drivers/pinctrl/samsung/pinctrl-samsung.c
··· 873 873 return ret; 874 874 875 875 drvdata->pctl_dev = pinctrl_register(ctrldesc, &pdev->dev, drvdata); 876 - if (!drvdata->pctl_dev) { 876 + if (IS_ERR(drvdata->pctl_dev)) { 877 877 dev_err(&pdev->dev, "could not register pinctrl driver\n"); 878 - return -EINVAL; 878 + return PTR_ERR(drvdata->pctl_dev); 879 879 } 880 880 881 881 for (bank = 0; bank < drvdata->nr_banks; ++bank) {
+2 -2
drivers/pinctrl/sh-pfc/pinctrl.c
··· 625 625 pmx->pctl_desc.npins = pfc->info->nr_pins; 626 626 627 627 pmx->pctl = pinctrl_register(&pmx->pctl_desc, pfc->dev, pmx); 628 - if (pmx->pctl == NULL) 629 - return -EINVAL; 628 + if (IS_ERR(pmx->pctl)) 629 + return PTR_ERR(pmx->pctl); 630 630 631 631 return 0; 632 632 }
+2 -2
drivers/pinctrl/sirf/pinctrl-atlas7.c
··· 4079 4079 4080 4080 /* Now register the pin controller and all pins it handles */ 4081 4081 pmx->pctl = pinctrl_register(&pmx->pctl_desc, &pdev->dev, pmx); 4082 - if (!pmx->pctl) { 4082 + if (IS_ERR(pmx->pctl)) { 4083 4083 dev_err(&pdev->dev, "could not register atlas7 pinmux driver\n"); 4084 - ret = -EINVAL; 4084 + ret = PTR_ERR(pmx->pctl); 4085 4085 goto unmap_io; 4086 4086 } 4087 4087
+2 -2
drivers/pinctrl/sirf/pinctrl-sirf.c
··· 310 310 311 311 /* Now register the pin controller and all pins it handles */ 312 312 spmx->pmx = pinctrl_register(&sirfsoc_pinmux_desc, &pdev->dev, spmx); 313 - if (!spmx->pmx) { 313 + if (IS_ERR(spmx->pmx)) { 314 314 dev_err(&pdev->dev, "could not register SIRFSOC pinmux driver\n"); 315 - ret = -EINVAL; 315 + ret = PTR_ERR(spmx->pmx); 316 316 goto out_no_pmx; 317 317 } 318 318
+2 -2
drivers/pinctrl/spear/pinctrl-spear.c
··· 396 396 spear_pinctrl_desc.npins = machdata->npins; 397 397 398 398 pmx->pctl = pinctrl_register(&spear_pinctrl_desc, &pdev->dev, pmx); 399 - if (!pmx->pctl) { 399 + if (IS_ERR(pmx->pctl)) { 400 400 dev_err(&pdev->dev, "Couldn't register pinctrl driver\n"); 401 - return -ENODEV; 401 + return PTR_ERR(pmx->pctl); 402 402 } 403 403 404 404 return 0;
+2 -2
drivers/pinctrl/sunxi/pinctrl-sunxi.c
··· 911 911 912 912 pctl->pctl_dev = pinctrl_register(pctrl_desc, 913 913 &pdev->dev, pctl); 914 - if (!pctl->pctl_dev) { 914 + if (IS_ERR(pctl->pctl_dev)) { 915 915 dev_err(&pdev->dev, "couldn't register pinctrl driver\n"); 916 - return -EINVAL; 916 + return PTR_ERR(pctl->pctl_dev); 917 917 } 918 918 919 919 pctl->chip = devm_kzalloc(&pdev->dev, sizeof(*pctl->chip), GFP_KERNEL);
+2 -2
drivers/pinctrl/vt8500/pinctrl-wmt.c
··· 594 594 data->dev = &pdev->dev; 595 595 596 596 data->pctl_dev = pinctrl_register(&wmt_desc, &pdev->dev, data); 597 - if (!data->pctl_dev) { 597 + if (IS_ERR(data->pctl_dev)) { 598 598 dev_err(&pdev->dev, "Failed to register pinctrl\n"); 599 - return -EINVAL; 599 + return PTR_ERR(data->pctl_dev); 600 600 } 601 601 602 602 err = gpiochip_add(&data->gpio_chip);