Re: [PATCH 5/7] drivers:input:ads7846(+tsc2046): add new common binding names, pre-calibration and flipping

From: H. Nikolaus Schaller
Date: Mon Nov 09 2015 - 12:37:04 EST



Am 09.11.2015 um 18:31 schrieb Rob Herring <robh@xxxxxxxxxx>:

> On Fri, Nov 06, 2015 at 04:14:47PM +0100, H. Nikolaus Schaller wrote:
>> commit b98abe52fa8e ("Input: add common DT binding for touchscreens")
>> introduced common DT bindings for touchscreens [1] and a helper function to
>> parse the DT.
>>
>> This has been integrated and interpretation of the inversion (flipping)
>> properties for the x and y axis has been added to accommodate any
>> orientation of the touch in relation to the LCD.
>>
>> By scaling the min/max ADC values to the screen size it is now possible to
>> pre-calibrate the touch so that is (almost) exactly matches the LCD it is
>> glued onto. This allows to well enough operate the touch before a user
>> space calibration can improve the precision.
>>
>> [1]: Documentation/devicetree/bindings/input/touchscreen/touchscreen.txt
>>
>> Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
>> ---
>> .../devicetree/bindings/input/ads7846.txt | 8 ++-
>
> The binding change looks okay, but...
>
>> @@ -1213,7 +1259,7 @@ static const struct ads7846_platform_data *ads7846_probe_dt(struct device *dev)
>> of_property_read_u16(node, "ti,vref-mv", &pdata->vref_mv);
>> pdata->keep_vref_on = of_property_read_bool(node, "ti,keep-vref-on");
>>
>> - pdata->swap_xy = of_property_read_bool(node, "ti,swap-xy");
>> + pdata->swap_xy = of_property_read_bool(node, "touchscreen-swapped-x-y");
>
> This will break with old dtb's.

We have a patch for all boards in tree (external dtbs must be modified by their maintainers).

> The driver should look for either
> property.

It is easy to recognize either one.

Noted for V2.

BR and thanks,
Nikolaus--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/