GPD Win Max 2021 - Intel i7-1195G7

Remarks

  • alsa-sof-firmware needed to be installed into dom0 to get any sound cards recognised at all (not anybody’s fault. Tiger Lake CPUs are still relatively new)
  • The display needed to be configured with custom EDID (https://www.reddit.com/r/gpdwin/comments/ik3dje/gpd_win_max_display_fix_in_linux/)
  • Runs the latest 4.1 release release candidate perfectly. No modifications needed to be made to the default install
  • The touchscreen and display’s default orientation is sideways to the position of the keyboard (I have a feeling the screen is identical to an iPad Mini display, and they’ve just repurposed it), so the GRUB menu, Plymouth boot screen, and login screen are all sideways. I have fixed it with an XFCE login script (attached below), but I’m still working on rotating GRUB and Plymouth.
  • Qubes OS with a touchscreen is a lot more awesome that you might think! (I’m going to look for an x86 tablet now…)
  • The built-in keyboard and trackpad, 2x USB A ports, 2xUSB-C ports are each on their own separate USB bus, which is nice. The built-in Xbox 360 controller, however, is with the 2 USB-A ports (which doubles as a pointer device). A sys-usb qube is definitely possible.
  • Interesting quirk when closing the lid. It sleeps immediately. When opening the lid, the display turns on immediately, everything powers up, but then the entire system hangs for 1-2 minutes (it’s like the Scroll Lock key was pressed, that’s the best way I can describe it), before coming back to life. (I know because I watch the xscreensaver blue bar stay still for 1-2 minutes, before it suddenly starts going down, and I can move the mouse again). Not sure how to fix this, but to be honest, I haven’t really looked…
  • The display does some weird things sometimes. I try to avoid changing it’s resolution, because I then get tearing and…well…google image search “GPD Win Max display linux” and you’ll see what I mean :sweat_smile:
  • The internal keyboard (like most laptop keyboards) has things like volume, screen brightness, keyboard backlight control, etc. Fn + F1 acts as volume mute toggle. HOWEVER, when pressed, it makes Qubes OS mute and unmute the volume rapidly for about 2-3 seconds, and then kills the keyboard input (you can click on VM windows, but you cannot type in them, nor can you interact with anything in XFCE). It’s baked into the keyboard’s firmware, so you just have to make sure you don’t press Fn + F1. XFCE muting works without any issue (by clicking on it), just not Fn + F1.

More to be filled in later…

Attachments

Qubes-HCL-GPD-G1619_03-20211104-201700.yml (912 Bytes)

Bash script to fix GPD Win Max display on login (will do nothing on boot, as X11 isn’t running yet…)
#!/bin/sh

#Rotate display 90 degrees right with 1280x800 resolution
xrandr --newmode "800x1280_60.06" 68.500 800 816 832 880 1280 1283 1285 1296 -HSync -VSync
xrandr --addmode DSI1 "800x1280_60.06"
xrandr --output DSI1 --mode "800x1280_60.06" --rotate right

#Rotate touchscreen 90 degress right
xinput set-prop "pointer:Goodix Capacitive TouchScreen" --type=float 177 0 1 0 -1 0 1 0 0 1

#Map touchscreen to internal display only
xinput map-to-output "pointer:Goodix Capacitive TouchScreen" DSI1

I’m working on a udev rule to make this script run whenever a display is added/removed, otherwise the touchscreen is mapped to all displays combined.

1 Like

Thank you @alzer89 for your HCL report, which is now online.

1 Like

On that note, is there any chance of anyone giving me a hand with installing a custom EDID in Qubes OS 4.1 beta?

This piece of hardware does something very strange with its display that worked in the previous GPD Win Max, and didn’t work in this model.

…and it seems to almost completely ignore them.

When it boots with an external display plugged into the HDMI port, the internal display looks like this (perfectly fine):


Yes, GRUB is sideways, but I’ve learned to live with it…

…then you put you disk password in…

…and it works wonderfully, even if you then unplug the external HDMI display.

But when it boots with only the internal display present, it looks like this:


…perfectly fine until lightdm loads, and then THIS:



I have passed the following kernel parameters in grub.cfg:

video=DSI1:1800x280 drm.edid_firmware=DSI1:edid/gpdwinmax.bin fbcon=rotate:1

…and they worked on the other GPD Win Max models, but don’t seem to do anything at all on this one.

The value of /sys/devices/pci0000\:00/0000\:00\:02.0/drm/card0/card0-DSI1/edid is empty.

I have placed the EDID firmware of the original GPD Win Max in /lib/firmware/edid/gpdwinmax.bin.

Does anyone know anything I’ve missed?

I’ve been at it for about a week straight now, and would greatly appreciate any help anyone is willing to offer.

I’m happy to post this under the User Support category if it would make it better organized.

Thank you in advance to anyone who answers!