# This file is part of systemd.
#
# The lookup keys are composed in:
#   60-evdev.rules
#
# Note: The format of the "evdev:" prefix match key is a
# contract between the rules file and the hardware data, it might
# change in later revisions to support more or better matches, it
# is not necessarily expected to be a stable ABI.
#
# Match string formats:
# evdev:<modalias>
# evdev:name:<device name>:dmi:<dmi string>
#
# To add local entries, create a new file
#   /etc/udev/hwdb.d/61-evdev-local.hwdb
# and add your rules there. To load the new rules execute (as root):
#   udevadm hwdb --update
#   udevadm trigger /dev/input/eventXX
# where /dev/input/eventXX is the device in question. If in
# doubt, simply use /dev/input/event* to reload all input rules.
#
# If your changes are generally applicable, open a bug report on
#   http://bugs.freedesktop.org/enter_bug.cgi?product=systemd
# and include your new rules, a description of the device, and the
# output of
#   udevadm info /dev/input/eventXX
# (or /dev/input/event*).
#
# Allowed properties are:
#    EVDEV_ABS_<axis>=<min>:<max>:<res>:<fuzz>:<flat>
#
# where <axis> is the hexadecimal EV_ABS code as listed in linux/input.h
# and min, max, res, fuzz, flat are the decimal values to the respective
# fields of the struct input_absinfo as listed in linux/input.h.
# If a field is missing the field will be left as-is. Not all fields need to
# be present. e.g. ::45 sets the resolution to 45 units/mm.

#
# Sort by brand, model

#########################################
# Apple
#########################################

# Macbook5,1 (unibody), aka wellspring3
evdev:input:b0003v05ACp0236*
evdev:input:b0003v05ACp0237*
evdev:input:b0003v05ACp0238*
 EVDEV_ABS_00=::92
 EVDEV_ABS_01=::90
 EVDEV_ABS_35=::92
 EVDEV_ABS_36=::90

# Macbook8 (unibody, March 2011)
evdev:input:b0003v05ACp0245*
evdev:input:b0003v05ACp0246*
evdev:input:b0003v05ACp0247*
 EVDEV_ABS_00=::92
 EVDEV_ABS_01=::91
 EVDEV_ABS_35=::92
 EVDEV_ABS_36=::91

# Macbook8,2 (unibody)
evdev:input:b0003v05ACp0252*
evdev:input:b0003v05ACp0253*
evdev:input:b0003v05ACp0254*
 EVDEV_ABS_00=::94
 EVDEV_ABS_01=::92
 EVDEV_ABS_35=::94
 EVDEV_ABS_36=::92

# MacbookPro10,1 (unibody, June 2012)
evdev:input:b0003v05ACp0259*
evdev:input:b0003v05ACp025a*
evdev:input:b0003v05ACp025b*
# MacbookPro10,2 (unibody, October 2012)
evdev:input:b0003v05ACp0259*
evdev:input:b0003v05ACp025a*
evdev:input:b0003v05ACp025b*
 EVDEV_ABS_00=::94
 EVDEV_ABS_01=::92
 EVDEV_ABS_35=::94
 EVDEV_ABS_36=::92

#########################################
# Google
#########################################

# Chromebook Pixel (2015) - Samus
evdev:name:Atmel maXTouch Touch*:dmi:bvn*:bvr*:bd*:svnGOOGLE:pnSamus*
 EVDEV_ABS_00=::10
 EVDEV_ABS_01=::10
 EVDEV_ABS_35=::10
 EVDEV_ABS_36=::10

#########################################
# Lenovo
#########################################

# Lenovo X230 series
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO*:pn*ThinkPad*X230*
 EVDEV_ABS_01=::100
 EVDEV_ABS_36=::100