GPD Win 3

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Tango-edit-clear.pngThis article or section does not follow the Laptop page guidelines.Tango-edit-clear.png

Reason: Stub (Discuss in Talk:GPD Win 3)
Device Status
Video Working
Wireless Working
Bluetooth Working
Audio Working
Keyboard Working
Controller Working
Back buttons Working
Vibrator Working
Touchscreen Working
MicroSD Slot Working
Function/Multimedia Keys Working
Suspend/Resume Working
Fingerprint sensor Not working

Notes for the GPD Win3.

Fixes

Audio

This device requires Sound Open Firmware. See Advanced Linux Sound Architecture#ALSA firmware.

Edit, or create, if it does not exist, the file: /etc/modprobe.d/alsa-base.conf.

/etc/modprobe.d/alsa-base.conf
options snd-intel-dspcfg dsp_driver=1

Once done, reboot your device.

Touchscreen

The device firmware does not properly initialize the touchscreen, so a patched goodix module is required.

In addition, the touchscreen must be rotated.

Edit, or create, if it does not exist, the file: /etc/X11/xorg.conf.d/99-touchscreen.conf.

/etc/X11/xorg.conf.d/99-touchscreen.conf
Section "InputClass"
  Identifier    "calibration"
  MatchProduct  "Goodix Capacitive TouchScreen"
  Option        "TransformationMatrix"   "0 1 0 -1 0 1 0 0 1"
EndSection

To fix the touchscreen initialization, install goodix-gpdwin3-dkmsAUR and reboot your device.

Screen rotation

This device uses a portrait screen.

If you are using Xorg, create /etc/X11/xorg.conf.d/30-monitor.conf to rotate the screen:

Note: The Identifier may be different depending on your display driver of choice (either DSI-1 (modesetting) or DSI1 (xf86-video-intel))
/etc/X11/xorg.conf.d/30-monitor.conf
Section "Monitor"
  Identifier "DSI-1"
  Option     "Rotate" "right"
EndSection

Since Linux 5.15, no kernel boot parameters are required.

Suspend

deep sleep mode is not working on this device.

Enable Low power S0 idle capability in BIOS (enabled by default).

Switch to s2idle sleep mode, if not already set:

# echo s2idle > /sys/power/mem_sleep

Known issues

Screen blanking

The screen will not turn back on after blanking if the system is busy.

This issue also affects suspend feature.

A fix is already available in upstream but not yet merged in linux, and it also fixes s2idle sleep mode.

For linux <= 5.15, build your own kernel with the following patches:

Patch 1/2 - https://cgit.freedesktop.org/drm-tip/commit/?id=43315f86a3a59255463d14042f2974d134710d9c

Patch 2/2 - https://cgit.freedesktop.org/drm-tip/commit/?id=b90acd0987c81e4c8d7b4e7995ff3cecd16b2122

Notes

Tearing when using Xorg and modesetting driver

You must install xf86-video-intel driver to alleviate tearing on GPD Win 3 when using Xorg.

You can additionally enable TearFree (see Intel graphics#Tearing), but be aware that there is a noticeable impact on performance.

Windows dual-boot Audio Issues

An unknown bug causes Windows to leave the audio device in a broken state on reboot.

This is not an issue for Windows itself, but on linux it is.

If you get no audio or muted speakers or distorted audio, reboot into Windows and shutdown your device from there.

You can now boot linux and unmute the speakers if they have been muted before.