From patchwork Mon Oct 10 07:46:07 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hongxing Zhu X-Patchwork-Id: 13002350 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id C69D8C4332F for ; Mon, 10 Oct 2022 08:05:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231360AbiJJIF4 (ORCPT ); Mon, 10 Oct 2022 04:05:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46870 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230437AbiJJIFz (ORCPT ); Mon, 10 Oct 2022 04:05:55 -0400 Received: from inva021.nxp.com (inva021.nxp.com [92.121.34.21]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3807B30F6D; Mon, 10 Oct 2022 01:05:53 -0700 (PDT) Received: from inva021.nxp.com (localhost [127.0.0.1]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id CEBC7201E22; Mon, 10 Oct 2022 10:05:51 +0200 (CEST) Received: from aprdc01srsp001v.ap-rdc01.nxp.com (aprdc01srsp001v.ap-rdc01.nxp.com [165.114.16.16]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id 8A5AA201E43; Mon, 10 Oct 2022 10:05:51 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id 519BE180222C; Mon, 10 Oct 2022 16:05:49 +0800 (+08) From: Richard Zhu To: vkoul@kernel.org, a.fatoum@pengutronix.de, p.zabel@pengutronix.de, l.stach@pengutronix.de, bhelgaas@google.com, lorenzo.pieralisi@arm.com, robh@kernel.org, shawnguo@kernel.org, alexander.stein@ew.tq-group.com, marex@denx.de, richard.leitner@linux.dev Cc: linux-phy@lists.infradead.org, devicetree@vger.kernel.org, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de, linux-imx@nxp.com Subject: [PATCH v12 0/4] Add the iMX8MP PCIe support Date: Mon, 10 Oct 2022 15:46:07 +0800 Message-Id: <1665387971-17114-1-git-send-email-hongxing.zhu@nxp.com> X-Mailer: git-send-email 2.7.4 X-Virus-Scanned: ClamAV using ClamSMTP Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Based on the 6.0-rc1 of the pci/next branch. This series adds the i.MX8MP PCIe support and tested on i.MX8MP EVK board when one PCIe NVME device is used. - i.MX8MP PCIe has reversed initial PERST bit value refer to i.MX8MQ/i.MX8MM. Add the PHY PERST explicitly for i.MX8MP PCIe PHY. - Add the i.MX8MP PCIe PHY support in the i.MX8M PCIe PHY driver. And share as much as possible codes with i.MX8MM PCIe PHY. - Add the i.MX8MP PCIe support in binding document, DTS files, and PCIe driver. Main changes v11-->v12: - In the local down kernel(6.0-rc7 plus local codes) PM tests, i.MX8MP PCIe encounters link failure during resume. To resolve this failure, the resets of i.MX8MP PCIe PHY should be always kept 1b'1. Merge the fix into v12 patches here. Main changes v10-->v11: Refer to Ahmad's comments do the following changes; - Correct the spell mistake and refine the commit log. - Make codes indent by the member name - Use the dev_err_probe replace the dev_err. Main changes v9-->v10: - Refer to Vinod's review comments, drop the array, and use the static data structure directly in the drvdata definition. Main changes v8-->v9: - Split the PHY driver changes into three patches. - To keep the format consistent, re-define the PHY_CMN_REG75, and remove two useless BIT definitions. - Refine the i.MX8MM PCIe PHY driver, let it more reviewable, flexible, and easy to expand. - Add the i.MX8MP PCIe PHY support. - Only PHY related patches in v9, Since the others patches had been merged by Phillipp/Shawn/Lorenzo. Main changes v7-->v8: - Add the Reviewed-by tag, no other changes. Only two patches in v8, Since the others patches had been merged by Phillipp/Shawn/Lorenzo. Documentation/devicetree/bindings/phy/fsl,imx8-pcie-phy.yaml | 16 ++++++++-- drivers/phy/freescale/phy-fsl-imx8m-pcie.c | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------- 2 files changed, 106 insertions(+), 52 deletions(-) [PATCH v12 1/4] dt-binding: phy: Add i.MX8MP PCIe PHY binding [PATCH v12 2/4] phy: freescale: imx8m-pcie: Refine register [PATCH v12 3/4] phy: freescale: imx8m-pcie: Refine i.MX8MM PCIe PHY [PATCH v12 4/4] phy: freescale: imx8m-pcie: Add i.MX8MP PCIe PHY