[meta-freescale] Linux headers version problem/bug?

Alexey Mednyy swexru at gmail.com
Mon Oct 6 09:11:08 PDT 2014


Hello everybody!

Everything started with problematic touchscreen:

We've got mx53 based board. And we're using mc34709 touchscreen on it.
Here is output of xinput_calibrator:
> root at imx53qsb:~# xinput_calibrator -v
> DEBUG: XInputExtension version is 2.3
> DEBUG: Skipping virtual master devices and devices without axis valuators.
> DEBUG: Skipping device 'Virtual core XTEST pointer' id=4, does not
> report Absolute events.
> DEBUG: Selected device: mxc_ts
> DEBUG: Not usbtouchscreen calibrator: Not a usbtouchscreen device
> DEBUG: Read axes swap value of 0.
> DEBUG: Read InvertX=0, InvertY=0.
> Calibrating EVDEV driver for "mxc_ts" id=9
>         current calibration values (from XInput): min_x=0, max_x=0 and
> min_y=0, max_y=0
> DEBUG: Adding click 0 (X=0, Y=0)
> DEBUG: Not adding click 1 (X=0, Y=0): within 7 pixels of previous click
> DEBUG: Not adding click 1 (X=0, Y=0): within 7 pixels of previous click
> DEBUG: Not adding click 1 (X=0, Y=0): within 7 pixels of previous click

And Xorg.log:
> root at imx53qsb:~# tail /var/log/Xorg.0.log
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis
> Divide by Zero in xf86ScaleAxis

But evtest /dev/input/touchscreen0 shows right values:
> Input driver version is 1.0.0
> Input device ID: bus 0x0 vendor 0x0 product 0x0 version 0x0
> Input device name: "mxc_ts"
> Supported events:
>   Event type 0 (Sync)
>   Event type 1 (Key)
>     Event code 330 (Touch)
>   Event type 3 (Absolute)
>     Event code 0 (X)
>       Value    239
>       Min        0
>       Max        0
>     Event code 1 (Y)
>       Value    215
>       Min        0
>       Max        0
>     Event code 24 (Pressure)
>       Value      0
>       Min        0
>       Max        0
> Testing ... (interrupt to exit)
> Event: time 1412607844.642568, type 3 (Absolute), code 0 (X), value 239
> Event: time 1412607844.642581, type 3 (Absolute), code 1 (Y), value 215
X,Y axis values increases\decreases right when I move pointer.

So problem in evdev xinput driver.

However I remember that I used tslib for touchscreen before. And I've
added tslib and xf86-input-tslib to receipt.
And I've seen this:
> root at imx53qsb:~# ts_calibrate /dev/input/event3
> xres = 640, yres = 480
> tslib: Selected device uses a different version of the event protocol
> than tslib was compiled for
We are using custom kernel based on imx_2.6.35_maintain branch, but
yocto produces kernel with same headers that our kernel.
After baking image I just replace uImage of default mx53qsb with mine
and all works fine!
So I'm replacing one 2.6.35 image with another 2.6.35 image. But yocto
compiling software with what? mainline headers or what?
I think that is wrong behavior somewhere in yocto. Why yocto uses wrong
headers?



More information about the meta-freescale mailing list