[PATCH v3 0/5] PCI: tegra: A couple of cleanups

Anand Moon posted 5 patches 1 month, 1 week ago
.../bindings/pci/nvidia,tegra-pcie.yaml       | 528 ++++++++++++++
.../bindings/pci/nvidia,tegra20-pcie.txt      | 670 ------------------
MAINTAINERS                                   |   2 +-
.../boot/dts/nvidia/tegra186-p2771-0000.dts   |   2 +-
drivers/pci/controller/pci-tegra.c            | 237 +++----
5 files changed, 621 insertions(+), 818 deletions(-)
create mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
delete mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
[PATCH v3 0/5] PCI: tegra: A couple of cleanups
Posted by Anand Moon 1 month, 1 week ago
Hi All,

This small series provides two cleanup patches for the Tegra PCIe driver.
The overall goal is to replace custom, open-coded logic with standard
kernel helper functions.

These changes improve the driver's readability and maintainability by
everaging modern, well-tested APIs for clock management and register
polling.

v3: Fix the DT binding for nvidia,tegra-pcie.yaml
    tried to address issue for Krzysztof and Jon.
    Added missing regulator and new patch to fix the device tree check.
    Added missing entry in MAINTAINERS.

v2: Fix the DT binding for nvidia,tegra-pcie.yaml
    switch back to devm_clk_bulk_get_all to get all the clocks
    improve the commit message.

v1 Added new devicetree binding nvidia,tegra-pcie.yaml file.
   Switch from devm_clk_bulk_get_all() -> devm_clk_bulk_get() api.
   Fixed checkpatch warnings.

Tested on Jetson Nano 4 GB ram.

jetson-nano:~$ lspci -tvv
-[0000:00]-+-01.0-[01]----00.0  Intel Corporation Wireless 8265 / 8275
           \-02.0-[02]----00.0  Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller

v2:   https://lore.kernel.org/linux-tegra/20251215141603.6749-1-linux.amoon@gmail.com/
v1:   https://lore.kernel.org/linux-tegra/20250926072905.126737-1-linux.amoon@gmail.com/
RFC : https://lore.kernel.org/linux-tegra/20250831190055.7952-2-linux.amoon@gmail.com/

Thanks
-Anand

Anand Moon (5):
  dt-bindings: PCI: Convert nvidia,tegra-pcie to DT schema
  arm64: dts: tegra: tegra186-p2771: Fix invalid PCIe nvidia,num-lanes
  PCI: tegra: Simplify clock handling by using clk_bulk*() functions
  PCI: tegra: Use readl_poll_timeout() for link status polling
  PCI: tegra: Use BIT() and GENMASK() macros for register definitions

 .../bindings/pci/nvidia,tegra-pcie.yaml       | 528 ++++++++++++++
 .../bindings/pci/nvidia,tegra20-pcie.txt      | 670 ------------------
 MAINTAINERS                                   |   2 +-
 .../boot/dts/nvidia/tegra186-p2771-0000.dts   |   2 +-
 drivers/pci/controller/pci-tegra.c            | 237 +++----
 5 files changed, 621 insertions(+), 818 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
 delete mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt


base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
-- 
2.50.1
Re: [PATCH v3 0/5] PCI: tegra: A couple of cleanups
Posted by Manivannan Sadhasivam 4 weeks ago
On Tue, Feb 24, 2026 at 05:48:56PM +0530, Anand Moon wrote:
> Hi All,
> 
> This small series provides two cleanup patches for the Tegra PCIe driver.
> The overall goal is to replace custom, open-coded logic with standard
> kernel helper functions.
> 
> These changes improve the driver's readability and maintainability by
> everaging modern, well-tested APIs for clock management and register
> polling.
> 
> v3: Fix the DT binding for nvidia,tegra-pcie.yaml
>     tried to address issue for Krzysztof and Jon.
>     Added missing regulator and new patch to fix the device tree check.
>     Added missing entry in MAINTAINERS.
> 
> v2: Fix the DT binding for nvidia,tegra-pcie.yaml
>     switch back to devm_clk_bulk_get_all to get all the clocks
>     improve the commit message.
> 
> v1 Added new devicetree binding nvidia,tegra-pcie.yaml file.
>    Switch from devm_clk_bulk_get_all() -> devm_clk_bulk_get() api.
>    Fixed checkpatch warnings.
> 
> Tested on Jetson Nano 4 GB ram.
> 
> jetson-nano:~$ lspci -tvv
> -[0000:00]-+-01.0-[01]----00.0  Intel Corporation Wireless 8265 / 8275
>            \-02.0-[02]----00.0  Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller
> 

Given the history of this series, I want an Ack from Jon/Thierry or other Nvidia
folks for the driver patches.

- Mani

> v2:   https://lore.kernel.org/linux-tegra/20251215141603.6749-1-linux.amoon@gmail.com/
> v1:   https://lore.kernel.org/linux-tegra/20250926072905.126737-1-linux.amoon@gmail.com/
> RFC : https://lore.kernel.org/linux-tegra/20250831190055.7952-2-linux.amoon@gmail.com/
> 
> Thanks
> -Anand
> 
> Anand Moon (5):
>   dt-bindings: PCI: Convert nvidia,tegra-pcie to DT schema
>   arm64: dts: tegra: tegra186-p2771: Fix invalid PCIe nvidia,num-lanes
>   PCI: tegra: Simplify clock handling by using clk_bulk*() functions
>   PCI: tegra: Use readl_poll_timeout() for link status polling
>   PCI: tegra: Use BIT() and GENMASK() macros for register definitions
> 
>  .../bindings/pci/nvidia,tegra-pcie.yaml       | 528 ++++++++++++++
>  .../bindings/pci/nvidia,tegra20-pcie.txt      | 670 ------------------
>  MAINTAINERS                                   |   2 +-
>  .../boot/dts/nvidia/tegra186-p2771-0000.dts   |   2 +-
>  drivers/pci/controller/pci-tegra.c            | 237 +++----
>  5 files changed, 621 insertions(+), 818 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra-pcie.yaml
>  delete mode 100644 Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt
> 
> 
> base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f
> -- 
> 2.50.1
> 

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