Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v2 0/3] Workaround for IMX7d PCI-e PLL lock failure
@ 2019-02-05  0:17 Trent Piepho
  2019-02-05  0:17 ` [PATCH v2 1/3] dt-bindings: imx6q-pcie: Add description of imx7d pcie phy Trent Piepho
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Trent Piepho @ 2019-02-05  0:17 UTC (permalink / raw)
  To: linux-pci
  Cc: Lorenzo Pieralisi, Richard Zhu, Lucas Stach, Shawn Guo,
	linux-arm-kernel, Trent Piepho

This is the workaround for the IMX7d Erratum e10728, failure of
initialize PCIe PLL VCO oscillation resulting in PLL lock failure and
failure of the PCI-e link to come up.

The registers used in the workaround are based on the latest patch in
the NXP kernel.

This uses a new node of type fsl,imx7d-pcie-phy to get the PHY's
registers.  The node is found via a phandle, named fsl,imx7d-pcie-phy,
added to the PCI-e controller's node.

If the phandle is not present, or otherwise incorrect, there is a
warning message on IMX7d.

While the PHY's register could be added as another bank in the PCI-e
controller's register space, this isn't an accurate description of the
hardware.  The PHY is a different device and attached to a different
AIPS bus.

Changes since v1:
  Renamed imx-pcie-phy to imx7d-pci-phy since it appears this phy is
  specific to the imx7d.
  Split out dts binding change into its own patch.
  Changed error message to warning and improved it.

Trent Piepho (3):
  dt-bindings: imx6q-pcie: Add description of imx7d pcie phy
  ARM: dts: imx7d: Add node for PCIe PHY
  PCI: imx: Add workaround for e10728, IMX7d PCIe PLL failure

 .../devicetree/bindings/pci/fsl,imx6q-pcie.txt     | 11 +++++
 arch/arm/boot/dts/imx7d.dtsi                       |  9 ++++
 drivers/pci/controller/dwc/pci-imx6.c              | 57 ++++++++++++++++++++++
 3 files changed, 77 insertions(+)

-- 
2.14.4


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, back to index

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-05  0:17 [PATCH v2 0/3] Workaround for IMX7d PCI-e PLL lock failure Trent Piepho
2019-02-05  0:17 ` [PATCH v2 1/3] dt-bindings: imx6q-pcie: Add description of imx7d pcie phy Trent Piepho
2019-02-05  9:43   ` Lucas Stach
2019-02-05  0:17 ` [PATCH v2 2/3] ARM: dts: imx7d: Add node for PCIe PHY Trent Piepho
2019-02-05  9:47   ` Lucas Stach
2019-02-05  0:17 ` [PATCH v2 3/3] PCI: imx: Add workaround for e10728, IMX7d PCIe PLL failure Trent Piepho
2019-02-05  9:48   ` Lucas Stach
2019-02-07 12:31   ` Lorenzo Pieralisi
2019-02-07 18:15     ` Trent Piepho
2019-02-08 10:18       ` Lorenzo Pieralisi
2019-02-08 18:19         ` Trent Piepho
2019-02-11 12:18           ` Lorenzo Pieralisi

Linux-ARM-Kernel Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/0 linux-arm-kernel/git/0.git
	git clone --mirror https://lore.kernel.org/linux-arm-kernel/1 linux-arm-kernel/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-arm-kernel linux-arm-kernel/ https://lore.kernel.org/linux-arm-kernel \
		linux-arm-kernel@lists.infradead.org infradead-linux-arm-kernel@archiver.kernel.org
	public-inbox-index linux-arm-kernel

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.infradead.lists.linux-arm-kernel


AGPL code for this site: git clone https://public-inbox.org/ public-inbox