]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
power: sequencing: request the WLAN enable GPIO as-is
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tue, 13 Aug 2024 19:07:50 +0000 (21:07 +0200)
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>
Mon, 19 Aug 2024 07:55:53 +0000 (09:55 +0200)
If the WCN module is powered up before linux boots and the ath11k driver
probes at the same time as the power sequencing driver, we may end up
driving the wlan-enable GPIO low in the latter, breaking the start-up of
the WLAN module. Request the wlan-enable GPIO as-is so that if the WLAN
module is already starting/started, we leave it alone.

Fixes: 2f1630f437df ("power: pwrseq: add a driver for the PMU module on the QCom WCN chipsets")
Reported-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Link: https://lore.kernel.org/r/20240813190751.155035-1-brgl@bgdev.pl
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
drivers/power/sequencing/pwrseq-qcom-wcn.c

index 42dacfda745e4ac3f20febb7b46fc7c9ab628966..d786cbf1b2cd647afb33033ecc93d7aa11ce9e0c 100644 (file)
@@ -283,7 +283,7 @@ static int pwrseq_qcom_wcn_probe(struct platform_device *pdev)
                                     "Failed to get the Bluetooth enable GPIO\n");
 
        ctx->wlan_gpio = devm_gpiod_get_optional(dev, "wlan-enable",
-                                                GPIOD_OUT_LOW);
+                                                GPIOD_ASIS);
        if (IS_ERR(ctx->wlan_gpio))
                return dev_err_probe(dev, PTR_ERR(ctx->wlan_gpio),
                                     "Failed to get the WLAN enable GPIO\n");