[PATCH V4 00/22] Enhancements to pcie-tegra194 driver

Manikanta Maddireddy posted 22 patches 1 week, 5 days ago
.../bindings/pci/nvidia,tegra194-pcie-ep.yaml |   6 +-
.../bindings/pci/nvidia,tegra194-pcie.yaml    |   6 +-
drivers/pci/controller/dwc/pcie-designware.c  |   2 +-
drivers/pci/controller/dwc/pcie-designware.h  |   2 +
drivers/pci/controller/dwc/pcie-tegra194.c    | 268 +++++++++++-------
5 files changed, 181 insertions(+), 103 deletions(-)
[PATCH V4 00/22] Enhancements to pcie-tegra194 driver
Posted by Manikanta Maddireddy 1 week, 5 days ago
This series[1] was originally posted by Vidya Sagar, and I have rebased
it onto 6.19.0-rc6-next. I addressed review comments, reworked a patch
and included four new patches. I verified these patches on Jetson AGX
Orin(Tegra234 SoC).

Disabling L1SS capability based on support-clkreq device tree property
is moved to common DWC driver, so I reworked below patch to disable
just L1.2 capability on Tegra234 SoC.
 - PCI: tegra194: Disable L1.2 capability of Tegra234 EP

I added below four new patches to fix bugs, commit message of each
patch has the details on the bug and fix.
 - PCI: tegra194: Add ASPM L1 entrance latency config
 - PCI: tegra194: Use HW version number
 - PCI: tegra194: Fix CBB timeout caused by DBI access before core power-on
 - PCI: tegra194: Disable PERST IRQ only in Endpoint mode 

I added more context in the commit message for below patch based on review
comment in V3.
 - PCI: tegra194: Remove IRQF_ONESHOT flag during Endpoint interrupt registration

Rest of the patches are same as the original V3 series, just rebased them on
6.19.0-rc6-next.

Verification details.
 - I verified both Root port and Endpoint mode controllers on Tegra234 SoC.
 - Basic sanity Link up, configuration space access and BAR access are verified.
 - I verified that ASPM L1.2 capability is disabled for Endpoint mode.
 - I verified suspend to RAM tests with Endpoint mode.

[1] https://patchwork.kernel.org/project/linux-pci/patch/20221013183854.21087-1-vidyas@nvidia.com/

Manikanta Maddireddy (4):
  PCI: tegra194: Add ASPM L1 entrance latency config
  PCI: tegra194: Use HW version number
  PCI: tegra194: Fix CBB timeout caused by DBI access before core
    power-on
  PCI: tegra194: Disable PERST IRQ only in Endpoint mode

Vidya Sagar (18):
  PCI: tegra194: Use devm_gpiod_get_optional() to parse
    "nvidia,refclk-select"
  PCI: tegra194: Drive CLKREQ signal low explicitly
  PCI: tegra194: Fix polling delay for L2 state
  PCI: tegra194: Apply pinctrl settings for both PCIe RP and EP
  PCI: tegra194: Refactor LTSSM state polling on surprise down
  PCI: tegra194: Disable direct speed change for EP
  PCI: tegra194: Calibrate P2U for endpoint mode
  PCI: tegra194: Free resources during controller deinitialization
  PCI: tegra194: Remove IRQF_ONESHOT flag during Endpoint interrupt
    registration
  PCI: tegra194: Enable DMA interrupt
  PCI: tegra194: Enable hardware hot reset mode in Endpoint
  PCI: tegra194: Allow system suspend when the Endpoint link is not up
  PCI: tegra194: Disable L1.2 capability of Tegra234 EP
  PCI: tegra194: Set LTR message request before PCIe link up
  PCI: tegra194: Don't force the device into the D0 state before L2
  PCI: tegra194: Free up EP resources during remove()
  dt-bindings: PCI: tegra194: Add monitor clock support
  PCI: tegra194: Add core monitor clock support

 .../bindings/pci/nvidia,tegra194-pcie-ep.yaml |   6 +-
 .../bindings/pci/nvidia,tegra194-pcie.yaml    |   6 +-
 drivers/pci/controller/dwc/pcie-designware.c  |   2 +-
 drivers/pci/controller/dwc/pcie-designware.h  |   2 +
 drivers/pci/controller/dwc/pcie-tegra194.c    | 268 +++++++++++-------
 5 files changed, 181 insertions(+), 103 deletions(-)

-- 
2.34.1
Re: [PATCH V4 00/22] Enhancements to pcie-tegra194 driver
Posted by Jon Hunter 4 days, 22 hours ago
On 26/01/2026 07:44, Manikanta Maddireddy wrote:
> This series[1] was originally posted by Vidya Sagar, and I have rebased
> it onto 6.19.0-rc6-next. I addressed review comments, reworked a patch
> and included four new patches. I verified these patches on Jetson AGX
> Orin(Tegra234 SoC).
> 
> Disabling L1SS capability based on support-clkreq device tree property
> is moved to common DWC driver, so I reworked below patch to disable
> just L1.2 capability on Tegra234 SoC.
>   - PCI: tegra194: Disable L1.2 capability of Tegra234 EP
> 
> I added below four new patches to fix bugs, commit message of each
> patch has the details on the bug and fix.
>   - PCI: tegra194: Add ASPM L1 entrance latency config
>   - PCI: tegra194: Use HW version number
>   - PCI: tegra194: Fix CBB timeout caused by DBI access before core power-on
>   - PCI: tegra194: Disable PERST IRQ only in Endpoint mode
> 
> I added more context in the commit message for below patch based on review
> comment in V3.
>   - PCI: tegra194: Remove IRQF_ONESHOT flag during Endpoint interrupt registration
> 
> Rest of the patches are same as the original V3 series, just rebased them on
> 6.19.0-rc6-next.
> 
> Verification details.
>   - I verified both Root port and Endpoint mode controllers on Tegra234 SoC.
>   - Basic sanity Link up, configuration space access and BAR access are verified.
>   - I verified that ASPM L1.2 capability is disabled for Endpoint mode.
>   - I verified suspend to RAM tests with Endpoint mode.
> 
> [1] https://patchwork.kernel.org/project/linux-pci/patch/20221013183854.21087-1-vidyas@nvidia.com/


Thanks for sending this out. It would be great to get all these merged. 
The series looks good to me, but I would say that if possible, move all 
the known fixes to the start of the series and adding or enabling new 
features after the fixes (such as 'Add monitor clock support').

Some of the fixes already have a 'Fixes:' tag but we should add the 
fixes tag for others that are also clear fixes.

Thanks
Jon

-- 
nvpublic
Re: [PATCH V4 00/22] Enhancements to pcie-tegra194 driver
Posted by Manivannan Sadhasivam 2 days, 4 hours ago
On Mon, Jan 26, 2026 at 01:14:57PM +0530, Manikanta Maddireddy wrote:
> This series[1] was originally posted by Vidya Sagar, and I have rebased
> it onto 6.19.0-rc6-next. I addressed review comments, reworked a patch
> and included four new patches. I verified these patches on Jetson AGX
> Orin(Tegra234 SoC).
> 
> Disabling L1SS capability based on support-clkreq device tree property
> is moved to common DWC driver, so I reworked below patch to disable
> just L1.2 capability on Tegra234 SoC.
>  - PCI: tegra194: Disable L1.2 capability of Tegra234 EP
> 
> I added below four new patches to fix bugs, commit message of each
> patch has the details on the bug and fix.
>  - PCI: tegra194: Add ASPM L1 entrance latency config
>  - PCI: tegra194: Use HW version number
>  - PCI: tegra194: Fix CBB timeout caused by DBI access before core power-on
>  - PCI: tegra194: Disable PERST IRQ only in Endpoint mode 
> 

Please send the fixes separately. It is hard to review a big series like this. I
don't recommend sending more than 10 patches per series.

- Mani

> I added more context in the commit message for below patch based on review
> comment in V3.
>  - PCI: tegra194: Remove IRQF_ONESHOT flag during Endpoint interrupt registration
> 
> Rest of the patches are same as the original V3 series, just rebased them on
> 6.19.0-rc6-next.
> 
> Verification details.
>  - I verified both Root port and Endpoint mode controllers on Tegra234 SoC.
>  - Basic sanity Link up, configuration space access and BAR access are verified.
>  - I verified that ASPM L1.2 capability is disabled for Endpoint mode.
>  - I verified suspend to RAM tests with Endpoint mode.
> 
> [1] https://patchwork.kernel.org/project/linux-pci/patch/20221013183854.21087-1-vidyas@nvidia.com/
> 
> Manikanta Maddireddy (4):
>   PCI: tegra194: Add ASPM L1 entrance latency config
>   PCI: tegra194: Use HW version number
>   PCI: tegra194: Fix CBB timeout caused by DBI access before core
>     power-on
>   PCI: tegra194: Disable PERST IRQ only in Endpoint mode
> 
> Vidya Sagar (18):
>   PCI: tegra194: Use devm_gpiod_get_optional() to parse
>     "nvidia,refclk-select"
>   PCI: tegra194: Drive CLKREQ signal low explicitly
>   PCI: tegra194: Fix polling delay for L2 state
>   PCI: tegra194: Apply pinctrl settings for both PCIe RP and EP
>   PCI: tegra194: Refactor LTSSM state polling on surprise down
>   PCI: tegra194: Disable direct speed change for EP
>   PCI: tegra194: Calibrate P2U for endpoint mode
>   PCI: tegra194: Free resources during controller deinitialization
>   PCI: tegra194: Remove IRQF_ONESHOT flag during Endpoint interrupt
>     registration
>   PCI: tegra194: Enable DMA interrupt
>   PCI: tegra194: Enable hardware hot reset mode in Endpoint
>   PCI: tegra194: Allow system suspend when the Endpoint link is not up
>   PCI: tegra194: Disable L1.2 capability of Tegra234 EP
>   PCI: tegra194: Set LTR message request before PCIe link up
>   PCI: tegra194: Don't force the device into the D0 state before L2
>   PCI: tegra194: Free up EP resources during remove()
>   dt-bindings: PCI: tegra194: Add monitor clock support
>   PCI: tegra194: Add core monitor clock support
> 
>  .../bindings/pci/nvidia,tegra194-pcie-ep.yaml |   6 +-
>  .../bindings/pci/nvidia,tegra194-pcie.yaml    |   6 +-
>  drivers/pci/controller/dwc/pcie-designware.c  |   2 +-
>  drivers/pci/controller/dwc/pcie-designware.h  |   2 +
>  drivers/pci/controller/dwc/pcie-tegra194.c    | 268 +++++++++++-------
>  5 files changed, 181 insertions(+), 103 deletions(-)
> 
> -- 
> 2.34.1
> 

-- 
மணிவண்ணன் சதாசிவம்