Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1443277pxb; Fri, 22 Oct 2021 00:39:59 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwScDxFxYtzXhAhOHvi5P4mwlTaaaXYP4UffQKF9gYVZk1KwDnmhg7dKGIfLkCyDTZZ2ljU X-Received: by 2002:aa7:c053:: with SMTP id k19mr14803714edo.293.1634888399295; Fri, 22 Oct 2021 00:39:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634888399; cv=none; d=google.com; s=arc-20160816; b=JI9y1R7islPVnjklMdfrgIu5Wqfv47HGp75yrfs2BEj8qxD6Sw9mjKr8D73a7cxLmc slrlBlR65CnYVsewwBU0QAvwCGYlg7aYGAm5Q66EodJhptU4QmdKjGDvjCzWZRXrAgbH Z5OFXIQK0vIagbzF+HNYt8p8zqpNOWMLVKdUADvAycvGYCK//xovRQglLUaXFR46DUDf 8wM2yGfNMmSKOaxz+XFAp1AvKLJXusnu0PtaBB/jhP4cb7ZZYU6PqWI73Awk6PFA7/W8 FdPYdH+Sen3CrMvaRWduYDsOOcXVm8rBB35l4RCSyAktI+mTf1WzevN9Kic9lh2R4nwA jjhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=C1VDav9dYpeVc4SxkHkY91JxB1gWJluj2oYYYymyUts=; b=rwmtBFbqHKbK82dcvH2Di4qEAzuJrwLnZvrwA7Uhy1XCqN34LuWMFpRzseHv99PwAe SoGemulUnG79jr2+3XNw1odr4DmXj5paqU8pz9efhAlh71KcmO32lx46lATau4Ia907L LsGR6Tzer5HZRCH/J1gsQGNxWXBYmoV4U2I0fyayrHYQRq96fU8at4PBOZFLO9BSPmen tlUT7EVnHUlVDRDqtmFOae/4XMzi1MFuuEOIrNuDzs0iFzCdyrM7bAk/DJuDRCvpQgGT E4XOCTaZjkY9NJtLNIWKOTnTwNc/yGpDA1tGdeBoVGwd3aEZRC/JUqlXRBGcnQ/B+aXg xfaA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dz20si14530427edb.535.2021.10.22.00.39.34; Fri, 22 Oct 2021 00:39:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232032AbhJVHkJ (ORCPT + 99 others); Fri, 22 Oct 2021 03:40:09 -0400 Received: from inva021.nxp.com ([92.121.34.21]:45906 "EHLO inva021.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231773AbhJVHkI (ORCPT ); Fri, 22 Oct 2021 03:40:08 -0400 Received: from inva021.nxp.com (localhost [127.0.0.1]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id D7651201B52; Fri, 22 Oct 2021 09:37:49 +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 9FC132005EC; Fri, 22 Oct 2021 09:37:49 +0200 (CEST) Received: from localhost.localdomain (shlinux2.ap.freescale.net [10.192.224.44]) by aprdc01srsp001v.ap-rdc01.nxp.com (Postfix) with ESMTP id 4D5BB183AC94; Fri, 22 Oct 2021 15:37:48 +0800 (+08) From: Richard Zhu To: l.stach@pengutronix.de, bhelgaas@google.com, lorenzo.pieralisi@arm.com, jingoohan1@gmail.com Cc: linux-pci@vger.kernel.org, linux-imx@nxp.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@pengutronix.de Subject: [PATCH v3 0/7] PCI: imx6: refine codes and add compliance tests mode support Date: Fri, 22 Oct 2021 15:12:23 +0800 Message-Id: <1634886750-13861-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-kernel@vger.kernel.org This series patches refine pci-imx6 driver and do the following changes. - Encapsulate the clock enable into one standalone function - Add the error propagation from host_init - Add one new host_exit callback, used to balance the usage of the regulator and clocks when link never came up - Add the compliance tests mode support Main changes from v2 to v3: - Add "Reviewed-by: Lucas Stach " tag into first two patches. - Add a Fixes tag into #3 patch. - Split the #4 of v2 to two patches, one is clock disable codes move, the other one is the acutal clock unbalance fix. - Add a new host_exit() callback into dw_pcie_host_ops, then it could be invoked to handle the unbalance issue in the error handling after host_init() function when link is down. - Add a new host_exit() callback for i.MX PCIe driver to handle this case in the error handling after host_init. Main changes from v1 to v2: Regarding Lucas' comments. - Move the placement of the new imx6_pcie_clk_enable() to avoid the forward declarition. - Seperate the second patch of v1 patch-set to three patches. - Use the module_param to replace the kernel command line. Regarding Bjorn's comments: - Use the cover-letter for a multi-patch series. - Correct the subject line, and refine the commit logs. For example, remove the timestamp of the logs. drivers/pci/controller/dwc/pci-imx6.c | 176 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------- drivers/pci/controller/dwc/pcie-designware-host.c | 5 ++- drivers/pci/controller/dwc/pcie-designware.h | 1 + 3 files changed, 119 insertions(+), 63 deletions(-) [PATCH v3 1/7] PCI: imx6: Encapsulate the clock enable into one [PATCH v3 2/7] PCI: imx6: Add the error propagation from host_init [PATCH v3 3/7] PCI: imx6: Fix the regulator dump when link never came [PATCH v3 4/7] PCI: imx6: move the clock disable function to a proper [PATCH v3 5/7] PCI: dwc: add a new callback host exit function into [PATCH v3 6/7] PCI: imx6: Fix the reference handling unbalance when [PATCH v3 7/7] PCI: imx6: Add the compliance tests mode support