Running FreeBSD on the Lenovo Thinkpad T470s (success)

Michael Gmelin freebsd at grem.de
Tue Jan 9 10:24:11 UTC 2018



> On 9. Jan 2018, at 10:47, René Ladan <r.c.ladan at gmail.com> wrote:
> 
> 2018-01-08 22:47 GMT+01:00 Michael Gmelin <freebsd at grem.de>:
>> 
>> 
>> On Mon, 8 Jan 2018 22:38:55 +0100
>> René Ladan <r.c.ladan at gmail.com> wrote:
>> 
>> > On 08-01-2018 22:08, Greg V wrote:
>> > >
>> > > On 01/09/2018 00:02, René Ladan wrote:
>> > >> On 08-01-2018 21:28, Greg V via freebsd-x11 wrote:
>> > >>> On 01/08/2018 23:23, Michael Gmelin wrote:
>> > >>>>> On 8. Jan 2018, at 21:15, René Ladan <rene at freebsd.org> wrote:
>> > >>>>>
>> > >>>>>> On 30-12-2017 15:58, Michael Gmelin wrote:
>> > >>>>>> Hi,
>> > >>>>>>
>> > >>>>>> I found some time to play with FreeBSD on a Lenovo Thinkpad
>> > >>>>>> T470s and I'm quite happy with the results, as all important
>> > >>>>>> features work, especially essentials like graphics, touchpad
>> > >>>>>> and suspend to RAM.
>> > >>>>>>
>> > >>>>>> The configuration is pretty straightforward, but a few things
>> > >>>>>> required
>> > >>>>>> research (like evdev, udev and libinput), that's why I
>> > >>>>>> documented my setup here, hoping that it might help others:
>> > >>>>>>
>> > >>>>>> https://blog.grem.de/pages/t470s.html
>> > >>>>>>
>> > >>>>> I followed your instructions to try to get the touchpad working
>> > >>>>> on my laptop (Acer E5-773G-78RN) but that didn't work.
>> > >>>>>
>> > >>>>> libinput-debug-events sees the touchpad (I think, event0) but it
>> > >>>>> doesn't
>> > >>>>> respond to it:
>> > >>>> Did you install a patched version of xorg (with UDEV enabled)
>> > >>>> and a custom kernel (device and option added)? What is the
>> > >>>> output of xinput? What is the output of evemu-record from
>> > >>>> devel/evemu? Feel free to email me all config- and log files
>> > >>>> off-list.
>> > >> Hmm, there is no option UDEV in 'make config' for xorg-server,
>> > >> only DEVD (default) and HAL?
>> > > You need my patch for that:
>> > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222609
>> > >>> If libinput doesn't list it, it's not time to mess with xorg
>> > >>> yet :)
>> > >>>
>> > >>> I guess EVDEV_SUPPORT is enabled since there's a "PixArt USB
>> > >>> Optical Mouse" (ums) device.
>> > >>>
>> > >> That PixArt thing is physical USB mouse, which always works ;)
>> > > Yeah, uh, if you didn't have EVDEV_SUPPORT, it would not show up as
>> > > an evdev device.
>> > >>> Is the psm module loaded? Is there anything in dmesg about psm?
>> > >> Not currently I think:
>> > >> rene at e17:~ % grep -i psm /root/dmesg-v-20180108
>> > >> psm0: unable to allocate IRQ
>> > >> rene at e17:~ % kldstat -v|grep psm
>> > >>         439 acpi/psmcpnp
>> > >>         438 isa/psmcpnp
>> > >>         437 atkbdc/psm
>> > > atkbdc/psm is it, it's built into the kernel, that's fine.
>> > >
>> > > The "unable to allocate IRQ" looks like a problem…
>> > >
>> > > https://lists.freebsd.org/pipermail/freebsd-stable/2015-February/081757.html
>> > >
>> > Hmm, indeed.
>> >
>> > After applying the xorg-server patches correctly the touchpad still
>> > does not work (unplugging the mouse makes no difference).
>> >
>> > From /var/log/Xorg.0.log :
>> > [ 10976.795] (II) config/udev: Adding input device System mouse
>> > (/dev/input/event0)
>> > [ 10976.795] (**) System mouse: Applying InputClass "evdev pointer
>> > catchall" [ 10976.795] (**) System mouse: Applying InputClass
>> > "libinput pointer catchall"
>> > [ 10976.795] (II) LoadModule: "libinput"
>> > [ 10976.795] (II)
>> > Loading /usr/local/lib/xorg/modules/input/libinput_drv.so
>> > [ 10977.222] (II) Module libinput: vendor="X.Org
>> > Foundation" [ 10977.222]    compiled for 1.18.4, module version =
>> > 0.25.0 [ 10977.222]    Module class: X.Org XInput Driver
>> > [ 10977.222]    ABI class: X.Org XInput driver, version 22.1
>> > [ 10977.222] (II) Using input driver 'libinput' for 'System
>> > mouse' [ 10977.222] (**) System mouse: always reports core events
>> > [ 10977.222] (**) Option "Device" "/dev/input/event0" [ 10977.223]
>> > (**) Option "_source" "server/udev" [ 10977.223] (II) input device
>> > 'System mouse', /dev/input/event0 is tagged by udev as: Mouse
>> > [ 10977.223] (II) input device 'System mouse', /dev/input/event0 is a
>> > pointer caps
>> > [ 10977.223] (**) Option "config_info" "udev:/dev/input/event0"
>> > [ 10977.223] (II) XINPUT: Adding extended input device "System mouse"
>> > (type: MOUSE, id 6)
>> > [ 10977.223] (**) Option "AccelerationScheme" "none"
>> > [ 10977.223] (**) System mouse: (accel) selected scheme none/0
>> > [ 10977.223] (**) System mouse: (accel) acceleration factor: 2.000
>> > [ 10977.223] (**) System mouse: (accel) acceleration threshold: 4
>> > [ 10977.224] (II) input device 'System mouse', /dev/input/event0 is
>> > tagged by udev as: Mouse
>> > [ 10977.224] (II) input device 'System mouse', /dev/input/event0 is a
>> > pointer caps
>> >
>> > So if I understand correctly X sees the device but cannot talk to it?
>> >
>> 
>> Did you do all the other checks outlined in my previous email and also
>> check the output of bin/evemu-record?

Have you tried evemu-record (doesn't require X and makes testing if the fundamentals are working easier)? Besides that, Greg's probably right.

Please keep us posted ;)

-m

>> Is this actually a synaptics
>> touchpad? Do you have any xorg configuration in place (besides
>> configuring the input class you shouldn't need any).
>> 
> I only have the two xorg configuration files from your blog. Not super-sure
> if it is a synaptics touchpad though, nothing in verbose dmesg about touchpads.
> 
>> -m
>> 
>> p.s. Just to repeat:
>> # sysctl kern.features.evdev_support
>> kern.features.evdev_support: 1
> yes 
>> # sysctl kern.evdev.rcpt_mask
>> kern.evdev.rcpt_mask: 12
> yes 
>> # pkg info -R xorg-server | grep UDEV
>>     UDEV = "on";
> yes 
>> #sysctl hw.psm.synaptics_support
>> sysctl hw.psm.synaptics_support: 1
> yes 
>> 
>> --
>> Michael Gmelin
> 
> 
> 
> -- 
> https://rene-ladan.nl/


More information about the freebsd-x11 mailing list