mtk_pcie_retrain(9)
β¨ mtk_pcie_retrain(9) β¨
okay so bestie, we're in the Kernel API Manual, and this page is literally mtk_pcie_retrain(9) β the little βretrain the root bridge link if neededβ situation π
π NAME π
mtk_pcie_retrain β retrain the root bridge link if needed β¨
πΈ SYNOPSIS πΈ
int mtk_pcie_retrain (struct device *dev , struct pci_host_bridge *host
);
π ARGUMENTS π
devβ the device, and itβs used for logging π«Άhostβ the host bridge which contains the link π
π¦ DESCRIPTION π¦
okay so hereβs the tea, bestie: due to what is likely a hardware bug, some devices (notably EcoNet) start up as Gen1, and they must be retrained once after initial configuration in order to reach Gen2. iconic but also annoying π
These devices always self-identify as Gen2 capable, but sometimes the PHY is only capable of Gen1 operation, and sometimes the PCIe card (e.g. wifi) is only Gen1 capable. so yeah, thatβs the vibe π
Therefore it is most convenient to retrain every port after startup. periodt. β¨
π₯ SEE ALSO π₯
- Kernel file
./drivers/pci/controller/pcie-mediatek.cenum mtk_pcie_quirks(9)struct mtk_pcie_soc(9)struct mtk_pcie_port(9)struct mtk_pcie(9)
source/version: ./drivers/pci/controller Β· date: October 2026 β bye bestie, go retrain that link π
π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms