[PATCH v5 0/7] Reconstruct rockchip's PCIe and PCIe-PHY driver for per-lane PHY model
Bjorn Helgaas
helgaas at kernel.org
Wed Aug 2 15:57:55 PDT 2017
On Wed, Jul 19, 2017 at 05:55:11PM +0800, Shawn Lin wrote:
>
> This patchset is trying to reconstruct PCIe and PCIe-PHY driver
> for rockchip platform in order to support per-lane PHY mode. And
> we could idle the inactive lane(s) finally.
>
> We deprecate the legacy PHY mode but the code could still
> support it in order not to break backware compatibility of DTB. And I
> organize the patches carefully so that we don't introduce git-bisect
> issue.
>
> Patchset was reviewed by Brian and fully tested by Jeffy. Rob acked
> patch 6 & 7. Kishon acked patch 1, 2 and 4, and will ack patch 3 once
> this patch 3 of v5 looks good.
>
> Patch 5 for DTS changes for Rockchip part still need ack from Heiko, and
> it would be fine for Heiko to pick it up after pcie and pcie-phy changes
> got merged.
>
> It would be fine for Bjorn to pick all these patches up to narrow down
> the timing gap for testing linux-next. :)
>
>
> Changes in v5:
> - don't create more number of phys if it's legacy PHY model
>
> Changes in v4:
> - use err variable to check return value of
> rockchip_pcie_get_phys
> - add Brian's tag
> - move rockchip_pcie_get_phys to where it stands in
> patch 1.
> - print PHY index in err output log
> - return u8 for rockchip_pcie_lane_map
>
> Changes in v3:
> - kill rockchip_pcie_manipulate_phys and related stuff
> - use phys array
> - improve the commit msg
> - remove unnecessary forward declaration
> - keep mutex inside struct rockchip_pcie_phy
> - fix wrong check of args number
> - move de-idle lanes after deasserting the reset
> - use cached lanes_map to avoid powering off inactive
> lanes twice
> - rename the commit tile
>
> Changes in v2:
> - deprecate legacy PHY model
> - improve rockchip_pcie_phy_of_xlate
> - fix wrong calculation of pwr_cnt and add new init_cnt
> - add internal locking
> - introduce per-lane data to simply the code
>
> Shawn Lin (7):
> PCI: rockchip: split out rockchip_pcie_get_phys
> PCI: rockchip: introduce per-lanes PHYs support
> phy: rockcip-pcie: reconstruct driver to support per-lane PHYs
> PCI: rockchip: idle the inactive PHY(s)
> arm64: dts: rockchip: convert PCIe to use per-lane PHYs for rk3339
> dt-bindings: PCI: rockchip: convert to use per-lane PHY model
> dt-bindings: phy: convert to use per-lane Rockchip PCIe PHY
>
> .../devicetree/bindings/pci/rockchip-pcie.txt | 25 +++-
> .../devicetree/bindings/phy/rockchip-pcie-phy.txt | 7 +-
> arch/arm64/boot/dts/rockchip/rk3399.dtsi | 8 +-
> drivers/pci/host/pcie-rockchip.c | 122 +++++++++++++++----
> drivers/phy/rockchip/phy-rockchip-pcie.c | 132 ++++++++++++++++++---
> 5 files changed, 253 insertions(+), 41 deletions(-)
Applied with Kishon's ack on 3/7 to pci/host-rockchip for v4.14.
Thanks for all your work on these, Shawn!
More information about the Linux-rockchip
mailing list