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

pinctrl: ssbi-mpp: Use devm_pinctrl_register() for pinctrl registration

Use devm_pinctrl_register() for pin control registration and clean
the error path.

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Laxman Dewangan and committed by
Linus Walleij
45078ea0 88edad04

+4 -9
+4 -9
drivers/pinctrl/sunxi/pinctrl-sunxi.c
··· 932 932 pctrl_desc->pctlops = &sunxi_pctrl_ops; 933 933 pctrl_desc->pmxops = &sunxi_pmx_ops; 934 934 935 - pctl->pctl_dev = pinctrl_register(pctrl_desc, 936 - &pdev->dev, pctl); 935 + pctl->pctl_dev = devm_pinctrl_register(&pdev->dev, pctrl_desc, pctl); 937 936 if (IS_ERR(pctl->pctl_dev)) { 938 937 dev_err(&pdev->dev, "couldn't register pinctrl driver\n"); 939 938 return PTR_ERR(pctl->pctl_dev); 940 939 } 941 940 942 941 pctl->chip = devm_kzalloc(&pdev->dev, sizeof(*pctl->chip), GFP_KERNEL); 943 - if (!pctl->chip) { 944 - ret = -ENOMEM; 945 - goto pinctrl_error; 946 - } 942 + if (!pctl->chip) 943 + return -ENOMEM; 947 944 948 945 last_pin = pctl->desc->pins[pctl->desc->npins - 1].pin.number; 949 946 pctl->chip->owner = THIS_MODULE; ··· 962 965 963 966 ret = gpiochip_add_data(pctl->chip, pctl); 964 967 if (ret) 965 - goto pinctrl_error; 968 + return ret; 966 969 967 970 for (i = 0; i < pctl->desc->npins; i++) { 968 971 const struct sunxi_desc_pin *pin = pctl->desc->pins + i; ··· 1038 1041 clk_disable_unprepare(clk); 1039 1042 gpiochip_error: 1040 1043 gpiochip_remove(pctl->chip); 1041 - pinctrl_error: 1042 - pinctrl_unregister(pctl->pctl_dev); 1043 1044 return ret; 1044 1045 }