Re: eGalax USB touchscreen issues

From: Vladimir Kondratyev <wulf_at_FreeBSD.org>
Date: Sat, 07 Aug 2021 10:56:16 UTC
On 07.08.2021 07:25, Mark Kane wrote:

> 'cont_count_max' in 'struct hmt_softc'; did you mean 'cont_count_loc'?
>         sc->cont_count_max = cont_count_max;
>             ^~~~~~~~~~~~~~
>             cont_count_loc
> /usr/src/sys/dev/hid/hmt.c:190:22: note: 'cont_count_loc' declared here
>         struct hid_location     cont_count_loc;
>                                 ^
> /usr/src/sys/dev/hid/hmt.c:874:21: error: assigning to 'struct
> hid_location' from incompatible type 'int32_t' (aka 'int')
>         sc->cont_count_max = cont_count_max;
> 
> -------------------------
> 
> I then removed this line: "sc->cont_count_max = cont_count_max;" which
> got a successful build and hmt0/hconf0 attached. X now adds it as an
> input device:

Some my local changes leaked into diff context.

> [   155.758] (II) config/udev: Adding input device eGalax Inc. USB
> TouchController TouchScreen (/dev/input/event4)
> [   155.758] (**) eGalax Inc. USB TouchController TouchScreen: Applying
> InputClass "evdev pointer catchall"
> [   155.758] (**) eGalax Inc. USB TouchController TouchScreen: Applying
> InputClass "libinput pointer catchall"
> [   155.758] (II) Using input driver 'libinput' for 'eGalax Inc. USB
> TouchController TouchScreen'
> [   155.759] (**) eGalax Inc. USB TouchController TouchScreen: always
> reports core events
> [   155.759] (**) Option "Device" "/dev/input/event4"
> [   155.759] (**) Option "_source" "server/udev"
> [   155.762] (II) event4  - eGalax Inc. USB TouchController TouchScreen:
> is tagged by udev as: Mouse
> [   155.763] (II) event4  - eGalax Inc. USB TouchController TouchScreen:
> device is a pointer
> [   155.764] (II) event4  - eGalax Inc. USB TouchController TouchScreen:
> device removed
> [   155.774] (**) Option "config_info" "udev:/dev/input/event4"
> [   155.774] (II) XINPUT: Adding extended input device "eGalax Inc. USB
> TouchController TouchScreen" (type: MOUSE, id 10)
> [   155.774] (**) Option "AccelerationScheme" "none"
> [   155.775] (**) eGalax Inc. USB TouchController TouchScreen: (accel)
> selected scheme none/0
> [   155.775] (**) eGalax Inc. USB TouchController TouchScreen: (accel)
> acceleration factor: 2.000
> [   155.775] (**) eGalax Inc. USB TouchController TouchScreen: (accel)
> acceleration threshold: 4
> [   155.778] (II) event4  - eGalax Inc. USB TouchController TouchScreen:
> is tagged by udev as: Mouse
> [   155.779] (II) event4  - eGalax Inc. USB TouchController TouchScreen:
> device is a pointer
> 
> Now when touching the touchscreen we get an immediate kernel panic. Not
> sure if this is my mistake in merging the patch or something else.
> 

Try attached patch (on top of previous one)

-- 
WBR
Vladimir Kondratyev