Bug 209473 - There is no /dev/psm0 device for my synaptics touchpad when I load FreeBSD 10.3-RELEASE
Summary: There is no /dev/psm0 device for my synaptics touchpad when I load FreeBSD 10...
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: misc (show other bugs)
Version: 10.3-RELEASE
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-bugs (Nobody)
Depends on:
Reported: 2016-05-12 21:47 UTC by Oleg
Modified: 2017-04-23 18:21 UTC (History)
3 users (show)

See Also:

my.asl (755.20 KB, text/plain)
2016-05-31 14:59 UTC, Oleg
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Oleg 2016-05-12 21:47:44 UTC
I have a strange issue. I own this particular laptop: http://www.newegg.com/Product/Product.aspx?Item=N82E16834298945 and FreeBSD 10.3-STABLE, 11-CURRENT and 10.3-RELEASE don't recognize this touchpad. It's not even recognizable as a generic PS/2 mouse. No matter how many suggestions I followed (such as putting hw.psm.synaptics_support="1" in loader.conf or modifying xorg.conf), this touchpad remains completely undetectable on either X or the console by the versions of FreeBSD that I mentioned above. These versions of FreeBSD never created [file]/dev/psm0[/file] device in the /dev directory. However, FreeBSD 9.3-RELEASE did detect this touchpad as a generic PS/2 mouse! When I typed [code] dmesg | grep psm[/code] after loading 9.3-RELEASE, I got this: [code]psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0[/code] . Then I am able to use the touchpad after executing the moused command. So, please explain to me what I can do to get rid of this issue on 11-CURRENT or 10.3-STABLE. All I want is for one of these versions to recognize this touchpad as a generic PS/2 mouse. The OpenBSD kernel ver. 5.9 is able to recognize this touchpad as a Synaptics model. I can use it when I load X on OpenBSD.
Comment 1 Oleg 2016-05-21 20:06:07 UTC
I succeeded in getting this touchpad recognized as a basic PS/2 device. I dumped the DSDT tables from memory with the acpidump command. In the asl file, I edited the PS2K section replacing all the "Return" lines with the lines that say the same thing: Return ("") . I compiled the code and made loader.conf aware of the resulting aml file. Now /dev/psm0 gets created and I can finally use the touchpad on FreeBSD 10.x or FreeBSD 11.
Comment 2 Oleg 2016-05-25 01:05:44 UTC
Because at first I didn't know how to fix compiler errors in the asl file that was decompiled from the original aml file, I loaded a distro of linux and after dumping the DSDT tables again, noticed that errors were easier to fix this time. I fixed the errors, then applied the changes that were described in the previous post, and used the resulting aml file to override the memory tables on FreeBSD 11 and 10.x. However, then I decided to struggle with fixing the errors that I got after compiling the original asl file on FreeBSD. I eventually fixed them, but the changes that I described in the previous post didn't make /dev/psm0 come to life this time. So, I applied the code from this site http://www.tonymacx86.com/threads/ps2-not-working-after-installing-dsdt.53498 and this time /dev/psm0 came to life. I have no idea why the asl file that I got on Linux was different from the one that I got on FreeBSD. Both OSes used the same version of iasl to decompile the aml file.
Comment 3 Oleg 2016-05-31 14:59:42 UTC
Created attachment 170871 [details]
Comment 4 mmatalka 2016-06-23 05:39:50 UTC
I too an experiencing this (or a similar thing). When I boot with verbose on I see psm0: unable to allocate IRQ.

I a on an ASUS ZenBook UX305CA
Comment 5 Oleg 2016-06-23 15:42:27 UTC
Well, you know what to do. Edit your dumped asl file (though I am not sure if simply adding the code shown in this attachment will work for you).
Comment 6 Oleg 2016-06-23 15:45:01 UTC
Well, sorry, I am not talking about the code provided in the attachment, but this code: http://www.tonymacx86.com/threads/ps2-not-working-after-installing-dsdt.53498