diff options
author | Hans de Goede <hdegoede@redhat.com> | 2019-04-20 14:22:07 +0300 |
---|---|---|
committer | Benjamin Tissoires <benjamin.tissoires@redhat.com> | 2019-04-23 19:02:44 +0300 |
commit | 2ddf07f388af6c8f0db3ec21e17ca0f06b9ec0cc (patch) | |
tree | c0fe1e187adc6112959bea4608545956b0cdd3a9 /drivers/hid | |
parent | 22bf6bdef4a1d551fdaebbe8247e57569ea07b6a (diff) | |
download | linux-2ddf07f388af6c8f0db3ec21e17ca0f06b9ec0cc.tar.xz |
HID: logitech-hidpp: do not make failure to get the name fatal
With devices attached to a non-unifying 2.4GHz receiver we sometimes fail
to get the name. This is not a fatal error, we can just continue with the
original name.
So instead of bailing out, continue with battery-initialization when this
happens. This fixes the battery not getting registered when we fail to
get the name.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Diffstat (limited to 'drivers/hid')
-rw-r--r-- | drivers/hid/hid-logitech-hidpp.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c index e7f082374943..2a0866e6face 100644 --- a/drivers/hid/hid-logitech-hidpp.c +++ b/drivers/hid/hid-logitech-hidpp.c @@ -3160,18 +3160,15 @@ static void hidpp_connect_event(struct hidpp_device *hidpp) if (hidpp->name == hdev->name && hidpp->protocol_major >= 2) { name = hidpp_get_device_name(hidpp); - if (!name) { - hid_err(hdev, - "unable to retrieve the name of the device"); - return; - } - - devm_name = devm_kasprintf(&hdev->dev, GFP_KERNEL, "%s", name); - kfree(name); - if (!devm_name) - return; + if (name) { + devm_name = devm_kasprintf(&hdev->dev, GFP_KERNEL, + "%s", name); + kfree(name); + if (!devm_name) + return; - hidpp->name = devm_name; + hidpp->name = devm_name; + } } hidpp_initialize_battery(hidpp); |