Opened 16 months ago

Last modified 16 months ago

#18214 new bug

PS/2 Keyboard/Mouse non-functional on Dell Precision 5520

Reported by: smontanaro Owned by: PreetpalKaur
Priority: normal Milestone: Unscheduled
Component: Drivers/Input/PS2 Version: R1/beta4
Keywords: Cc:
Blocked By: Blocking:
Platform: x86-64

Description

I just started Haiku R1/beta4 from a USB thumb drive on a Dell Precision 5520. The keyboard and mouse don't work, though a external USB keyboard and mouse do (so I have a workaround).

Happy to provide more details, but I know zero about Haiku at this point, so don't know what's available or really where to look.

Attachments (1)

haiku-syslog (383.3 KB ) - added by smontanaro 16 months ago.
Syslog from Haiku

Download all attachments as: .zip

Change History (14)

comment:1 by humdinger, 16 months ago

Have a look at https://www.haiku-os.org/docs/welcome/en/bugreports.html for hints on what info to include.

comment:2 by korli, 16 months ago

Summary: Keyboard/Mouse non-functional on Dell Precision 5520PS/2 Keyboard/Mouse non-functional on Dell Precision 5520

comment:3 by pulkomandy, 16 months ago

Component: Drivers/InputDrivers/Input/PS2

Specifically in this case, a syslog would be very useful to start investigations (the link in the previous comment should give you info on how to get that)

by smontanaro, 16 months ago

Attachment: haiku-syslog added

Syslog from Haiku

comment:4 by smontanaro, 16 months ago

Thanks for the feedback and the link. Alas, it seems I have bigger fish to fry in the form of no network either. ifconfig -a just shows a loopback device and the Network preferences popup only shows Services, no network device. Syslog (typing, as I can't really export) shows lots of lines like this:

KERN: register_domain(1, internet)
KERN: unregister_domain(0xfffffffa3a23a80, 1, internet)

Ooh, ooh, ooh... After a reboot I do have builtin keyboard and trackpad! Here I was trying not to be insane (by trying the same thing multiple times hoping for a different result), and it turns out a bit of insanity would have helped!

I attached the syslog file. The first and second boot logs should help you figure out what might have changed between the two boots. I spent a fair bit of time staring at it to see if I could figure out the networking issue. It's a Qualcomm Atheros, which seems to support PCIe (as does Haiku, right?).

comment:5 by waddlesplash, 16 months ago

KERN: PCI:   device 003e: QCA6174 802.11ac Wireless Network Adapter

Unfortunately this is an "ath10k+" device, which neither FreeBSD nor OpenBSD have a driver for, so we don't either, so you are out of luck.

comment:6 by pulkomandy, 16 months ago

Not a lot of info in the syslog indeed,

on the failed attempt:

2373	KERN: ps2_hid: init_hardware
2374	KERN: ps2_hid: init_driver
2375	KERN: ps2_hid: publish_devices
2376	KERN: ps2_hid: uninit_driver
2377	KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/input/ps2_hid

...

2852	KERN: ps2_dev: reset failed: Operation timed out
2853	KERN: ps2: devfs_publish_device input/mouse/ps2/0, status = 0xffffffff
2854	KERN: ps2: devfs_publish_device input/keyboard/at/0, status = 0x00000000
2855	KERN: ps2: keyboard reset failed, status 0x80000009, data 0x00
2856	KERN: ps2: keyboard probing failed
2857	KERN: KeyboardDevice: error when opening /dev/input/keyboard/at/0: No error
2858	KERN: ps2: devfs_unpublish_device input/keyboard/at/0, status = 0x00000000

on the succesful one:

5274	KERN: ps2_hid: init_hardware
5275	KERN: ps2_hid: init_driver
5276	KERN: ps2_hid: publish_devices
5277	KERN: ps2_hid: uninit_driver
5278	KERN: loaded driver /boot/system/add-ons/kernel/drivers/dev/input/ps2_hid
5279	KERN: usb_hid: keyboard device unhandled control 0x00002710
5280	USER 'KS': Notify of added/removed/started/stopped device
5281	Last message repeated 2 times
5282	KERN: usb_hid: keyboard device unhandled control 0x00002710
5283	KERN: ps2: devfs_publish_device input/touchpad/ps2/synaptics_0, status = 0x00000000
5284	KERN: ps2: devfs_publish_device input/keyboard/at/0, status = 0x00000000
5285	KERN: ps2: keyboard found

This may need a build of the PS2 driver with more tracing enabled. Are you willing to build Haiku yourself to investigate this? If not, I should look into making this tracing easy to enable with a configuration file instead of having to recompile the driver.

comment:7 by smontanaro, 16 months ago

I'm happy to try building Haiku. My days of rebuilding the Linux kernel on a daily basis were many years ago, but I'm still comfortable with building other stuff (like Python — used to be a core developer). Let me see how I do with this:

https://www.haiku-os.org/guides/building

I will report back on my success. If I get that far, you can let me know how to increase tracing of the PS/2 driver.

comment:8 by waddlesplash, 16 months ago

You likely need to only rebuild haiku.hpkg, i.e.

$ jam -q -j<N> @nightly-raw haiku.hpkg
$ pkgman install path/to/built/haiku.hpkg

after you have configured, etc. of course.

Note that if you are on x86_64, you will need the cross-tools even if building Haiku on Haiku, as the system toolchain cannot produce x86-32 binaries needed for the bootloader. (You can also comment out the lines which add the bootloaders to haiku.hpkg, as they aren't actually needed unless you are trying to install Haiku, and then skip building the crosstools and use host tools instead, which is what I usually do.)

comment:9 by waddlesplash, 16 months ago

(Feel free to drop by our IRC/Matrix channels and ask around there if you run into trouble, of course. Plenty of knowledgeable people, myself included, are often around to help out with such things.)

comment:10 by pulkomandy, 16 months ago

I'd say it's better to start with the official/documented procedure before starting to take shortcuts like these?

comment:11 by smontanaro, 16 months ago

I got the tools installed on my laptop (Xubuntu 22.04) and built a nightly image with no problem. When dd'd to my USB stick it doesn't turn up as a bootable device when I reboot though. I've jumped over to the Matrix channel to get some help.

comment:12 by smontanaro, 16 months ago

Matrix came through. I build the wrong image (@nightly-raw instead of @nightly-anyboot).

comment:13 by pulkomandy, 16 months ago

I also forgot to mention: to enable the PS2 tracing you need to uncomment the TRACE_PS2 define in https://cgit.haiku-os.org/haiku/tree/src/add-ons/kernel/bus_managers/ps2/ps2_common.h

After doing this, if the PS2 ports are working you will get a lot of tracing in the syslog (at every keystroke and mouse move). This also considerably slows down the input handling.

Last edited 16 months ago by pulkomandy (previous) (diff)
Note: See TracTickets for help on using tickets.