Commit 152a81a0 authored by Saravana Kannan's avatar Saravana Kannan Committed by Krzysztof Kozlowski
Browse files

pinctrl: samsung: Finish initializing the gpios before registering them



As soon as a gpio is registered, it should be usable by a consumer. So,
do all the initialization before registering the gpios. Without this
change, a consumer can request a GPIO IRQ and have the gpio to IRQ
mapping fail.

Signed-off-by: default avatarSaravana Kannan <saravanak@google.com>
Reviewed-by: default avatarSam Protsenko <semen.protsenko@linaro.org>
Reviewed-by: default avatarChanho Park <chanho61.park@samsung.com>
Tested-by: default avatarChanho Park <chanho61.park@samsung.com>
Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20220727013349.3056826-1-saravanak@google.com
parent 568035b0
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1166,15 +1166,15 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
	if (ret)
		goto err_put_banks;

	ret = samsung_gpiolib_register(pdev, drvdata);
	if (ret)
		goto err_unregister;

	if (ctrl->eint_gpio_init)
		ctrl->eint_gpio_init(drvdata);
	if (ctrl->eint_wkup_init)
		ctrl->eint_wkup_init(drvdata);

	ret = samsung_gpiolib_register(pdev, drvdata);
	if (ret)
		goto err_unregister;

	platform_set_drvdata(pdev, drvdata);

	return 0;