regulator_bulk_disable(ARRAY_SIZE(res->supplies), res->supplies);
 }
 
+static int qcom_pcie_config_sid_1_9_0(struct qcom_pcie *pcie)
+{
+       /* iommu map structure */
+       struct {
+               u32 bdf;
+               u32 phandle;
+               u32 smmu_sid;
+               u32 smmu_sid_len;
+       } *map;
+       void __iomem *bdf_to_sid_base = pcie->parf + PARF_BDF_TO_SID_TABLE_N;
+       struct device *dev = pcie->pci->dev;
+       u8 qcom_pcie_crc8_table[CRC8_TABLE_SIZE];
+       int i, nr_map, size = 0;
+       u32 smmu_sid_base;
+
+       of_get_property(dev->of_node, "iommu-map", &size);
+       if (!size)
+               return 0;
+
+       map = kzalloc(size, GFP_KERNEL);
+       if (!map)
+               return -ENOMEM;
+
+       of_property_read_u32_array(dev->of_node, "iommu-map", (u32 *)map,
+                                  size / sizeof(u32));
+
+       nr_map = size / (sizeof(*map));
+
+       crc8_populate_msb(qcom_pcie_crc8_table, QCOM_PCIE_CRC8_POLYNOMIAL);
+
+       /* Registers need to be zero out first */
+       memset_io(bdf_to_sid_base, 0, CRC8_TABLE_SIZE * sizeof(u32));
+
+       /* Extract the SMMU SID base from the first entry of iommu-map */
+       smmu_sid_base = map[0].smmu_sid;
+
+       /* Look for an available entry to hold the mapping */
+       for (i = 0; i < nr_map; i++) {
+               __be16 bdf_be = cpu_to_be16(map[i].bdf);
+               u32 val;
+               u8 hash;
+
+               hash = crc8(qcom_pcie_crc8_table, (u8 *)&bdf_be, sizeof(bdf_be), 0);
+
+               val = readl(bdf_to_sid_base + hash * sizeof(u32));
+
+               /* If the register is already populated, look for next available entry */
+               while (val) {
+                       u8 current_hash = hash++;
+                       u8 next_mask = 0xff;
+
+                       /* If NEXT field is NULL then update it with next hash */
+                       if (!(val & next_mask)) {
+                               val |= (u32)hash;
+                               writel(val, bdf_to_sid_base + current_hash * sizeof(u32));
+                       }
+
+                       val = readl(bdf_to_sid_base + hash * sizeof(u32));
+               }
+
+               /* BDF [31:16] | SID [15:8] | NEXT [7:0] */
+               val = map[i].bdf << 16 | (map[i].smmu_sid - smmu_sid_base) << 8 | 0;
+               writel(val, bdf_to_sid_base + hash * sizeof(u32));
+       }
+
+       kfree(map);
+
+       return 0;
+}
+
 static int qcom_pcie_get_resources_2_9_0(struct qcom_pcie *pcie)
 {
        struct qcom_pcie_resources_2_9_0 *res = &pcie->res.v2_9_0;
        return !!(val & PCI_EXP_LNKSTA_DLLLA);
 }
 
-static int qcom_pcie_config_sid_sm8250(struct qcom_pcie *pcie)
-{
-       /* iommu map structure */
-       struct {
-               u32 bdf;
-               u32 phandle;
-               u32 smmu_sid;
-               u32 smmu_sid_len;
-       } *map;
-       void __iomem *bdf_to_sid_base = pcie->parf + PARF_BDF_TO_SID_TABLE_N;
-       struct device *dev = pcie->pci->dev;
-       u8 qcom_pcie_crc8_table[CRC8_TABLE_SIZE];
-       int i, nr_map, size = 0;
-       u32 smmu_sid_base;
-
-       of_get_property(dev->of_node, "iommu-map", &size);
-       if (!size)
-               return 0;
-
-       map = kzalloc(size, GFP_KERNEL);
-       if (!map)
-               return -ENOMEM;
-
-       of_property_read_u32_array(dev->of_node,
-               "iommu-map", (u32 *)map, size / sizeof(u32));
-
-       nr_map = size / (sizeof(*map));
-
-       crc8_populate_msb(qcom_pcie_crc8_table, QCOM_PCIE_CRC8_POLYNOMIAL);
-
-       /* Registers need to be zero out first */
-       memset_io(bdf_to_sid_base, 0, CRC8_TABLE_SIZE * sizeof(u32));
-
-       /* Extract the SMMU SID base from the first entry of iommu-map */
-       smmu_sid_base = map[0].smmu_sid;
-
-       /* Look for an available entry to hold the mapping */
-       for (i = 0; i < nr_map; i++) {
-               __be16 bdf_be = cpu_to_be16(map[i].bdf);
-               u32 val;
-               u8 hash;
-
-               hash = crc8(qcom_pcie_crc8_table, (u8 *)&bdf_be, sizeof(bdf_be),
-                       0);
-
-               val = readl(bdf_to_sid_base + hash * sizeof(u32));
-
-               /* If the register is already populated, look for next available entry */
-               while (val) {
-                       u8 current_hash = hash++;
-                       u8 next_mask = 0xff;
-
-                       /* If NEXT field is NULL then update it with next hash */
-                       if (!(val & next_mask)) {
-                               val |= (u32)hash;
-                               writel(val, bdf_to_sid_base + current_hash * sizeof(u32));
-                       }
-
-                       val = readl(bdf_to_sid_base + hash * sizeof(u32));
-               }
-
-               /* BDF [31:16] | SID [15:8] | NEXT [7:0] */
-               val = map[i].bdf << 16 | (map[i].smmu_sid - smmu_sid_base) << 8 | 0;
-               writel(val, bdf_to_sid_base + hash * sizeof(u32));
-       }
-
-       kfree(map);
-
-       return 0;
-}
-
 static int qcom_pcie_host_init(struct dw_pcie_rp *pp)
 {
        struct dw_pcie *pci = to_dw_pcie_from_pp(pp);
        .init = qcom_pcie_init_2_7_0,
        .deinit = qcom_pcie_deinit_2_7_0,
        .ltssm_enable = qcom_pcie_2_3_2_ltssm_enable,
-       .config_sid = qcom_pcie_config_sid_sm8250,
+       .config_sid = qcom_pcie_config_sid_1_9_0,
 };
 
 /* Qcom IP rev.: 2.9.0  Synopsys IP rev.: 5.00a */