Trackpad and speaker issues with HP ENVY x360 Laptop 15-ey0754ng

Hello everybody. I really wanted to submit an HCL report saying that this device is working with Qubes 4.1.2 and the new kernel (older Qubes versions always resulted in a kernel panic before installation) but I am still having some issues. I wanted to ask the community if somebody might have an idea to fix the problems before reporting this device as not fully compatible.

Device: HP ENVY x360 15-ey0754ng
CPU: AMD Ryzen 5 5625U / 2,3 GHz
Video: AMD Radeon RX Vega 7
Sound: Audio by Bang & Olufsen ICEpower
SSD: 512GB PCIe
RAM: 16GB (DDR4 SDRAM - PC4-25600 - 3200 MHz)

1st trackpad (and touchscreen) are not recognized

I didnā€™t expect the touchscreen to work, but the trackpad would be very helpful. The trackpad is not recognized as a USB device in ā€œsys-usbā€ nor as an input device (like the keyboard) by dom0. Other Linux distros (tested with Ubuntu and Fedora) can use the trackpad without any problems.

Iā€™ve used the command hwinfo in Ubuntu to check how the device is connected and it returned the following:

...
*-input:14
     product: SYNA32CB:00 06CB:CE7D Mouse
     physical id: 10
     logical name: input34
     logical name: /dev/input/event14
     logical name: /dev/input/mouse3
     capabilities: i2c
*-input:15
product: SYNA32CB:00 06CB:CE7D Touchpad
     physical id: 11
     logical name: input35
     logical name: /dev/input/event15
     logical name: /dev/input/mouse4
     capabilities: i2c
...

Iā€™ve tested assigning the PCI-device dom0:00_14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (found via qvm-devices pci list) to ā€œsys-usbā€ which I assumed handles the i2c devices, but the trackpad was still not recognized.

2nd the speaker of the system is recognized but doesnā€™t play sound

I can select the speaker and Iā€™m seeing the amplitudes in the audio manager, but nothing is coming from the speaker itself. Connecting headphones to the 3.5mm jack works perfectly. I first thought they might be faulty, but when entering the BIOS they are beepingā€¦

I tried my best to find solutions to my problems, but I failed. Iā€™m thankful for any suggestions.

Phil

Hi,
for the trackpad, if last kernel doesnā€™t work, maybe a driver issue ? or policies rules ?
Laptop hardware connection are manufacturer specific ā€¦

If it was my laptop, i would try some searches like:
https://forum.qubes-os.org/search?q=trackpad
https://www.startpage.com/do/search?q=qubes+i2c+trackpad
https://www.startpage.com/do/search?q=HP+ENVY+x360+15+trackpad+not+working

Did you figured out ?

For audio, well, hard to tell, letā€™s do with the generic answer: driver problem :slight_smile:
(Open a new topic for the audio issue, focus this one on the trackpad ā€¦)

Hi, thank you for your ideas.
I agree, there are probably some issues with the driversā€¦
I have been unable to find a workaround yet, but I am still testing and will update the thread as soon as something fixes my problems. Maybe a future update.
Using the device with headphones and a mouse works so far, but for traveling the touchpad would be nice.
After I resolve the touchpad problem, I will mark this thread as solved and open another one for the audio. Thatā€™s a good idea.

Wasnā€™t sure if you was talking about trackpad or touchpad.
Touchpad sound more logicalā€¦

Yours (touchpad) is probably connected via usb (if its was via PS/2 it would have worked).
Its must be dom0 policies related, to allow your touchpad as you allow a usb keyboard.
Iā€™m not 100% sure, as I do not have a usb touchpad (if its the issue).

https://www.qubes-os.org/doc/usb-qubes/
https://www.qubes-os.org/doc/rpc-policy/ (see the 4.1 article)

edit:
reading again, if your Touchpad is not detected, my answer is not very helpful.
what say dmesg or journalctl ?
Maybe give a try to the 4.2rc ?

Sorry for the confusion, I mixed the terms up.
But to clarify booth devices are not recognized:

  • The touchscreen inside the display (which I expected)
  • The trackpad build inside the device, located beneath my keyboard (which I really want to fix)

Even if the devices are not recognized I checked the policies, but with no success. Iā€™ve added sys-usb dom0 ask,user=root,default_target=dom0 (found in qubes.InputMouse) to qubes.InputTablet but sadly no changes.

Iā€™ve also checked dmesg and journalctl (links below - just for documentation, I am pretty sure you would like to spend your time with other things than digging through other peopleā€™s logs). I was not able to spot any problems besides the ones listed below but truth be told I am not so familiar with this level of the OS.

  • An ACPI BIOS Warning (bug): Incorrect checksum in table
  • At 3.285496 ccp is unable to access a device. But I donā€™t think it is an input device.
  • At 20.003154 a SMBus base address mapping failed
    dmesg (PrivateBin)
    journalctl (PrivateBin)

Testing the 4.2rc is also a good option. As soon as everything is configured to my needs I will make a backup of the system and try the newest build.

Thank you again!

Just to be sure, you have choose the lastest-kernel option when installed.

from dmesg and journalctl:

[ 27.477635] and Apr 02 17:04:33
pciback 0000:04:00.4: xen-pciback: Driver tried to write to a read-only configuration space field at offset 0x2a6, size 2. This may be harmless, but if you have problems with your device:
1) see permissive attribute in sysfs
2) report problems to the xen-devel mailing list along with details of your device obtained from lspci.

with quick search, I also think i2c are handle by
dom0:00_14.0 SMBus: Advanced Micro Devices [ā€¦]

Not sure if the pciback refer to the touchpad, but you can try to add:
permissive=true only, and/or with no-strict-reset=true to the pci passthrough.
https://www.qubes-os.org/doc/how-to-use-pci-devices/#additional-attach-options

from dmseg

you appear to use rd.qubes.hide_all_usb.
If i2c use some wrapper including usb things, this could hide the touchpad.
(info about hide_all_usb are in the usb-qubes doc).
Wild idea of course ā€¦

[ 2.154656] i8042: PNP: PS/2 Controller [PNP0303:KBC0] at 0x60,0x64 irq 1
[ 2.154658] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[ 2.155048] serio: i8042 KBD port at 0x60,0x64 irq 1
[ 2.155156] mousedev: PS/2 mouse device common for all mice

Donā€™t know what is it, but mouse is mentioned.

from journalctl:

Apr 02 17:04:39 dom0 qrexec-policy-daemon[2104]: qrexec: qubes.InputKeyboard: sys-usb ā†’ dom0: denied: no matching rule found

Unlikely, but who knows, if touchpad is somehow declaring itself as keyboard,
but not enought to be detected as such by Qubes OS or kernel ?
Probably not, at last resort, you can dig into this ^^

the rd.qubes.hide_all_usb is probably not the cause.

new keyword search:
https://www.startpage.com/do/search?q=qubes+touchpad+not+detected

from abandonned topic:
https://forum.qubes-os.org/t/qubes-users-problems-with-trackpad-during-installation/481

ls /sys/module/psmouse/driver/*/ may also give useful information -

e.g. from me:

[user@dom0 ~]$ cat /sys/module/psmouse/drivers/serio\:psmouse/description 
PS/2 mouse driver

https://github.com/QubesOS/qubes-issues/issues/5486
what say : sudo libinput list-devices ? not detected ?

some other keyword:
https://www.startpage.com/do/search?q=hp+envy+linux+touchpad+not+detected
https://developers.hp.com/hp-client-management/forum/touchpad-does-not-work-after-installing-ubuntu-2004-hp-laptop

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash psmouse.proto=bare"
GRUB_CMDLINE_LINUX="i8042.reset i8042.nomux i8042.nopnp i8042.noloop"

everything is not need I guess, in your log you have something similar:

[ 2.154658] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp

By the way, what was the kernel version used with your hwinfo in Ubuntu ?
I suppose your BIOS is up to date as well.

Thank you so much for your time and suggestions.
I needed some time to work through everything.

I double-checked the installed kernel. Yes, it is the latest. Qubed did not allow me to update it

sudo qubes-dom0-update kernel-latest
Using sys-firewall as UpdateVM to download updates for Dom0; this may take some time...
Qubes OS Repository for Dom0			2.9MB/s | 3.0kB	00:00
Package kernel-latest-1000:6.1.12-1.qubes.fc32.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

qubes-prefs
check_updates_vm          D  True
clockvm                   -  sys-net
default_audiovm           D  dom0
default_dispvm            -  fedora-37-dvm
default_guivm             D  dom0
default_kernel            -  6.1.12-1.fc32
default_netvm             -  sys-firewall
default_pool              -  vm-pool
default_pool_kernel       -  linux-kernel
default_pool_private      D  vm-pool
default_pool_root         D  vm-pool
default_pool_volatile     D  vm-pool
default_qrexec_timeout    D  60
default_shutdown_timeout  D  60
default_template          -  fedora-37
management_dispvm         -  default-mgmt-dvm
stats_interval            D  3
updatevm                  -  sys-firewall

I applied the GRUB-Config and added the SMBus to sys-usb again.

nano /etc/default/grub
RUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=false
GRUB_TERMINAL_OUTPUT="gfxterm"
GRUB_CMDLINE_LINUX="rd.luks.uuid=luks-0c65cb5e-d2d0-474f-af0e-89c65050b234 rd.l>
GRUB_DISABLE_RECOVERY="true"
GRUB_THEME="/boot/grub2/themes/qubes/theme.txt"
GRUB_CMDLINE_XEN_DEFAULT="console=none dom0_mem=min:1024M dom0_mem=max:4096M uc>
GRUB_DISABLE_OS_PROBER="true"
GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX rd.qubes.hide_all_usb i8042.reset i8042>
GRUB_CMDLINE_LINUX_DEFAULT="psmouse.proto=bare"

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

vm-pci attach --option no-strict-reset=true --option permissive=true --persistent sys-usb dom0:00_14.0

Furthermore, I investigated the disabled keyboard. It seems like it is just a part of my USB mouseā€¦ There is also no other device in the list, which I could imagine as my trackpad.

sudo xinput
āŽ” Virtual core pointer                    	id=2	[master pointer  (3)]
āŽœ   ā†³ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
āŽœ   ā†³ sys-usb: XiaoMi Mi Wireless Mouse       	id=11	[slave  pointer  (2)]
āŽœ   ā†³ sys-usb: XiaoMi Mi Wireless Mouse Consumer Control	id=13	[slave  pointer  (2)]
āŽ£ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ā†³ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ā†³ Power Button                            	id=6	[slave  keyboard (3)]
    ā†³ Video Bus                               	id=7	[slave  keyboard (3)]
    ā†³ Power Button                            	id=8	[slave  keyboard (3)]
    ā†³ AT Translated Set 2 keyboard            	id=9	[slave  keyboard (3)]
    ā†³ HP WMI hotkeys                          	id=10	[slave  keyboard (3)]
    ā†³ sys-usb: XiaoMi Mi Wireless Mouse System Control	id=12	[slave  keyboard (3)]
    ā†³ sys-usb: XiaoMi Mi Wireless Mouse Consumer Control	id=14	[slave  keyboard (3)]

sudo libinput list-devices
Device:           Power Button
Kernel:           /dev/input/event2
Group:            1
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Video Bus
Kernel:           /dev/input/event4
Group:            2
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Power Button
Kernel:           /dev/input/event0
Group:            3
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           Lid Switch
Kernel:           /dev/input/event1
Group:            4
Seat:             seat0, default
Capabilities:     switch
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           AT Translated Set 2 keyboard
Kernel:           /dev/input/event3
Group:            5
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           HP WMI hotkeys
Kernel:           /dev/input/event10
Group:            6
Seat:             seat0, default
Capabilities:     keyboard switch
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           sys-usb: XiaoMi Mi Wireless Mouse
Kernel:           /dev/input/event11
Group:            7
Seat:             seat0, default
Capabilities:     pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   button
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   flat *adaptive
Rotation:         n/a

Device:           sys-usb: XiaoMi Mi Wireless Mouse System Control
Kernel:           /dev/input/event12
Group:            8
Seat:             seat0, default
Capabilities:     keyboard 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a

Device:           sys-usb: XiaoMi Mi Wireless Mouse Consumer Control
Kernel:           /dev/input/event13
Group:            9
Seat:             seat0, default
Capabilities:     keyboard pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   n/a
Rotation:         n/a
# with qubes.InputKeyboard containing ys-usb dom0 ask,user=root,default_target=dom0

I also tried the psmouse/description command whose result looks like yours. I tried to update some drivers, too.

cat /sys/module/psmouse/drivers/serio\:psmouse/description
PS/2 mouse driver

sudo qubes-dom0-update xorg-x11-drv-synaptics-devel

I am not entirely sure, but I used Ubuntu 22.04.2 LTS to get the hwinfo results whose kernel version should be (based on a quick internet search) Linux 5.19. But the trackpad also worked with an installation of Fedora 37 using the kernel version 6.0.

Moreover, today I upgraded dom0 from 2001:4.14.5-19.fc32 to 2001:4.14.5-20.fc32`, but still nothing to report.

Until now I did not validate the BIOS ā€˜cause I trusted HP with shipping devices with a current version and I wanted to avoid using Windows on the device again (HP-Laptopsā€™ BIOSs can only be upgraded via a Windows tool). I upgraded from BIOS version F.08 to the current F.11 and upgraded the touchscreen firmware on the fly. Nevertheless, no effect.

While using Windows 2 Go to update the BIOS I recognized, that the deviceā€™s speakers were not working, too. I am going to back up my Qubes now, then I will install Windows directly onto the device to validate, that the audio is working at all. Otherwise, there might be something internally broken and I have to return it. After I figured out if the speakers are working, I will test the latest dev build or just a fresh installation.

I will keep you updated. Thank you again for checking my logs and trying to help! I really appreciate your help.

I was a bit verbose with my explanation, with some wild (unnecessary) guesses.

This shouldnā€™t be needed.

The GRUB_CMDLINE_LINUX example wasnā€™t meant to be copy/paste,
its a quote of the hp.com topic. (donā€™t use the _DEFAULT suffix)

I donā€™t think you need the SMBus part, your touchpad is a PS/2 mouse driver.

The revelant part is:

[ 2.154658] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp

The first thing you need to try, as suggest by the log.

GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX i8042.nopnp"

# sudo grub2-mkconfig -o /boot/grub2/grub.cfg (legacy boot)
sudo grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg

If it doesnā€™t resolve the touchpad problem, you can try to add the other kernel options.
(1 by 1, or all at once, donā€™t know, didnā€™t dig)

GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX psmouse.proto=bare i8042.reset i8042.nomux i8042.nopnp i8042.noloop"

Hello again.

Today I found some time to play with my laptop again and I can report that I solved the trackpad issue. (As mentioned above I will deal with the audio problems in a different thread as soon as I proved that there is no hardware problem involved)

Just entering the grub arguments was not enough. I also switched dom0 updates to Unstable updates. But at least, I can use the trackpad now.

For other users with similar problems: This is my current GRUB configuration sudo nano /etc/default/grub applied via sudo grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg. But I am unsure if just switching the update channel is sufficient.


GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"

GRUB_DEFAULT=saved

GRUB_DISABLE_SUBMENU=false

GRUB_TERMINAL_OUTPUT="gfxterm"

GRUB_CMDLINE_LINUX="rd.luks.uuid=luks-0c65cb5e-d2d0-474f-af0e-89c65050b234 rd.lvm.lv=qubes_dom0/root rd.lvm.lv=qubes_dom0/swap plymouth.ignore-serial-consoles rd.driver.pre=btrfs rhgb quiet"

GRUB_DISABLE_RECOVERY="true"

GRUB_THEME="/boot/grub2/themes/qubes/theme.txt"

GRUB_CMDLINE_XEN_DEFAULT="console=none dom0_mem=min:1024M dom0_mem=max:4096M ucode=scan smt=off gnttab_max_frames=2048 gnttab_max_maptrack_frames=4096"

GRUB_DISABLE_OS_PROBER="true"

GRUB_CMDLINE_LINUX="$GRUB_CMDLINE_LINUX rd.qubes.hide_all_usb i8042.nopnp i8042.reset i8042.nomux i8042.noloop"

I have to thank you again for your time, help, and patience, szz9pza. Iā€™m sure I couldnā€™t have solved the problem without your ideas.

2 Likes