跳转至内容

GPD Pocket

来自 ArchWiki

本文或章节未遵循 笔记本电脑页面指南

原因: 存根 (请在 Talk:GPD Pocket 讨论)

关于 GPD Pocket 的说明。

规格

  • 显示屏: 7英寸 IPS 1920x1200
  • CPU: Intel Atom X7-Z8750
  • 内存: 8GB LPDDR3-1600
  • 存储: 128GB eMMC SSD (不可更换)
  • 电池: 7000mAh
  • WiFi: Broadcom 4356 802.11ac
  • 蓝牙: Broadcom 2045
  • 音频: Realtek ALC5645
  • 接口: 1 x USB 3 type A, 1 x MicroHDMI, 1 x USB 3 type C, 1 x 3.5mm 耳机插孔

配置

手动

背光和KMS

修改 /etc/mkinitcpio.conf 使其与以下内容匹配

/etc/mkinitcpio.conf
...
MODULES=(i915 pwm-lpss-platform)
...

这将启用背光控制,并修复从挂起到恢复时的黑屏问题。

屏幕旋转

得益于内核补丁,Linux内核应自动提示GPD Pocket的屏幕旋转。如果无效,或者您不使用桌面管理器,请遵循以下说明。

Wayland

屏幕旋转

要旋转触摸屏,请创建

/etc/udev/rules.d/99-goodix-touch.rules
ACTION=="add|change", KERNEL=="event[0-9]*", ATTRS{name}=="Goodix Capacitive TouchScreen", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"
右键模拟

与Xorg不同,Xorg可以通过标准的Xorg配置文件启用右键模拟,而在Wayland下,这种配置应由合成器暴露,但不幸的是,一些合成器(例如GNOME Wayland)并未正确暴露这些配置。然而,相关的功能仍然可以在 libinput 中使用。由于这些合成器通常会加载 /etc/profile.d,因此可以使用 LD_PRELOAD 来钩入 libinput 并强制应用这些配置。

该方法的示例实现可以在 这里 找到。

Xorg

屏幕旋转

创建 /etc/X11/xorg.conf.d/30-monitor.conf 来旋转显示器

注意 根据您选择的显示驱动程序,标识符可能会有所不同 (模式设置使用 DSI-1,xf86-video-intel 使用 DSI1)
/etc/X11/xorg.conf.d/30-monitor.conf
Section "Monitor"
  Identifier "DSI-1"
  Option     "Rotate" "right"
EndSection
Gnome和GDM

编辑 ~/.config/monitors.xml (此文件可能默认不存在)

~/.config/monitors.xml
<monitors version="2">
  <configuration>
    <logicalmonitor>
      <x>0</x>
      <y>0</y>
      <scale>2</scale>
      <primary>yes</primary>
      <transform>
        <rotation>right</rotation>
        <flipped>no</flipped>
      </transform>
      <monitor>
        <monitorspec>
          <connector>DSI-1</connector>
          <vendor>unknown</vendor>
          <product>unknown</product>
          <serial>unknown</serial>
        </monitorspec>
        <mode>
          <width>1200</width>
          <height>1920</height>
          <rate>60.384620666503906</rate>
        </mode>
      </monitor>
    </logicalmonitor>
  </configuration>
</monitors>

这设置了正确的旋转 (<rotation>right</rotation>) 和2的缩放因子 (<scale>2</scale>)。有关分数缩放,请参阅 HiDPI#GNOME

对于 GDM,将上面的 ~/.config/monitors.xml 复制到 /var/lib/gdm/.config/monitors.xml 以设置正确的旋转。

KDE

系统设置 > 显示和监视器 中,将 方向 更改为 顺时针90°,并将 缩放显示 设置为舒适的大小。

右键模拟

创建 /etc/X11/xorg.conf.d/50-trackpoint.conf 以在按住右键时滚动

/etc/X11/xorg.conf.d/50-trackpoint.conf
Section "InputClass"
  Identifier      "GPD trackpoint"
  MatchProduct    "SINO WEALTH Gaming Keyboard"
  MatchIsPointer  "on"
  Driver          "libinput"
  Option          "MiddleEmulation" "1"
  Option          "ScrollButton" "3"
  Option          "ScrollMethod" "button"
EndSection
SDDM

要使DPI可读,请将以下行附加到 /usr/share/sddm/scripts/Xsetup

/usr/share/sddm/scripts/Xsetup
# Set DPI  
xrandr --dpi 168"  
触摸屏手势

安装 touchegg,然后编辑 /usr/share/touchegg/touchegg.conf 中的以下行

/usr/share/touchegg/touchegg.conf
...
<action type="SCROLL">SPEED=7:INVERTED=true</action>
...

创建以下文件

/etc/X11/xinit/xinitrc.d/01_touchegg
#!/bin/sh

# starts touchegg application
PREFIX="$HOME/.config/touchegg/.run"
mkdir -p "$PREFIX"
PIDFILE="$PREFIX/touchegg.$USER$DISPLAY.pid"
LOCK="$PREFIX/touchegg.$USER$DISPLAY.lock"

start_touchegg() {
        (
                flock -n 9 || exit 1
                touchegg 2>/dev/null >/dev/null &
                PID=$!
                echo "$!" >"$PIDFILE"
                wait $PID
        ) 9>"$LOCK"
}

start_touchegg &

并使其 可执行

风扇

使用最新的内核,您的风扇应该可以开箱即用。

注意 如果您的风扇无法正常工作,请尝试以下方法
# modprobe -r gpd-pocket-fan
# modprobe gpd-pocket-fan temp_limits=40000,40001,40002

完成后,您应该会在40°C时听到风扇启动。如果您听到咔哒声,请关闭设备,取下后面板,然后轻轻地将风扇推动几次。然后重新安装面板并启动设备,登录后再次运行上述命令。有些设备似乎存在风扇长时间未通电时无法正常启动的问题。

完成这些步骤并且风扇正常工作后,您应该重启或重新加载风扇内核模块,以将温度限制恢复为默认值。

# modprobe -r gpd-pocket-fan
# modprobe gpd-pocket-fan
注意 默认情况下,风扇在接通交流电时始终旋转 [1]。要覆盖此行为,请将 gpd-pocket-fan.speed_on_ac=0 添加到 内核参数

省电

安装 tlp,然后编辑 /etc/default/tlp 中的以下行

/etc/default/tlp
...
# improve disk IO
DISK_DEVICES="mmcblk0"
DISK_IOSCHED="deadline"
...
# disable wifi power saving mode (wifi speed drops MASSIVELY!)
WIFI_PWR_ON_AC=off
WIFI_PWR_ON_BAT=off
...

音频

声卡需要安装 PulseAudio

将以下行附加到 /etc/pulse/default.pa

/etc/pulse/default.pa
set-card-profile alsa_card.platform-cht-bsw-rt5645 HiFi
set-default-sink alsa_output.platform-cht-bsw-rt5645.HiFi__hw_chtrt5645_0__sink
set-sink-port alsa_output.platform-cht-bsw-rt5645.HiFi__hw_chtrt5645_0__sink [Out] Speaker

通过编辑 /etc/pulse/daemon.conf 关闭实时调度

/etc/pulse/daemon.conf
realtime-scheduling = no

充电控制

可以控制充电电流、充电结束电压以及其他一些设置。

有关更多信息和示例脚本,请参阅 此Reddit帖子

已知问题

本文或本章节已过时。

原因: 此部分自2021-07-09以来未进行更新,这些问题今天是否仍然存在?(请在 Talk:GPD Pocket 讨论)

Wifi无法识别12/13/14信道

截至2021年5月,使用当前内核和固件版本,Broadcom 4356适配器不再能访问全球允许的1-11信道范围之外的网络。通过 iw reg set <alpha2> 设置 监管域 无法解决此问题;显然, 内核驱动程序 不支持此功能。相反,编辑 /usr/lib/firmware/brcm/brcmfmac4356-pcie.gpd-win-pocket.txt 并将 ccode=X2 更改为您的国家 (例如,ccode=DE 可启用12/13信道但不能启用14信道) 并重启 (提示来自 早期邮件列表消息)。

参见