Current State of Surfaces
#State of Surface-Series Devices:
Note: These are as of Linux Kernel 4.11 (with Distro-Specific Patches, which in my case is Ubuntu)
##1^st Generation Devices
Surface RT 1:
-
Not Applicable:
Note: We have a method by which to disable UEFI Secure Boot, but so far, only a partially functional GRUB package has been ported to this specific NVidia Tegra 3 SoC. I wouldn’t expect anything coming for it soon.
Surface Pro 1:
-
CPU: Working, all aspects working as expected
-
SSD: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Working (albeit slow compared to newer devices)
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
Windows: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
DisplayPort: Working
-
Touch:
-
Multi-touch: Working
-
Pen: Working, Input Detected as Pen Input
-
-
Bluetooth: Working
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link
-
A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Working
-
-
Sensors:
-
Ambient light sensor: Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link
-
Accelerometer: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
Gyroscope: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
##2^nd Generation Devices
Surface RT 2:
- Not Applicable:
Note: We have a method by which to disable UEFI Secure Boot, but so far, only a partially functional GRUB package has been ported to this specific NVidia Tegra 4 SoC. I wouldn’t expect anything coming for it soon.
Surface Pro 2:
-
CPU: Working, all aspects working as expected
-
SSD: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Working (albeit slow compared to newer devices)
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
Windows: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
DisplayPort: Working
-
-
Touch:
-
Multi-touch: Working
-
Pen: Working, Input Detected as Pen Input
-
-
Bluetooth: Working
- LE: Not Working in some cases, others it does, largely untested
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Working
-
-
Sensors:
-
Ambient light sensor: Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link
-
Accelerometer: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
Gyroscope: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
##3^rd Generation Devices
Surface Pro 3:
-
CPU: Working, all aspects working as expected
-
SSD: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Not Working, was replaced by “Connected Standby”, which would require every distro to near to rewrite every applet they build to support it – If you use it, it results in a device hang, most kernels (like Peter Hunt’s popular “Tiggerite” Kernel) disable S3 entirely
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
Windows: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
DisplayPort: Working
-
-
Touch:
-
Multi-touch: Working
-
Pen: Working, Input Detected as Pen Input
-
-
Bluetooth: Working
- LE: Not Working in some cases, others it does, largely untested
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link
-
A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Working
-
-
Sensors:
-
Ambient light sensor: Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link
-
Accelerometer: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
Gyroscope: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
Surface 3:
-
CPU: Working, all aspects working as expected
-
SSD: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Not Working, was replaced by “Connected Standby”, which would require every distro to near to rewrite every applet they build to support it – If you use it, it results in a device hang, most kernels (like Peter Hunt’s popular “Tiggerite” Kernel) disable S3 entirely
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
Windows: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
DisplayPort: Working
-
-
Touch:
-
Multi-touch: Working
-
Pen: Working, Input Detected as Pen Input
-
-
Bluetooth: Working
- LE: Not Working in some cases, others it does, largely untested
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link
-
A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Working
-
-
Sensors:
-
Ambient light sensor: Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link
-
Accelerometer: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
Gyroscope: Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
##4^th Generation Devices
Surface Pro 4 (2016):
-
CPU: Working, all aspects working as expected
-
NVMe PCIe Storage: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Not Working, was replaced by “Connected Standby”, which would require every distro to near to rewrite every applet they build to support it – If you use it, it results in a device hang, most kernels (like Peter Hunt’s popular “Tiggerite” Kernel) disable S3 entirely
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
DisplayPort: Working
-
-
Touch:
-
Multi-touch: Not Working – You can install a custom kernel that includes the super experimental and somewhat buggy/unreliable IPTS (Touch and Pen for Series 4 Devices) though I won’t link any here, as it isn’t worth it at this point in my opinion. Here is a link to the Linux Kernel 4.9 repo Intel developed: Link
-
Pen: Not Working – You can install a custom kernel that includes the super experimental and somewhat buggy/unreliable IPTS (Touch and Pen for Series 4 Devices) though I won’t link any here, as it isn’t worth it at this point in my opinion. Here is a link to the Linux Kernel 4.9 repo Intel developed: Link
-
-
Bluetooth: Working
- LE: Not Working in some cases, others it does, largely untested
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link
-
A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Not Working (it is on a PCI bus instead of the typical USB bus as previous devices have had)
-
-
Sensors:
-
Ambient light sensor: Partially Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
Accelerometer: Partially Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
Gyroscope: Partially Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
Surface Book (Standard & Performance Base):
-
CPU: Working, all aspects working as expected
-
NVMe PCIe Storage: Working
-
Sleep:
-
S1 (CPU Stops Executing Instructions): Working
-
S2 (CPU Powered Off): Working
-
S3 (Suspend to RAM, what most of you call "Sleep"): Not Working, was replaced by “Connected Standby”, which would require every distro to near to rewrite every applet they build to support it – If you use it, it results in a device hang, most kernels (like Peter Hunt’s popular “Tiggerite” Kernel) disable S3 entirely
-
S4 (Suspend to Disk, what most of you call "Hibernation"): Working
-
-
USB: Working
-
SDXC Slot: Working (albeit detected as USB in most cases, not sure if this is an issue or not)
-
Buttons:
-
Power: Working
-
Volume Down: Working
-
Volume Up: Working
-
-
Video:
-
Integrated Intel Card: Working, Hardware Accelerated
-
dGPU: Not working – Not detected on any bus currently exposed to the Linux kernel, due to this, little to no research has been done
-
DisplayPort: Working
-
-
Touch:
-
Multi-touch: Not Working – You can install a custom kernel that includes the super experimental and somewhat buggy/unreliable IPTS (Touch and Pen for Series 4 Devices) though I won’t link any here, as it isn’t worth it at this point in my opinion. Here is a link to the Linux Kernel 4.9 repo Intel developed: Link
-
Pen: Not Working – You can install a custom kernel that includes the super experimental and somewhat buggy/unreliable IPTS (Touch and Pen for Series 4 Devices) though I won’t link any here, as it isn’t worth it at this point in my opinion. Here is a link to the Linux Kernel 4.9 repo Intel developed: Link
-
-
Bluetooth: Working
- LE: Not Working in some cases, others it does, largely untested
-
Wi-Fi:
Note: The default driver works fine for some, but not for others, to install the Marvell Driver, follow the instructions here: Link
-
A/B/G/N: Working
-
2.4 GHz: Working
-
5 GHz: Working
-
Promiscuous Mode: Not Working, Marvell drivers are to blame
-
-
Cameras:
-
Rear Camera: Working
-
Front Camera: Not Working (it is on a PCI bus instead of the typical USB bus as previous devices have had)
-
-
Sensors:
-
Ambient light sensor: Partially Working (Many Distros don’t yet have auto-brightness configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
Accelerometer: Partially Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
Gyroscope: Partially Working (Many Distros don’t yet have rotation detection configured, in many cases scripts like those found here are necessary: Link – In my findings the output of the sensors aren’t reliable/configured/accurate, needs additional research
-
-
Battery Status: Fully Working
-
Power Management: Fully Working (but not near to as optimized as Windows), and gets just as hot as Windows does under a heavy CPU load
Surface Pro 4 (2017):
- Entirely Untested
Surface Studio:
- Entirely Untested
Surface Hub:
- Entirely Untested
#Common Peripherals:
- DRM: Yes, but you need to install a Flash DRM HAL in most cases – Link
-
Surface Docks:
-
Surface Pro 3 Dock: Working – All Outputs
-
Surface Series-4 Dock (The Brick): Working – All Outputs
-
-
Surface Pens:
-
Wacom (Series 1 & 2) Pen: Partially Working, pressure sensitivity works on Series 1 & 2 devices (obviously, Wacom pens don’t work on Series 3 and above, as Microsoft moved to their newly acquired N-Trig Digitizers), unfortunately, the right click button doesn’t work
-
N-Trig Series 3 Pen: Partially Working, pressure sensitivity works on Series 3 & 4 devices (obviously, N-Trig pens don’t work on Series 2 and below, as Microsoft moved to their newly acquired N-Trig Digitizers as of Series 3), unfortunately, neither the left or right click buttons work, though, with some special key mappings, and having the pen paired via Bluetooth, you can configure the eraser button to do what you’d like (I don’t have my source for this, but know for 100% it is possible)
-
N-Trig Series 4 Pen (All Colors): Partially Working, pressure sensitivity works on Series 3 & 4 devices (obviously, N-Trig pens don’t work on Series 2 and below, as Microsoft moved to their newly acquired N-Trig Digitizers as of Series 3), unfortunately, the right click button doesn’t work, though, with some special key mappings, and having the pen paired via Bluetooth, you can configure the eraser button to do what you’d like (I don’t have my source for this, but know for 100% it is possible, though I’ve only seen it in action on Series 3 Pens)
-
N-Trig Series 4 Pens (The new one designed with tilt in mind): Untested
-
- Surface Dial: Not Working – Bluetooth pairs successfully, but there are no key-mappings for it, and none of the functions are natively detected, also, onscreen functions also don’t work.
-
Surface Covers
-
Type Cover 1: Working, with touchpad Multi-Touch
-
Touch Cover 1: Working, with touchpad Multi-Touch
-
Power Cover: Working, with touchpad Multi-Touch
-
Music Cover: Working, but there are no key-mappings for it, and none of the functions are natively detected
-
Type Cover 2: Working, with touchpad Multi-Touch
-
Touch Cover 2: Working, with touchpad Multi-Touch
-
Type Cover 3: Working, with touchpad Multi-Touch
-
Type Cover 3 (for Surface 3): Working, with touchpad Multi-Touch
-
Type Cover 4: Partially Working, touchpad Multi-Touch works, and sometimes detaching/re-attaching results in a buggy experience, little to no debugging has been done on the issue
-
Type Cover 4 (with Biometric Reader): Partially Working, touchpad Multi-Touch works, the state of the biometric sensor is unknown, I recall hearing that it works, but I can’t find my source, regardless, no distro ships with full support for it, also, sometimes detaching/re-attaching results in a buggy experience, little to no debugging has been done on the issue
-
Surface Book Base: Partially Working, touchpad Multi-Touch works, sometimes detaching/re-attaching results in a buggy experience, little to no debugging has been done on the issue, NVidia 940M is not detected on any bus or usable in its current state
-
Surface Book Performance Base: Partially Working, touchpad Multi-Touch works, sometimes detaching/re-attaching results in a buggy experience, little to no debugging has been done on the issue, NVidia 965M is not detected on any bus or usable in its current state
-
Posted May 30, 2017, 10:48 PM UTC · edited