[PATCH synaptics] conf: ship a quirk for Cypress touchpads

Hans de Goede hdegoede at redhat.com
Fri Mar 21 02:31:37 PDT 2014


Hi,

On 03/20/2014 11:18 PM, Peter Hutterer wrote:
> Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
> ---
>  conf/11-x11-synaptics.fdi |  9 +++++++++
>  conf/50-synaptics.conf    | 12 ++++++++++++
>  2 files changed, 21 insertions(+)
> 
> diff --git a/conf/11-x11-synaptics.fdi b/conf/11-x11-synaptics.fdi
> index a898875..44dfce3 100644
> --- a/conf/11-x11-synaptics.fdi
> +++ b/conf/11-x11-synaptics.fdi
> @@ -34,6 +34,15 @@
>          <match key="info.product" contains="Apple|bcm5974">
>              <merge key="input.x11_options.SoftButtonAreas" type="string">0 0 0 0 0 0 0 0</merge>
>          </match>
> +
> +        <!--The Cypress touchpads provide BTN_RIGHT in firmware, together with
> +            clickfinger, and two-finger scrolling. Disable Clickpads, otherwise we
> +            get flaky button behaviour.
> +            https://bugs.freedesktop.org/show_bug.cgi?id=70819
> +            https://bugs.freedesktop.org/show_bug.cgi?id=76341 -->

I'm not so sure that using a xorg.conf snippet for this is the best way to go about this, I would
prefer to see a fix to the kernel to not report the clickpad flag for non clickpads. Esp. as some
newer or future Cypress touchpads may very well get rid of the firmware mode and do everything in
the drivers as other vendors do.

I really think that "CyPS/2 Cypress Trackpad" is a way to generic match string and is
going to bite us in the future. At a minimum we should use the still to be merged DMI matching
here to limit this to certain laptop models, but IHMO it would be much better to simply fix
this in the kernel. For starters we could add a dmi quirk in the kernel for the XPS 13, until we
figure out a better way to decide which Cypress Trackpads use this firmware emulation and which
models don't.

And maybe the one in the Dell XPS 13 even has a command we can send to it to turn of the
emulation too, which would allow us to really fix 70819 too.

Regards,

Hans



> +        <match key="info.product" contains="CyPS/2 Cypress Trackpad">
> +            <merge key="input.x11_options.ClickPad" type="string">off</merge>
> +        </match>
>      </match>
>  
>      <match
> diff --git a/conf/50-synaptics.conf b/conf/50-synaptics.conf
> index d808e6f..4072fce 100644
> --- a/conf/50-synaptics.conf
> +++ b/conf/50-synaptics.conf
> @@ -46,6 +46,18 @@ Section "InputClass"
>          Option "SoftButtonAreas" "0 0 0 0 0 0 0 0"
>  EndSection
>  
> +# The Cypress touchpads provide BTN_RIGHT in firmware, together with
> +# clickfinger, and two-finger scrolling. Disable Clickpads, otherwise we
> +# get flaky button behaviour.
> +# https://bugs.freedesktop.org/show_bug.cgi?id=70819
> +# https://bugs.freedesktop.org/show_bug.cgi?id=76341
> +Section "InputClass"
> +        Identifier "Disable clickpad for CyPS/2 Cypress Trackpad"
> +        MatchProduct "CyPS/2 Cypress Trackpad"
> +        MatchDriver "synaptics"
> +        Option "ClickPad" "off"
> +EndSection
> +
>  # The Lenovo *40 series has no physical button for the TrackPoint and needs
>  # the top softbutton area enabled by default.
>  # Affected devices and their PNPIDs
> 


More information about the xorg-devel mailing list