public inbox for linux-phy@lists.infradead.org
 help / color / mirror / Atom feed
* [PATCH 0/8] phy: zynqmp: Perform complete initialization, including ILL calibration
@ 2026-02-03  0:21 Sean Anderson
  2026-02-03  0:21 ` [PATCH 1/8] dt-bindings: pci: xilinx-nwl: Add resets Sean Anderson
                   ` (7 more replies)
  0 siblings, 8 replies; 18+ messages in thread
From: Sean Anderson @ 2026-02-03  0:21 UTC (permalink / raw)
  To: Laurent Pinchart, Vinod Koul, linux-phy
  Cc: Krzysztof Wilczyński, Lorenzo Pieralisi, Radhey Shyam Pandey,
	linux-kernel, Michal Simek, linux-arm-kernel, linux-pci,
	Neil Armstrong, Rob Herring, Thippeswamy Havalige,
	Manivannan Sadhasivam, Bjorn Helgaas, Sean Anderson, Conor Dooley,
	Krzysztof Kozlowski, devicetree

This series completely initializes the GTRs in Linux, making all
bootloader initialization (as performed by init_serdes() in
psu_init_gpl.c) optional. This gives the following advantages:

- On some boards (mine) the reference clocks may not be configured in
  SPL/FSBL. So ILL calibration will fail (and take a long time to do so)
  unless we defer initialization to U-Boot/Linux where the phy driver
  can request the clocks.
- If PCIe/SATA are not used in U-Boot, ILL calibration can be deferred
  until Linux when it can be done it parallel with other initialization.
- We will have flexibility to switch between different configurations at
  runtime. For example, this could allow supporting both SATA and PCIe M.2
  cards with [1].

I have tested this series with DP, PCIe, SGMII, and SATA. USB3 is broken
on my dev board at the moment (independent of this series; need to
investigate) so I have not tested that. I have an equivalent set of
patches for U-Boot that I will try to post soon.

[1] https://lore.kernel.org/linux-pci/20260107-pci-m2-v5-0-8173d8a72641@oss.qualcomm.com/


Sean Anderson (8):
  dt-bindings: pci: xilinx-nwl: Add resets
  phy: zynqmp: Refactor bus width configuration into helper
  phy: zynqmp: Refactor common phy initialization into a helper
  phy: zynqmp: Calibrate ILL if necessary
  phy: zynqmp: Initialize chicken bits
  PCI: xilinx-nwl: Split phy_init from phy_power_on
  PCI: xilinx-nwl: Reset the core during probe
  arm64: zynqmp: Add PCIe resets

 .../bindings/pci/xlnx,nwl-pcie.yaml           |  17 +
 arch/arm64/boot/dts/xilinx/zynqmp.dtsi        |   4 +
 drivers/pci/controller/pcie-xilinx-nwl.c      | 255 +++++++--
 drivers/phy/xilinx/phy-zynqmp.c               | 487 +++++++++++++++++-
 4 files changed, 713 insertions(+), 50 deletions(-)

-- 
2.35.1.1320.gc452695387.dirty


-- 
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2026-02-18 16:43 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-03  0:21 [PATCH 0/8] phy: zynqmp: Perform complete initialization, including ILL calibration Sean Anderson
2026-02-03  0:21 ` [PATCH 1/8] dt-bindings: pci: xilinx-nwl: Add resets Sean Anderson
2026-02-04  8:32   ` Pandey, Radhey Shyam
2026-02-05 15:47     ` Sean Anderson
2026-02-18 16:36       ` Manivannan Sadhasivam
2026-02-10  0:24   ` Rob Herring (Arm)
2026-02-03  0:21 ` [PATCH 2/8] phy: zynqmp: Refactor bus width configuration into helper Sean Anderson
2026-02-10 15:00   ` Pandey, Radhey Shyam
2026-02-03  0:21 ` [PATCH 3/8] phy: zynqmp: Refactor common phy initialization into a helper Sean Anderson
2026-02-10 15:05   ` Pandey, Radhey Shyam
2026-02-03  0:21 ` [PATCH 4/8] phy: zynqmp: Calibrate ILL if necessary Sean Anderson
2026-02-10 16:04   ` Pandey, Radhey Shyam
2026-02-10 16:42     ` Sean Anderson
2026-02-03  0:21 ` [PATCH 5/8] phy: zynqmp: Initialize chicken bits Sean Anderson
2026-02-03  0:21 ` [PATCH 6/8] PCI: xilinx-nwl: Split phy_init from phy_power_on Sean Anderson
2026-02-03  0:21 ` [PATCH 7/8] PCI: xilinx-nwl: Reset the core during probe Sean Anderson
2026-02-18 16:42   ` Manivannan Sadhasivam
2026-02-03  0:21 ` [PATCH 8/8] arm64: zynqmp: Add PCIe resets Sean Anderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox