Re: [PATCH 0/5] PCI/pwrctl: Ensure that the pwrctl drivers are probed before PCI client drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 10/23/2024 4:00 PM, Bartosz Golaszewski wrote:
On Tue, 22 Oct 2024 at 12:28, Manivannan Sadhasivam via B4 Relay
<devnull+manivannan.sadhasivam.linaro.org@xxxxxxxxxx> wrote:

Hi,

This series reworks the PCI/pwrctl integration to ensure that the pwrctl drivers
are always probed before the PCI client drivers. This series addresses a race
condition when both pwrctl and pwrctl/pwrseq drivers probe parallely (even when
the later one probes last). One such issue was reported for the Qcom X13s
platform with WLAN module and fixed with 'commit a9aaf1ff88a8 ("power:
sequencing: request the WLAN enable GPIO as-is")'.

Though the issue was fixed with a hack in the pwrseq driver, it was clear that
the issue is applicable to all pwrctl drivers. Hence, this series tries to
address the issue in the PCI/pwrctl integration.

- Mani

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>
---
Manivannan Sadhasivam (5):
       PCI/pwrctl: Use of_platform_device_create() to create pwrctl devices
       PCI/pwrctl: Create pwrctl devices only if at least one power supply is present
       PCI/pwrctl: Ensure that the pwrctl drivers are probed before the PCI client drivers
       PCI/pwrctl: Move pwrctl device creation to its own helper function
       PCI/pwrctl: Remove pwrctl device without iterating over all children of pwrctl parent

  drivers/pci/bus.c         | 64 +++++++++++++++++++++++++++++++++++++++++------
  drivers/pci/of.c          | 27 ++++++++++++++++++++
  drivers/pci/pci.h         |  5 ++++
  drivers/pci/pwrctl/core.c | 10 --------
  drivers/pci/remove.c      | 17 ++++++-------
  5 files changed, 96 insertions(+), 27 deletions(-)
---
base-commit: 48dc7986beb60522eb217c0016f999cc7afaf0b7
change-id: 20241022-pci-pwrctl-rework-a1b024158555

Best regards,
--
Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>



Excellent work, thanks for doing this.

Tested on: sc8280xp-crd, RB5 and sm8450-hdk.

Tested-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>

Just a couple nits from my side under respective patches.

Bart
Tested on: qcs6490-rb3gen board with work in progress qps615 pcie switch

Tested-by: Krishna chaitanya chundru <quic_krichai@xxxxxxxxxxx>

- Krishna Chaitanya.





[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux