PCI: qcom: Remove BDF2SID mapping config for SC8280X family SoC
authorQiang Yu <quic_qianyu@quicinc.com>
Fri, 1 Nov 2024 03:09:00 +0000 (20:09 -0700)
committerKrzysztof Wilczyński <kwilczynski@kernel.org>
Mon, 4 Nov 2024 14:55:57 +0000 (14:55 +0000)
The SC8280XP PCIe devicetree nodes do not specify an 'iommu-map' so
the config_sid() callback is effectively a no-op.

Hence introduce a new ops struct, namely ops_1_21_0 which is same as
ops_1_9_0 except that it doesn't have config_sid() callback to clean
it up.

Link: https://lore.kernel.org/r/20241101030902.579789-4-quic_qianyu@quicinc.com
Signed-off-by: Qiang Yu <quic_qianyu@quicinc.com>
[kwilczynski: commit log]
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
drivers/pci/controller/dwc/pcie-qcom.c

index 07286fb..4448ca5 100644 (file)
@@ -1365,6 +1365,16 @@ static const struct qcom_pcie_ops ops_1_9_0 = {
        .config_sid = qcom_pcie_config_sid_1_9_0,
 };
 
+/* Qcom IP rev.: 1.21.0  Synopsys IP rev.: 5.60a */
+static const struct qcom_pcie_ops ops_1_21_0 = {
+       .get_resources = qcom_pcie_get_resources_2_7_0,
+       .init = qcom_pcie_init_2_7_0,
+       .post_init = qcom_pcie_post_init_2_7_0,
+       .host_post_init = qcom_pcie_host_post_init_2_7_0,
+       .deinit = qcom_pcie_deinit_2_7_0,
+       .ltssm_enable = qcom_pcie_2_3_2_ltssm_enable,
+};
+
 /* Qcom IP rev.: 2.9.0  Synopsys IP rev.: 5.00a */
 static const struct qcom_pcie_ops ops_2_9_0 = {
        .get_resources = qcom_pcie_get_resources_2_9_0,
@@ -1412,7 +1422,7 @@ static const struct qcom_pcie_cfg cfg_2_9_0 = {
 };
 
 static const struct qcom_pcie_cfg cfg_sc8280xp = {
-       .ops = &ops_1_9_0,
+       .ops = &ops_1_21_0,
        .no_l0s = true,
 };