linux/drivers/pci/pwrctrl/Kconfig
Manivannan Sadhasivam 9cb64f61ec PCI/pwrctrl: Add PCIe M.2 connector support
Add support for handling PCIe M.2 connectors as Power Sequencing devices.
These connectors are exposed as Power Sequencing devices as they often
support multiple interfaces like PCIe/SATA, USB/UART to the host machine,
and the interfaces may be driven by different client drivers at the same
time.

This driver handles the PCIe interface of these connectors. It first checks
for the presence of the graph port in the Root Port node with the help of
of_graph_is_present() API. If present, it acquires/powers ON the
corresponding pwrseq device.

Once the pwrseq device is powered ON, the driver will skip parsing the Root
Port/Slot resources and register with the pwrctrl framework.

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Link: https://patch.msgid.link/20260128-pci-m2-v7-1-9b3a5fe3d244@oss.qualcomm.com
2026-01-28 10:39:17 -06:00

49 lines
1.3 KiB
Text

# SPDX-License-Identifier: GPL-2.0-only
config HAVE_PWRCTRL
bool
config PCI_PWRCTRL
tristate
config PCI_PWRCTRL_PWRSEQ
tristate
select POWER_SEQUENCING
select PCI_PWRCTRL
config PCI_PWRCTRL_SLOT
tristate "PCI Power Control driver for PCI slots"
select POWER_SEQUENCING
select PCI_PWRCTRL
help
Say Y here to enable the PCI Power Control driver to control the power
state of PCI slots.
This is a generic driver that controls the power state of different
PCI slots. The voltage regulators powering the rails of the PCI slots
are expected to be defined in the devicetree node of the PCI bridge.
config PCI_PWRCTRL_TC9563
tristate "PCI Power Control driver for TC9563 PCIe switch"
select PCI_PWRCTRL
default m if ARCH_QCOM
depends on I2C
help
Say Y here to enable the PCI Power Control driver of TC9563 PCIe
switch.
This driver enables power and configures the TC9563 PCIe switch
through i2c. TC9563 is a PCIe switch which has one upstream and three
downstream ports. To one of the downstream ports integrated ethernet
MAC is connected as endpoint device. Other two downstream ports are
supposed to connect to external device.
# deprecated
config HAVE_PWRCTL
bool
select HAVE_PWRCTRL
# deprecated
config PCI_PWRCTL_PWRSEQ
tristate
select PCI_PWRCTRL_PWRSEQ