All of lore.kernel.org
 help / color / mirror / Atom feed
* Support for additional properties in touchscreen.h
@ 2017-11-11 14:34 Gregor Riepl
  2017-11-13 22:13 ` Dmitry Torokhov
  0 siblings, 1 reply; 4+ messages in thread
From: Gregor Riepl @ 2017-11-11 14:34 UTC (permalink / raw)
  To: linux-input; +Cc: Hans de Goede

Hi,

I was discussing jitter problems with a Silead touchscreen user today.
This is a general issue that should be solved on the hardware or firmware
level, but as we don't have a way to modify either for Silead controllers, I
was thinking that there might be a way to apply interpolation in the driver.

input_set_abs_params has fuzz and flat parameters, perhaps these can be used
for that purpose? Is there a better way to do interpolation?

Would it make sense to add corresponding jitter_x and jitter_y parameters to
include/linux/input/touchscreen.h ?

Regards,
Greg

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for additional properties in touchscreen.h
  2017-11-11 14:34 Support for additional properties in touchscreen.h Gregor Riepl
@ 2017-11-13 22:13 ` Dmitry Torokhov
  2017-11-14  7:55   ` Gregor Riepl
  0 siblings, 1 reply; 4+ messages in thread
From: Dmitry Torokhov @ 2017-11-13 22:13 UTC (permalink / raw)
  To: Gregor Riepl; +Cc: linux-input, Hans de Goede

Hi Gregor,

On Sat, Nov 11, 2017 at 6:34 AM, Gregor Riepl <onitake@gmail.com> wrote:
> Hi,
>
> I was discussing jitter problems with a Silead touchscreen user today.
> This is a general issue that should be solved on the hardware or firmware
> level, but as we don't have a way to modify either for Silead controllers, I
> was thinking that there might be a way to apply interpolation in the driver.
>
> input_set_abs_params has fuzz and flat parameters, perhaps these can be used
> for that purpose? Is there a better way to do interpolation?
>
> Would it make sense to add corresponding jitter_x and jitter_y parameters to
> include/linux/input/touchscreen.h ?

The fuzz (smoothing the output coordinates) is done in input core and
the touchscreen properties parsing code already handles
touchscreen-fuzz-x and touchscreen-fuzz-y parameters. The only thing
that is needed is to pass these parameters through DT or ACPI or
static properties, based on particular device.

Thanks.

-- 
Dmitry

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for additional properties in touchscreen.h
  2017-11-13 22:13 ` Dmitry Torokhov
@ 2017-11-14  7:55   ` Gregor Riepl
  2017-11-14 18:09     ` Dmitry Torokhov
  0 siblings, 1 reply; 4+ messages in thread
From: Gregor Riepl @ 2017-11-14  7:55 UTC (permalink / raw)
  To: Dmitry Torokhov; +Cc: linux-input, Hans de Goede

> The fuzz (smoothing the output coordinates) is done in input core and
> the touchscreen properties parsing code already handles
> touchscreen-fuzz-x and touchscreen-fuzz-y parameters. The only thing
> that is needed is to pass these parameters through DT or ACPI or
> static properties, based on particular device.

Thanks for the clarification, Dmitry.

So do I understand correctly that it would suffice to add these parameters to
a DMI match in drivers/platform/x86/silead_dmi.c ?

Something like:

static const struct property_entry my_imaginary_tablet_props[] = {
	PROPERTY_ENTRY_U32("touchscreen-size-x", 1920),
	PROPERTY_ENTRY_U32("touchscreen-size-y", 1080),
	PROPERTY_ENTRY_U32("touchscreen-fuzz-x", 10),
	PROPERTY_ENTRY_U32("touchscreen-fuzz-y", 10),
	PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-my-imaginary-tablet.fw"),
	PROPERTY_ENTRY_U32("silead,max-fingers", 10),
	{ }
};

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for additional properties in touchscreen.h
  2017-11-14  7:55   ` Gregor Riepl
@ 2017-11-14 18:09     ` Dmitry Torokhov
  0 siblings, 0 replies; 4+ messages in thread
From: Dmitry Torokhov @ 2017-11-14 18:09 UTC (permalink / raw)
  To: Gregor Riepl; +Cc: linux-input, Hans de Goede

On Tue, Nov 14, 2017 at 08:55:01AM +0100, Gregor Riepl wrote:
> > The fuzz (smoothing the output coordinates) is done in input core and
> > the touchscreen properties parsing code already handles
> > touchscreen-fuzz-x and touchscreen-fuzz-y parameters. The only thing
> > that is needed is to pass these parameters through DT or ACPI or
> > static properties, based on particular device.
> 
> Thanks for the clarification, Dmitry.
> 
> So do I understand correctly that it would suffice to add these parameters to
> a DMI match in drivers/platform/x86/silead_dmi.c ?
> 
> Something like:
> 
> static const struct property_entry my_imaginary_tablet_props[] = {
> 	PROPERTY_ENTRY_U32("touchscreen-size-x", 1920),
> 	PROPERTY_ENTRY_U32("touchscreen-size-y", 1080),
> 	PROPERTY_ENTRY_U32("touchscreen-fuzz-x", 10),
> 	PROPERTY_ENTRY_U32("touchscreen-fuzz-y", 10),
> 	PROPERTY_ENTRY_STRING("firmware-name", "gsl1680-my-imaginary-tablet.fw"),
> 	PROPERTY_ENTRY_U32("silead,max-fingers", 10),
> 	{ }
> };

Yes, and you'd need to add a new entry to silead_ts_dmi_table.

Thanks.

-- 
Dmitry

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-11-14 18:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-11 14:34 Support for additional properties in touchscreen.h Gregor Riepl
2017-11-13 22:13 ` Dmitry Torokhov
2017-11-14  7:55   ` Gregor Riepl
2017-11-14 18:09     ` Dmitry Torokhov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.