252-clk-mediatek-mt7988-infracfg-fix-clocks-for-2nd-PCIe.patch 1.3 KB

12345678910111213141516171819202122232425262728293031
  1. From c202f510bbaa34ab5d65a69a61e0e72761374b17 Mon Sep 17 00:00:00 2001
  2. From: Daniel Golle <[email protected]>
  3. Date: Mon, 11 Mar 2024 17:14:19 +0000
  4. Subject: [PATCH] clk: mediatek: mt7988-infracfg: fix clocks for 2nd PCIe port
  5. Due to what seems to be an undocumented oddity in MediaTek's MT7988
  6. SoC design the CLK_INFRA_PCIE_PERI_26M_CK_P2 clock requires
  7. CLK_INFRA_PCIE_PERI_26M_CK_P3 to be enabled.
  8. This currently leads to PCIe port 2 not working in Linux.
  9. Reflect the apparent relationship in the clk driver to make sure PCIe
  10. port 2 of the MT7988 SoC works.
  11. Suggested-by: Sam Shih <[email protected]>
  12. Signed-off-by: Daniel Golle <[email protected]>
  13. ---
  14. drivers/clk/mediatek/clk-mt7988-infracfg.c | 2 +-
  15. 1 file changed, 1 insertion(+), 1 deletion(-)
  16. --- a/drivers/clk/mediatek/clk-mt7988-infracfg.c
  17. +++ b/drivers/clk/mediatek/clk-mt7988-infracfg.c
  18. @@ -156,7 +156,7 @@ static const struct mtk_gate infra_clks[
  19. GATE_INFRA0(CLK_INFRA_PCIE_PERI_26M_CK_P1, "infra_pcie_peri_ck_26m_ck_p1",
  20. "csw_infra_f26m_sel", 8),
  21. GATE_INFRA0(CLK_INFRA_PCIE_PERI_26M_CK_P2, "infra_pcie_peri_ck_26m_ck_p2",
  22. - "csw_infra_f26m_sel", 9),
  23. + "infra_pcie_peri_ck_26m_ck_p3", 9),
  24. GATE_INFRA0(CLK_INFRA_PCIE_PERI_26M_CK_P3, "infra_pcie_peri_ck_26m_ck_p3",
  25. "csw_infra_f26m_sel", 10),
  26. /* INFRA1 */