20-mouse.conf: add CPIs for Logitech M650 and M750

Logitech is modifying the HID descriptors of these mice to include their
CPIs over Bluetooth, but since we don't have the infrastructure to read
that yet we need overrides for them for now.

The BOLT receiver cannot reflect anything specific about the device(s)
connected to it, not even a product ID, except over a vendor-specific
protocol, so we have to set one CPI for all mice connected that way.
Thankfully they all appear to have the same (default) CPI so far.

BUG=b:198637081
TEST=copy 20-mouse.conf to a test device and check it doesn't cause
     any obvious errors (I don't have the mice to test)

Change-Id: I2f83274f22d996b37d89191bcbcc6f203a97534b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/xorg-conf/+/3196570
Tested-by: Harry Cutts <hcutts@chromium.org>
Auto-Submit: Harry Cutts <hcutts@chromium.org>
Reviewed-by: Sean O'Brien <seobrien@chromium.org>
Commit-Queue: Harry Cutts <hcutts@chromium.org>
diff --git a/20-mouse.conf b/20-mouse.conf
index 2c4b976..6f2d86f 100644
--- a/20-mouse.conf
+++ b/20-mouse.conf
@@ -141,6 +141,48 @@
 EndSection
 
 Section "InputClass"
+    Identifier      "Logitech M650"
+    MatchUSBID      "046d:b02a"
+    MatchDevicePath "/dev/input/event*"
+    Option          "Mouse CPI" "1000"
+EndSection
+
+Section "InputClass"
+    Identifier      "Logitech M550"
+    MatchUSBID      "046d:b02b"
+    MatchDevicePath "/dev/input/event*"
+    Option          "Mouse CPI" "1000"
+EndSection
+
+Section "InputClass"
+    Identifier      "Logitech M750"
+    MatchUSBID      "046d:b02c"
+    MatchDevicePath "/dev/input/event*"
+    # The M750 has a switch that toggles between 1000 and 1600 CPI. 1000 is the
+    # default, so we use it here.
+    Option          "Mouse CPI" "1000"
+EndSection
+
+Section "InputClass"
+    Identifier      "Logitech M650 For Business"
+    MatchUSBID      "046d:b032"
+    MatchDevicePath "/dev/input/event*"
+    Option          "Mouse CPI" "1000"
+EndSection
+
+Section "InputClass"
+    Identifier      "Logitech BOLT Receiver"
+    MatchUSBID      "046d:b36f"
+    MatchDevicePath "/dev/input/event*"
+    # Due to technical limitations of the BOLT receiver, it doesn't expose the
+    # product ID(s) of mice connected to it except through a vendor-specific
+    # protocol, so we can only set one CPI value for all mice connected this
+    # way. Thankfully they all seem to be 1000 CPI at the time of writing, at
+    # least by default.
+    Option          "Mouse CPI" "1000"
+EndSection
+
+Section "InputClass"
     Identifier      "Logitech MouseMan Traveler/Mobile"
     MatchUSBID      "046d:c00f"
     MatchDevicePath "/dev/input/event*"