[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