summaryrefslogtreecommitdiffstats
path: root/drivers/hid
diff options
context:
space:
mode:
authorJosé Expósito <jose.exposito89@gmail.com>2021-12-12 19:20:59 +0100
committerJiri Kosina <jkosina@suse.cz>2022-01-06 13:58:28 +0100
commit0aa45fcc42d82753a257abbc7138922d8250e06f (patch)
treeac350e7758254e9e2fd84a7adbb2a0366b4d5729 /drivers/hid
parentb2dcadef207719a9b3520cb9f1c9237c320d3ccd (diff)
downloadlinux-stable-0aa45fcc42d82753a257abbc7138922d8250e06f.tar.gz
linux-stable-0aa45fcc42d82753a257abbc7138922d8250e06f.tar.bz2
linux-stable-0aa45fcc42d82753a257abbc7138922d8250e06f.zip
HID: magicmouse: set device name when it has been personalized
If the Apple Magic Trackpad 2 has been connected to a Mac, the name is automatically personalized showing its owner name. For example: "José Expósito's Trackpad". When connected through Bluetooth, the personalized name is reported, however, when connected through USB the generic name is reported. Set the device name correctly to ensure the same driver settings are loaded, whether connected via Bluetooth or USB. Signed-off-by: José Expósito <jose.exposito89@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r--drivers/hid/hid-magicmouse.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c
index 686788ebf3e1..3e483dd32873 100644
--- a/drivers/hid/hid-magicmouse.c
+++ b/drivers/hid/hid-magicmouse.c
@@ -535,10 +535,18 @@ static int magicmouse_setup_input(struct input_dev *input, struct hid_device *hd
__set_bit(REL_HWHEEL_HI_RES, input->relbit);
}
} else if (input->id.product == USB_DEVICE_ID_APPLE_MAGICTRACKPAD2) {
- /* setting the device name to ensure the same driver settings
- * get loaded, whether connected through bluetooth or USB
+ /* If the trackpad has been connected to a Mac, the name is
+ * automatically personalized, e.g., "José Expósito's Trackpad".
+ * When connected through Bluetooth, the personalized name is
+ * reported, however, when connected through USB the generic
+ * name is reported.
+ * Set the device name to ensure the same driver settings get
+ * loaded, whether connected through bluetooth or USB.
*/
- input->name = "Apple Inc. Magic Trackpad 2";
+ if (hdev->vendor == BT_VENDOR_ID_APPLE)
+ input->name = "Apple Inc. Magic Trackpad 2";
+ else /* USB_VENDOR_ID_APPLE */
+ input->name = hdev->name;
__clear_bit(EV_MSC, input->evbit);
__clear_bit(BTN_0, input->keybit);