From patchwork Thu Oct 17 03:04:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Qiang Yu X-Patchwork-Id: 13839360 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EFDE77DA7F; Thu, 17 Oct 2024 03:04:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1729134276; cv=none; b=dTkYXt/nkcJNRYzTdcz8aSiYjUGFWZKjxvX8pPFJTKczW9C9MhvHWhN/dCITSFeAxrUYGsMBBNVTm/eSf4fOBwnZBitUcuqPEjF8YZKyb0FbYKZfshP6W++nKgRstw0GjY5clRmcA2eSlmxR+IDfuVM7XL8Ogoqz08dqNhoDm0k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1729134276; c=relaxed/simple; bh=p0YP5N6Jt59NHtniL1UANSn1fscKpqQY24fsktNb6vc=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=Mt5hjmkaRW13PsEaQW/dKg6klPGXurzHI9m9AdrB/qc7Ki0GnwodvcSpAZVCxAKCWlO9i3sb3EosY9LVMkXM4z3JPpc03ulByZXd3a/0gEgp1QRZsWJeB1xE1jE48zAI6S0fRxz3tNy67ZZ4xtHNFVLvIFmzJR5gOmU11c95NX0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=quicinc.com; spf=pass smtp.mailfrom=qualcomm.com; dkim=pass (2048-bit key) header.d=quicinc.com header.i=@quicinc.com header.b=HVqqccOg; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=quicinc.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=quicinc.com header.i=@quicinc.com header.b="HVqqccOg" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 49GEUMYr010668; Thu, 17 Oct 2024 03:04:16 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h= cc:content-transfer-encoding:date:from:message-id:mime-version :subject:to; s=qcppdkim1; bh=5zCwqDGoO029oq4bVy0qDiKknXSTNZp1igz JmA5BfWE=; b=HVqqccOgzd85rqpH+fc2TUsRSnNLNaoihQrXkxBqRmvAhWKdmsT gZ0heqaX/ly2krQ5+09daQAJDfibU57CxwX5FpoaEhZch5n+I+IyIrPSCM5bCVut X5oeDEqEF6uw1Qb55qbs8rq5R1Xf7efqYUqF/eeSDqZB9xHRRnmTcv1xBfiJqJeu MJO9DskV/XxaqGbYBQUKH6JuH8tr5I4w5KOZnmhwqH7S3dGysaRj2OJqLJxMXZSu kwH/EypnJeI127Z6bDZXn62v1hdm0f7luVtPxEsl/TDhHhFou+Fj67yCD0IY15x/ JdUYytfLKE0VIkUN4gWOlHxnoZkIV28hgZw== Received: from nalasppmta02.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 429mh56p1c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 17 Oct 2024 03:04:15 +0000 (GMT) Received: from pps.filterd (NALASPPMTA02.qualcomm.com [127.0.0.1]) by NALASPPMTA02.qualcomm.com (8.18.1.2/8.18.1.2) with ESMTP id 49H306tO005211; Thu, 17 Oct 2024 03:04:14 GMT Received: from pps.reinject (localhost [127.0.0.1]) by NALASPPMTA02.qualcomm.com (PPS) with ESMTPS id 42aj4huu3b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 17 Oct 2024 03:04:14 +0000 Received: from NALASPPMTA02.qualcomm.com (NALASPPMTA02.qualcomm.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 49H2tTTs031378; Thu, 17 Oct 2024 03:04:14 GMT Received: from hu-devc-lv-u22-c.qualcomm.com (hu-qianyu-lv.qualcomm.com [10.81.25.114]) by NALASPPMTA02.qualcomm.com (PPS) with ESMTPS id 49H34ET4010801 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 17 Oct 2024 03:04:14 +0000 Received: by hu-devc-lv-u22-c.qualcomm.com (Postfix, from userid 4098150) id ECAAE650; Wed, 16 Oct 2024 20:04:13 -0700 (PDT) From: Qiang Yu To: manivannan.sadhasivam@linaro.org, vkoul@kernel.org, kishon@kernel.org, robh@kernel.org, andersson@kernel.org, konradybcio@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, mturquette@baylibre.com, sboyd@kernel.org, abel.vesa@linaro.org, quic_msarkar@quicinc.com, quic_devipriy@quicinc.com Cc: dmitry.baryshkov@linaro.org, kw@linux.com, lpieralisi@kernel.org, neil.armstrong@linaro.org, linux-arm-msm@vger.kernel.org, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, johan+linaro@kernel.org, Qiang Yu Subject: [PATCH v7 0/7] Add support for PCIe3 on x1e80100 Date: Wed, 16 Oct 2024 20:04:05 -0700 Message-Id: <20241017030412.265000-1-quic_qianyu@quicinc.com> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-pci@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-QCInternal: smtphost X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: 9CHZY2tiA-EdCXhq-OmFsaxUAxDzM6DP X-Proofpoint-ORIG-GUID: 9CHZY2tiA-EdCXhq-OmFsaxUAxDzM6DP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.60.29 definitions=2024-09-06_09,2024-09-06_01,2024-09-02_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 clxscore=1015 spamscore=0 priorityscore=1501 adultscore=0 mlxlogscore=999 lowpriorityscore=0 mlxscore=0 phishscore=0 malwarescore=0 suspectscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2409260000 definitions=main-2410170020 This series add support for PCIe3 on x1e80100. PCIe3 needs additional set of clocks, regulators and new set of PCIe QMP PHY configuration compare other PCIe instances on x1e80100. Hence add required resource configuration and usage for PCIe3. v6->v7: 1. Add Acked-by and Reviewed-by tags 2. Use 70574511f3f ("PCI: qcom: Add support for SC8280XP") in Fixes tag 3. Keep minItem of interrupt as 8 in buindings 4. Reword commit msg 5. Remove [PATCH v6 5/8] clk: qcom: gcc-x1e80100: Fix halt_check for pipediv2 clocks as it was applied 6. Link to v6: https://lore.kernel.org/linux-pci/20241011104142.1181773-1-quic_qianyu@quicinc.com/ v5->v6: 1. Add Fixes tag 2. Split [PATCH v5 6/7] into two patches 3. Reword commit msg 4. Link to v5: https://lore.kernel.org/linux-pci/20241009091540.1446-1-quic_qianyu@quicinc.com/ v4->v5: 1. Add Reviewed-by tag 2. Expand and clarify usage of txz/rxz in commit message 3. Add comments that txz/rxz must be programmed before tx/rx 4. Change the sort order for phy register tbls 5. Use the order defined in struct qmp_phy_cfg_tbls for phy register tbls presented in x1e80100_qmp_gen4x8_pciephy_cfg 6. Add Fixes and CC stable tag 7. Fix ops for SC8280X and X1E80100 8. Document global interrupt in bindings 9. Link to v4: https://lore.kernel.org/all/20240924101444.3933828-1-quic_qianyu@quicinc.com/ v3->v4: 1. Reword commit msg of [PATCH v3 5/6] 2. Drop opp-table property from qcom,pcie-sm8450.yaml 3. Add Reviewed-by tag 4. Link to v3: https://lore.kernel.org/all/20240923125713.3411487-1-quic_qianyu@quicinc.com/ v2->v3: 1. Use 'Gen 4 x8' in commit msg 2. Move opp-table property to qcom,pcie-common.yaml 3. Add Reviewed-by tag 4. Add global interrupt and use GIC_SPI for the parent interrupt specifier 5. Use 0x0 in reg property and use pcie@ for pcie3 device node 6. Show different IP version v6.30 in commit msg 7. Add logic in controller driver to have new ops for x1e80100 8. Link to v2: https://lore.kernel.org/all/20240913083724.1217691-1-quic_qianyu@quicinc.com/ v2->v1: 1. Squash [PATCH 1/8], [PATCH 2/8],[PATCH 3/8] into one patch and make the indentation consistent. 2. Put dts patch at the end of the patchset. 3. Put dt-binding patch at the first of the patchset. 4. Add a new patch where opp-table is added in dt-binding to avoid dtbs checking error. 5. Remove GCC_PCIE_3_AUX_CLK, RPMH_CXO_CLK, put in TCSR_PCIE_8L_CLKREF_EN as ref. 6. Remove lane_broadcasting. 7. Add 64 bit bar, Remove GCC_PCIE_3_PIPE_CLK_SRC, GCC_CFG_NOC_PCIE_ANOC_SOUTH_AHB_CLK is changed to GCC_CFG_NOC_PCIE_ANOC_NORTH_AHB_CLK. 8. Add Reviewed-by tag. 9. Remove [PATCH 7/8], [PATCH 8/8]. 10. Link to v1: https://lore.kernel.org/all/20240827063631.3932971-1-quic_qianyu@quicinc.com/ Qiang Yu (7): dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Document the X1E80100 QMP PCIe PHY Gen4 x8 dt-bindings: PCI: qcom: Move OPP table to qcom,pcie-common.yaml dt-bindings: PCI: qcom,pcie-x1e80100: Add 'global' interrupt phy: qcom: qmp: Add phy register and clk setting for x1e80100 PCIe3 PCI: qcom: Remove BDF2SID mapping config for SC8280X family SoC PCI: qcom: Disable ASPM L0s and remove BDF2SID mapping config for X1E80100 SoC arm64: dts: qcom: x1e80100: Add support for PCIe3 on x1e80100 .../bindings/pci/qcom,pcie-common.yaml | 4 + .../bindings/pci/qcom,pcie-sm8450.yaml | 4 - .../bindings/pci/qcom,pcie-x1e80100.yaml | 9 +- .../phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 3 + arch/arm64/boot/dts/qcom/x1e80100.dtsi | 204 ++++++++++++++++- drivers/pci/controller/dwc/pcie-qcom.c | 14 +- drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 214 ++++++++++++++++++ .../qualcomm/phy-qcom-qmp-pcs-pcie-v6_30.h | 25 ++ drivers/phy/qualcomm/phy-qcom-qmp-pcs-v6_30.h | 19 ++ 9 files changed, 486 insertions(+), 10 deletions(-) create mode 100644 drivers/phy/qualcomm/phy-qcom-qmp-pcs-pcie-v6_30.h create mode 100644 drivers/phy/qualcomm/phy-qcom-qmp-pcs-v6_30.h