Kconfig: reduce the amount of power sequencing noise

Kconfig will ask the user twice about power sequencing: once for the QCom
WCN power sequencing driver and then again for the PCI power control
driver using it.

Let's automate the selection of PCI_PWRCTL by introducing a new hidden
symbol: HAVE_PWRCTL which should be selected by all platforms that have
the need to include PCI power control code (right now: only ARCH_QCOM).

The pwrseq-based PCI pwrctl driver itself will then be selected by the
drivers binding to devices that may require external handling of the
power-up sequence (currently: ath11k and ath12k) based on the value
of HAVE_PWRCTL.

Make all PCI pwrctl Kconfig symbols hidden so that no questions are
asked during configuration.

Fixes: 4565d2652a ("PCI/pwrctl: Add PCI power control core code")
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Closes: https://lore.kernel.org/lkml/CAHk-=wjWc5dzcj2O1tEgNHY1rnQW63JwtuZi_vAZPqy6wqpoUQ@mail.gmail.com/
Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com> # drivers/net/wireless/ath
Link: https://lore.kernel.org/r/20240717142803.53248-1-brgl@bgdev.pl
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
This commit is contained in:
Bartosz Golaszewski 2024-07-17 16:28:03 +02:00
parent a19ce320c3
commit ed70aaac7c
4 changed files with 6 additions and 8 deletions

View File

@ -267,6 +267,7 @@ config ARCH_QCOM
bool "Qualcomm Platforms"
select GPIOLIB
select PINCTRL
select HAVE_PWRCTL
help
This enables support for the ARMv8 based Qualcomm chipsets.

View File

@ -24,6 +24,7 @@ config ATH11K_PCI
select MHI_BUS
select QRTR
select QRTR_MHI
select PCI_PWRCTL_PWRSEQ if HAVE_PWRCTL
help
This module adds support for PCIE bus

View File

@ -7,6 +7,7 @@ config ATH12K
select MHI_BUS
select QRTR
select QRTR_MHI
select PCI_PWRCTL_PWRSEQ if HAVE_PWRCTL
help
Enable support for Qualcomm Technologies Wi-Fi 7 (IEEE
802.11be) family of chipsets, for example WCN7850 and

View File

@ -1,17 +1,12 @@
# SPDX-License-Identifier: GPL-2.0-only
menu "PCI Power control drivers"
config HAVE_PWRCTL
bool
config PCI_PWRCTL
tristate
config PCI_PWRCTL_PWRSEQ
tristate "PCI Power Control driver using the Power Sequencing subsystem"
tristate
select POWER_SEQUENCING
select PCI_PWRCTL
default m if ((ATH11K_PCI || ATH12K) && ARCH_QCOM)
help
Enable support for the PCI power control driver for device
drivers using the Power Sequencing subsystem.
endmenu