BLUF: I installed Qubes 4.1.0 on the Surface Pro 4, which went fine until I couldn’t update Qubes via Ethernet due to no internet connection. This happened via a USB-to-Ethernet OTG adapter and the Surface Dock 1.
I think PCI troubleshooting is the way to go, but I have no idea what CLI commands in a dom0 terminal emulator to use for diagnosing. IIRC, an option containing Marvell is autoselected (which aligns with this page form the Linux Surface wiki.
Even though the WiFi works and I could just get the updating of Qubes after installation, I wanted to resolve the Ethernet issue first - it wasn’t clear to me the problem would “go away” based on first principles after updating Qubes OS anyways.
According to this in Qubes 4.1, sys-net is supposed to “just work” when the internet is connected.
Because I can’t get an OTG Ethernet to USB-A adapter to work with the Surface Pro 4, I’m inferring that there’s nothing wrong with the Surface Dock 1 (which is what I used to install Qubes OS from a live USB).
Right now, this is my only issue holding me back from preparing a HCL submission for the Surface Pro 4. I though that I might as well see how far I could go with the Surface Pro 4, since the Surface Pro 3 and Surface Pro (2017) are on the HCL but for much older versions of Qubes OS.
I wasn’t considering using Qubes OS full time on my model of the Surface Pro 4 (i5 version), since it only has 8GB of RAM - which anecdotally isn’t enough to simultaneously open 2-3 VMs for serious compartmentalized work. Once the HCL submission is complete, I wouldn’t be keeping Qubes OS around as a long-term bare metal install, but I could reinstall Qubes for reproducibility if others had issues during installation. (I will eventually have to if the Pro 4 ever gets more system/firmware updates after July 2021)