Skip to content

Feature Support

Alex R edited this page Mar 12, 2024 · 54 revisions

This page details currently supported features on X13s, as well as their upstream status.

sc8280xp SoC features

Features found on all devices featuring a given SoC

sc8280xp
AICv2 N/A
DART ?
ARM PMU ?
cpufreq linux-x13s
cpuidle linux-x13s
System suspend linux-x13s
UART ?
Watchdog ?
PCIe ?
I2C ?
GPIO ?
USB-PD linux-firmware
WiFi linux-firmware
WWAN/5G see notes
3.5mm jack see notes
Power management see notes
NVMe 5.19
SPI ?
SPI NOR ?
Primary display linux-x13s
Touchscreen see notes
DCP ?
DP Alt Mode see notes
USB2 5.19
USB3 5.19
SMC ?
SPMI ?
RTC ?
SEP ?
Bluetooth see notes
Video Decoder 6.3
Video Encoder WIP
VA-API WIP
GPU see notes
Neural Engine ?

Audio

speaker / headphone are working as of 6.2.0-rc7-next-20230210-0-x13s+ if you have:

mic still not working

Power

To get power management and battery working fully you need the following dependencies which are available in the AUR:

sudo systemctl enable --now pd-mapper

Bluetooth

working as of kernel 6.2.0-rc7, install firmware and set an address with btmgmt. e.g., sudo btmgmt public-addr F4:A8:0D:30:A3:47

To make it just work, copy this file to /etc/systemd/system/bluetooth.service.d/override.conf (It is courteous to use your own public-addr, put a random string of numbers to make it unique.)

[Service]
ExecStartPre=/bin/bash -c 'sleep 5 && yes | btmgmt public-addr 00:24:81:17:62:36'
# Blank ExecStart line to clear the service file, overrides are additive.
ExecStart=
ExecStart=/usr/lib/bluetooth/bluetoothd

DP Alt Mode

Should mostly Just Work with linux-x13s kernel, but if you use GNOME with wayland, there is an open bug:

Touch screen

There is some probe defer issue to get touch screen bound to i2c_hid_of driver. To workaround install x13s-touchscreen-udev

GPU

working as of kernel 6.2.0-rc7, just install this patched mesa and the firmware

Full disk encryption

These modules need to be added into /etc/mkinitcpio.conf

nvme phy_qcom_qmp_pcie pcie_qcom i2c_hid_of i2c_qcom_geni leds_qcom_lpg pwm_bl qrtr pmic_glink_altmode gpio_sbu_mux phy_qcom_qmp_combo panel-edp msm phy_qcom_edp

WWAN / 5G

This should work, you need to:

  • Ensure WWAN is enabled in the kernel config
  • Ensure linux can find your device lspci -nn | grep Foxconn should return something like: 0004:01:00.0 Wireless controller [0d40]: Foxconn International, Inc. T99W175 5G Modem [Snapdragon X55] [105b:e0c3]
  • Ensure the fcc unlock symlink in /etc/ModemManager/fcc-unlock.d matches your device, so mine would look like 105b:e0c3: symbolic link to /usr/share/ModemManager/fcc-unlock.available.d/105b:e0c3 but yours might look different depending on your lspci output.
  • Ensure ModemManager is enabled and that the access point is configured like how it is in Windows. Further reading: https://wiki.archlinux.org/title/Mobile_broadband_modem