Skip to content
Snippets Groups Projects
Commit 30a4829b authored by Sricharan Ramabadhran's avatar Sricharan Ramabadhran Committed by Frieder Schrempf
Browse files

PCI: qcom: Fix IPQ8074 enumeration

commit 6a878a54 upstream.

PARF_SLV_ADDR_SPACE_SIZE_2_3_3 is used by qcom_pcie_post_init_2_3_3().
This PCIe slave address space size register offset is 0x358 but was
incorrectly changed to 0x16c by 39171b33 ("PCI: qcom: Remove PCIE20_
prefix from register definitions").

This prevented access to slave address space registers like iATU, etc.,
so the IPQ8074 PCIe controller was not enumerated.

Revert back to the correct 0x358 offset and remove the unused
PARF_SLV_ADDR_SPACE_SIZE_2_3_3.

Fixes: 39171b33 ("PCI: qcom: Remove PCIE20_ prefix from register definitions")
Link: https://lore.kernel.org/r/20230919102948.1844909-1-quic_srichara@quicinc.com


Tested-by: default avatarRobert Marko <robimarko@gmail.com>
Signed-off-by: default avatarSricharan Ramabadhran <quic_srichara@quicinc.com>
[bhelgaas: commit log]
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Reviewed-by: default avatarManivannan Sadhasivam <mani@kernel.org>
Reviewed-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Cc: stable@vger.kernel.org	# v6.4+
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 78edcdef
No related branches found
No related tags found
1 merge request!103🤖 Sync Bot: Update v6.1-ktn to Latest Stable Kernel (v6.1.57)
...@@ -40,7 +40,6 @@ ...@@ -40,7 +40,6 @@
#define PARF_PHY_REFCLK 0x4c #define PARF_PHY_REFCLK 0x4c
#define PARF_CONFIG_BITS 0x50 #define PARF_CONFIG_BITS 0x50
#define PARF_DBI_BASE_ADDR 0x168 #define PARF_DBI_BASE_ADDR 0x168
#define PARF_SLV_ADDR_SPACE_SIZE_2_3_3 0x16c /* Register offset specific to IP ver 2.3.3 */
#define PARF_MHI_CLOCK_RESET_CTRL 0x174 #define PARF_MHI_CLOCK_RESET_CTRL 0x174
#define PARF_AXI_MSTR_WR_ADDR_HALT 0x178 #define PARF_AXI_MSTR_WR_ADDR_HALT 0x178
#define PARF_AXI_MSTR_WR_ADDR_HALT_V2 0x1a8 #define PARF_AXI_MSTR_WR_ADDR_HALT_V2 0x1a8
...@@ -1148,8 +1147,7 @@ static int qcom_pcie_post_init_2_3_3(struct qcom_pcie *pcie) ...@@ -1148,8 +1147,7 @@ static int qcom_pcie_post_init_2_3_3(struct qcom_pcie *pcie)
u16 offset = dw_pcie_find_capability(pci, PCI_CAP_ID_EXP); u16 offset = dw_pcie_find_capability(pci, PCI_CAP_ID_EXP);
u32 val; u32 val;
writel(SLV_ADDR_SPACE_SZ, writel(SLV_ADDR_SPACE_SZ, pcie->parf + PARF_SLV_ADDR_SPACE_SIZE);
pcie->parf + PARF_SLV_ADDR_SPACE_SIZE_2_3_3);
val = readl(pcie->parf + PARF_PHY_CTRL); val = readl(pcie->parf + PARF_PHY_CTRL);
val &= ~BIT(0); val &= ~BIT(0);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment