On Tue, Dec 24, 2013 at 11:24:03PM +0100, Hans de Goede wrote:
> Note the sun4i-ts controller is capable of detecting a second touch, but when
> a second touch is present then the accuracy becomes so bad the reported touch
> location is not useable.
>
> The original android driver contains some complicated heuristics using the
> aprox. distance between the 2 touches to see if the user is making a pinch
> open / close movement, and then reports emulated multi-touch events around
> the last touch coordinate (as the dual-touch coordinates are worthless).
>
> These kinds of heuristics are just asking for trouble (and don't belong
> in the kernel). So this driver offers straight forward, reliable single
> touch functionality only.
>
> Signed-off-by: Hans de Goede <[email protected]>
> ---
> drivers/input/touchscreen/Kconfig | 10 ++
> drivers/input/touchscreen/Makefile | 1 +
> drivers/input/touchscreen/sun4i-ts.c | 272
> +++++++++++++++++++++++++++++++++++
[ ... ]
> +
> +static int sun4i_ts_probe(struct platform_device *pdev)
> +{
> + struct sun4i_ts_data *ts;
> + int ret = -ENOMEM;
> +
> + ts = kzalloc(sizeof(struct sun4i_ts_data), GFP_KERNEL);
How about using devm_kzalloc() here ? That would simplify the cleanup
path significantly as you could just return from most error cases.
Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html