mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
power: sequencing: qcom-wcn: set the wlan-enable GPIO to output
Commita9aaf1ff88
("power: sequencing: request the WLAN enable GPIO as-is") broke WLAN on boards on which the wlan-enable GPIO enabling the wifi module isn't in output mode by default. We need to set direction to output while retaining the value that was already set to keep the ath module on if it's already started. Fixes:a9aaf1ff88
("power: sequencing: request the WLAN enable GPIO as-is") Link: https://lore.kernel.org/r/20240823115500.37280-1-brgl@bgdev.pl Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
This commit is contained in:
parent
5be63fc19f
commit
d8b762070c
@ -288,6 +288,13 @@ static int pwrseq_qcom_wcn_probe(struct platform_device *pdev)
|
|||||||
return dev_err_probe(dev, PTR_ERR(ctx->wlan_gpio),
|
return dev_err_probe(dev, PTR_ERR(ctx->wlan_gpio),
|
||||||
"Failed to get the WLAN enable GPIO\n");
|
"Failed to get the WLAN enable GPIO\n");
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set direction to output but keep the current value in order to not
|
||||||
|
* disable the WLAN module accidentally if it's already powered on.
|
||||||
|
*/
|
||||||
|
gpiod_direction_output(ctx->wlan_gpio,
|
||||||
|
gpiod_get_value_cansleep(ctx->wlan_gpio));
|
||||||
|
|
||||||
ctx->clk = devm_clk_get_optional(dev, NULL);
|
ctx->clk = devm_clk_get_optional(dev, NULL);
|
||||||
if (IS_ERR(ctx->clk))
|
if (IS_ERR(ctx->clk))
|
||||||
return dev_err_probe(dev, PTR_ERR(ctx->clk),
|
return dev_err_probe(dev, PTR_ERR(ctx->clk),
|
||||||
|
Loading…
Reference in New Issue
Block a user