HP Spectre x360 (2020)

From ArchWiki
Jump to navigation Jump to search

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

Reason: Hardware table should not include kernel module information (see Help:Laptop page guidelines#Kernel module information). Use PCI/USB IDs (for applicable hardware) instead. (Discuss in Talk:HP Spectre x360 (2020))
Hardware Modules Working?
Video ? Yes
Wireless iwlwifi Yes
Bluetooth bluetooth Yes
Audio snd_hda_intel Yes
Touchpad ? Yes
Touchscreen hid_multitouch Yes
Webcam ? Yes
Wireless switch ? Unknown
Fingerprint sensor libfprint No

This article covers hardware specific configuration of this laptop, some minor issues remain after customization. These can be performed after an installation of Arch Linux has been finished and the machine rebooted into it.

For a general overview of laptop-related articles and recommendations, see Laptop.

Hardware info

Hardware options

This wiki covers the HP Spectre x360 released in 2020 containing TigerLake CPUs. The SKUs covered by this article include, but might not be limited to:

  • 13-aw2777ng
  • 14t-ea000
  • 14-ea0x

Installation

Installation should be uneventful except that the vmd (Intel Volume Management Device) module needs to be added to /etc/mkinitcpio.conf in order for the freshly installed OS to boot properly.

Tweaks

Brightness / backlight (OLED Screens)

See Backlight for more information on how to configure backlight control. Some OLED displays require additional software to be able to adjust the backlight as there is not really a backlight. See also Backlight#Unable to control eDP Panel brightness (Intel i915 only) in this case.

icc-brightness-gnome-gitAUR can be installed which may enable brightness control under GNOME (and possibly other environments).

Audio

This laptop requires firmware in order for the soundcard to work. See Advanced Linux Sound Architecture#ALSA firmware.

Ensure that PulseAudio is configured and running. Ensure that PulseAudio can detect the sound card via pactl list cards like so:

$ pactl list cards
Card #0
	Name: alsa_card.pci-0000_00_1f.3-platform-skl_hda_dsp_generic
	Driver: module-alsa-card.c
	Owner Module: 6
	Properties:
		alsa.card = "0"
		alsa.card_name = "sof-hda-dsp"
		alsa.long_card_name = "HP-HPSpectrex360Convertible14t_ea000--87F7"
		alsa.driver_name = "snd_soc_skl_hda_dsp"
		device.bus_path = "pci-0000:00:1f.3-platform-skl_hda_dsp_generic"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/skl_hda_dsp_generic/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "a0c8"
		device.product.name = "Tiger Lake-LP Smart Sound Technology Audio Controller"
		device.string = "0"
		device.description = "Tiger Lake-LP Smart Sound Technology Audio Controller"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Profiles:
		HiFi: Play HiFi quality Music (sinks: 4, sources: 2, priority: 8000, available: yes)
		off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
	Active Profile: HiFi
	Ports:
		[Out] HDMI3: HDMI3 Output (type: HDMI, priority: 700, latency offset: 0 usec, not available)
			Part of profile(s): HiFi
		[Out] HDMI2: HDMI2 Output (type: HDMI, priority: 600, latency offset: 0 usec, not available)
			Part of profile(s): HiFi
		[Out] HDMI1: HDMI1 Output (type: HDMI, priority: 500, latency offset: 0 usec, not available)
			Part of profile(s): HiFi
		[Out] Speaker: Speaker (type: Speaker, priority: 100, latency offset: 0 usec, availability unknown)
			Part of profile(s): HiFi
		[Out] Headphones: Headphones (type: Headphones, priority: 200, latency offset: 0 usec, not available)
			Part of profile(s): HiFi
		[In] Mic2: Headphones Stereo Microphone (type: Mic, priority: 200, latency offset: 0 usec, not available)
			Part of profile(s): HiFi
		[In] Mic1: Digital Microphone (type: Mic, priority: 100, latency offset: 0 usec, availability unknown)
			Part of profile(s): HiFi

No additional configuration should be required to get PulseAudio to detect the card.

Kernels prior to 5.14.2

The information below pertains to kernels before 5.14.2 and is kept in case of new models which require additional kernel patches.

Once the card is detected, you need to run the following:

sudo hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x01
sudo hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x01
sudo hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x01
sudo hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x00

Then restart PulseAudio. You might need to apply the above changes twice to get them to take effect. The above will need to be run on every boot until upstream makes the required changes. This is because "The audio chip has an amplifier pin that needs to be set. It is pin 1..."

https://askubuntu.com/questions/1263178/20-04-no-speaker-audio-on-hp-spectre-x360-2020-15t-eb000

The kernel may be patched by updating the quirk list at sound/pci/hda/patch_realtek.c with the appropriate subdevice ID.

Power Management

Function Keys

All function keys work as expected except the keys mentioned below.

Mute Button Light (F5)

Microphone Mute (F8)

The OS does not recognize the key press, but it does detect it and can be manually configured.

[ 2834.402270] atkbd serio0: Unknown key pressed (translated set 2, code 0x82 on isa0060/serio0).
[ 2834.402274] atkbd serio0: Use 'setkeycodes e002 <keycode>' to make it known.
[ 2834.487944] hp_wmi: Unknown key code - 0x270
[ 2834.494508] atkbd serio0: Unknown key released (translated set 2, code 0x82 on isa0060/serio0).
[ 2834.494514] atkbd serio0: Use 'setkeycodes e002 <keycode>' to make it known.

Kill Camera

The Disable Camera button physically disconnects the Webcam device from the host. The OS does not recognize the keypress, but it is detected.

Disconnected:

[ 2449.374540] hp_wmi: Unknown event_id - 26 - 0xff
[ 2449.480281] usb 3-5: USB disconnect, device number 5

Re-connected:

[ 2451.701121] hp_wmi: Unknown event_id - 26 - 0xfe
[ 2451.930245] usb 3-5: new high-speed USB device number 6 using xhci_hcd
[ 2452.072569] usb 3-5: New USB device found, idVendor=0408, idProduct=5442, bcdDevice= 0.11
[ 2452.072574] usb 3-5: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[ 2452.072576] usb 3-5: Product: HP True Vision HD Camera
...