# 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 atlas"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    MatchProduct    "ACPI0C50:01 04F3:30C5 Touchpad"

    Option          "Touchpad Stack Version" "2"

    Option          "Pressure Calibration Offset" "0.0"
    Option          "Pressure Calibration Slope"  "1.0"

    Option          "Palm Filter Top Edge Enable" "1"
    Option          "Tap Exclusion Border Width" "8.0"
    Option          "Palm Edge Zone Width" "12.0"

    Option          "Tap Minimum Pressure" "19.0"
    Option          "Palm Pressure" "100.0"
EndSection
