Re: [PATCH] Input: of_touchscreen / generic bindings - Add support for touchscreen-min-x|y

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 31, 2018 at 3:42 PM, Hans de Goede <hdegoede@xxxxxxxxxx> wrote:
> Hi,
>
> On 31-05-18 19:25, Rob Herring wrote:
>>
>> On Tue, May 29, 2018 at 01:52:38PM +0200, Hans de Goede wrote:
>>>
>>> Some touchscreens, depending on the firmware and/or the digitizer report
>>> coordinates which never reach 0 along one or both of their axis.
>>>
>>> This has been seen for example on the Silead touchscreens on a Onda V891w
>>> and a Point of View mobii TAB-P800w(v2.0).
>>>
>>> This commit adds support for touchscreen-min-x and touchscreen-min-y
>>> device-properties which can be set to communicate the actual start
>>> coordinates (rather then 0,0) to userspace.
>>>
>>> When set this fixes e.g. not being able to click things in the GNOME3
>>> top-bar on the 2 example tablets.
>>>
>>> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
>>> ---
>>>   .../input/touchscreen/touchscreen.txt         |  6 ++--
>>
>>
>> Please split bindings to separate patch.
>
>
> Will do for v2.
>
>>>   drivers/input/touchscreen/of_touchscreen.c    | 36 ++++++++++++++-----
>>>   2 files changed, 32 insertions(+), 10 deletions(-)
>>>
>>> diff --git
>>> a/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
>>> b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
>>> index 537643e86f61..8aff9551259f 100644
>>> --- a/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
>>> +++ b/Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
>>> @@ -1,10 +1,12 @@
>>>   General Touchscreen Properties:
>>>     Optional properties for Touchscreens:
>>> + - touchscreen-min-x           : minimum x coordinate reported (0 if not
>>> set)
>>> + - touchscreen-min-y           : minimum y coordinate reported (0 if not
>>> set)
>>
>>
>> Maybe a min-max range would be better if size (in pixels) is also
>> needed?
>
>
> Size in pixels is never needed. The touchscreen-size-x /
> touchscreen-size-y have always been the max x/y coordinate reported + 1
> and may or may not have anything to do with pixels. I've noticed on
> some ARM tablets that the firmware in the touchscreen controller was
> programmed to send coordinates in the same range as the display
> resolution, but then the manufacturer would turn around, put in
> a higher res display and keep the same touchscreen range (or the
> otherway around). So it seems that there has been a 1:1 mapping on
> some devices, but that has not been true for a long time now.
>
>>>    - touchscreen-size-x         : horizontal resolution of touchscreen
>>> -                                 (in pixels)
>>> +                                 (maximum x coordinate reported + 1)
>>
>>
>> This is unrelated or at least not explained in the commit msg. I agree
>> this probably makes sense as units are often not pixels unless the hw/fw
>> is doing some scaling itself.
>
>
> Right I added this fix to make clear that we are indeed specifying a
> min-max range, with the oddity that instead of max we specify max + 1
> for historical reasons.
>
> Do you want me to split this out into a separate patch?

No, just some explanation in this one is fine.

Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux