]> www.infradead.org Git - users/dwmw2/linux.git/commit
PCI/pwrctl: Create pwrctl device only if at least one power supply is present
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Fri, 25 Oct 2024 07:54:52 +0000 (13:24 +0530)
committerKrzysztof Wilczyński <kwilczynski@kernel.org>
Thu, 21 Nov 2024 16:01:04 +0000 (16:01 +0000)
commit278dd091e95d428eea0a2c3c517d895b052de5ff
tree58e3a1200529bad546924d90e8f2f063ef37b5ce
parent7582fe07f4ca4c560eb47800b640997f06a8baa2
PCI/pwrctl: Create pwrctl device only if at least one power supply is present

Currently, pwrctl devices are created if the corresponding PCI nodes are
defined in devicetree. But this is not correct, because not all PCI nodes
require pwrctl support. Pwrctl comes into the picture only when the device
requires kernel to manage its power state. This can be determined using the
power supply properties present in the devicetree node of the device.

Add of_pci_supply_present() to check whether the devicetree contains at
least one power supply property for a device. If one is present, create a
pwrctl device for that PCI node.

Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fixes: 8fb18619d910 ("PCI/pwrctl: Create platform devices for child OF nodes of the port node")
Link: https://lore.kernel.org/r/20241025-pci-pwrctl-rework-v2-2-568756156cbe@linaro.org
Tested-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Tested-by: Krishna chaitanya chundru <quic_krichai@quicinc.com>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
[bhelgaas: rename of_pci_is_supply_present() to of_pci_supply_present() for
readability]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Cc: stable+noautosel@kernel.org # Depends on of_platform_device_create() rework
drivers/pci/bus.c
drivers/pci/of.c
drivers/pci/pci.h