Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

PCIe under mainline on mica (2026-11-02)

Attempt 2026-11-02-6: kernel/mica-pcie.config on top of the USB and ADSP fragments. Source: the AP console over SuzyQ (raw log dumps/firstboot/2026-11-02-ap.log).

Result: both PCIe controllers up, both devices enumerate

AddressDeviceClassLinkDriver
0006:00:00.0root port 17cb:0111 (pcie@1bf8000, gen4x4 PHY 1bfc000)0x06040016 GT/s x4pcieport
0006:01:00.0NVMe SSD 1344:5427 (vendor 0x1344: Micron)0x01080216 GT/s x4none (on purpose)
0004:00:00.0root port 17cb:0111 (pcie@1c08000, gen3x2 PHY 1c0e000)0x0604008 GT/s x2pcieport
0004:01:00.0WCN7850 Wi-Fi 17cb:11070x0280008 GT/s x2none (ath12k probe failed)
  • qcom-pcie 1bf8000.pcie: PCIe Gen.4 x4 link up at 1.6 s; 1c08000.pcie: PCIe Gen.3 x2 link up at 1.75 s.
  • Wi-Fi: the WCN7850 PMU and PCI power control powered the chip; ath12k_wifi7_pci bound, then Direct firmware load for ath12k/WCN7850/hw2.0/amss.bin failed with error -2 → failed to start mhi: -110. No Wi-Fi firmware was shipped.
  • SSD safety: BLK_DEV_NVME is =m and guarded by # forbid-y: in the fragment, so enumeration read config space only; no NVMe command was sent. The SSD is the stock disk and is never written (ADR 0003, ticket 07).
  • Deferred now: only arm-scmi (“failed to setup channels”). PCIe, USB, the GPU SMMU, the DP aux bridges and pmic-glink all probed.

What made it work

The QMP PCIe PHY was =m. The Wi-Fi port also needs PCI_PWRCTRL_PWRSEQ, which has no prompt and is selected only by ATH11K/ATH12K; ATH12K in turn needs MAC80211, CFG80211 and RFKILL built in (scripts/dt-kconfig-map.py, scripts/build-kernel.sh demotion check).