HID: logitech-hidpp: forward device info in power_supply
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>
Mon, 27 Mar 2017 14:59:30 +0000 (16:59 +0200)
committerJiri Kosina <jkosina@suse.cz>
Thu, 6 Apr 2017 12:36:38 +0000 (14:36 +0200)
Better forwarding the device name, manufacturer and serial to upower.
Note that serial is still empty, it will be filled in a later patch
in this series.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Tested-by: Bastien Nocera <hadess@hadess.net>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-logitech-hidpp.c

index 3e2f716b446d2182c113d01598ec1fdfc106a228..421c3740abcda820feed14eed46701011925d7b6 100644 (file)
@@ -813,6 +813,9 @@ static enum power_supply_property hidpp_battery_props[] = {
        POWER_SUPPLY_PROP_STATUS,
        POWER_SUPPLY_PROP_CAPACITY,
        POWER_SUPPLY_PROP_SCOPE,
+       POWER_SUPPLY_PROP_MODEL_NAME,
+       POWER_SUPPLY_PROP_MANUFACTURER,
+       POWER_SUPPLY_PROP_SERIAL_NUMBER,
 };
 
 static int hidpp_battery_get_property(struct power_supply *psy,
@@ -832,6 +835,18 @@ static int hidpp_battery_get_property(struct power_supply *psy,
                case POWER_SUPPLY_PROP_SCOPE:
                        val->intval = POWER_SUPPLY_SCOPE_DEVICE;
                        break;
+               case POWER_SUPPLY_PROP_MODEL_NAME:
+                       if (!strncmp(hidpp->name, "Logitech ", 9))
+                               val->strval = hidpp->name + 9;
+                       else
+                               val->strval = hidpp->name;
+                       break;
+               case POWER_SUPPLY_PROP_MANUFACTURER:
+                       val->strval = "Logitech";
+                       break;
+               case POWER_SUPPLY_PROP_SERIAL_NUMBER:
+                       val->strval = hidpp->hid_dev->uniq;
+                       break;
                default:
                        ret = -EINVAL;
                        break;