Linux Getting Quirk For Working NVMe PCIe On Surface Pro X, ThinkPad X13s

Written by Michael Larabel in Hardware on 27 February 2023 at 05:50 AM EST. 1 Comment
A change made to the Linux kernel back in 2016 is causing issues with NVMe PCIe support on some ARM64 devices like the Microsoft Surface Pro X and Lenovo ThinkPad X13s. A new kernel quirk is on the way for aiming to address that and yield working NVMe storage.

The qurik is being worked on since it turns out ARM64 systems running Microsoft Windows by default like Qualcomm Snapdragon laptops break some existing Linux kernel expectations. The current situation leads to eventually the PCIe NVMe drives from being accessible under Linux.

Microsoft picture of Surface Pro X

The issue was spotted for a Microsoft Surface Pro X laptop while the Microsoft Surface Pro 9 5G and Windows Dev Kit 2023 were also found to be exhibiting the same issue as well as the Lenovo ThinkPad X13s.
"Most arm64 platforms that do not run Windows describe host bridge registers in PNP0A03 _CRS resources, but some like Qualcomm Snapdragon Windows laptops describe host bridge windows in there. We do not want to destroy the resources for these platforms."

This workaround by Linaro's Shawn Guo is currently under review on the kernel mailing list for improving the support for these Snapdragon Windows laptops.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week