# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Configure touchpads to use Chromium Multitouch (cmt) X input driver
Section "InputClass"
    Identifier      "touchpad puppy atmel"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "Atmel"
    Option          "Touchpad Stack Version" "1"
    Driver          "cmt"
    Option          "Pressure Calibration Offset" "-15.369282490859"
    Option          "Pressure Calibration Slope" "1.3219851012421"
    Option          "Input Queue Delay" "0.017"
    # TODO(clchiou): Calibrate bias on X-axis
    Option          "Touchpad Device Output Bias on X-Axis" "26.68917773528923"
    Option          "Touchpad Device Output Bias on Y-Axis" "26.68917773528923"
    # We see lots of pressure changes under normal use, so raise thresholds
    Option          "Max Allowed Pressure Change Per Sec" "100000.0"
    Option          "Max Hysteresis Pressure Per Sec" "100000.0"
    # People complain that light tap clicks don't register
    Option          "Tap Minimum Pressure" "21.0"
    Option          "Box Width" "0.3"
    Option          "Two Finger Vertical Close Distance Thresh" "35.0"
EndSection
