How to Diagnose PCIe Device Enumeration Failures During Bring-Up on i.MX8MQ
Engineers bringing up a PCIe WiFi module on the i.MX8MQ platform may encounter a 'Phy link never came up' error in dmesg, signaling that the peripheral is not enumerating correctly. Common causes include the device not being powered, PCIe reset remaining asserted due to an incorrect GPIO in the device tree, a missing 100 MHz reference clock, or use of the wrong PCIe controller node. A key diagnostic step is matching the correct controller by its register base address rather than its DTS label, since labels like pcie0 and pcie1 do not always align with the silicon's PCIE1 and PCIE2 designations. On i.MX8MQ, pcie0 maps to address 0x33800000 (PCIe1) and pcie1 to 0x33c00000 (PCIe2), as confirmed in the chip's reference manual. Successful enumeration can be verified using lspci -v, which should show the device as bus master with the appropriate kernel driver, such as brcmfmac, listed as active.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in