]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - drivers/power/power_supply_sysfs.c
Merge branch 'power-supply-scope' of git://git.kernel.org/pub/scm/linux/kernel/git...
[mirror_ubuntu-zesty-kernel.git] / drivers / power / power_supply_sysfs.c
index 939e2e432553dd2744884c3d36a9e99b2915c335..5faf7ae9b81f224bb72684d44e1f81be62ac1cad 100644 (file)
@@ -14,6 +14,7 @@
 #include <linux/ctype.h>
 #include <linux/power_supply.h>
 #include <linux/slab.h>
+#include <linux/stat.h>
 
 #include "power_supply.h"
 
@@ -62,6 +63,9 @@ static ssize_t power_supply_show_property(struct device *dev,
        static char *capacity_level_text[] = {
                "Unknown", "Critical", "Low", "Normal", "High", "Full"
        };
+       static char *scope_text[] = {
+               "Unknown", "System", "Device"
+       };
        ssize_t ret = 0;
        struct power_supply *psy = dev_get_drvdata(dev);
        const ptrdiff_t off = attr - power_supply_attrs;
@@ -94,6 +98,8 @@ static ssize_t power_supply_show_property(struct device *dev,
                return sprintf(buf, "%s\n", capacity_level_text[value.intval]);
        else if (off == POWER_SUPPLY_PROP_TYPE)
                return sprintf(buf, "%s\n", type_text[value.intval]);
+       else if (off == POWER_SUPPLY_PROP_SCOPE)
+               return sprintf(buf, "%s\n", scope_text[value.intval]);
        else if (off >= POWER_SUPPLY_PROP_MODEL_NAME)
                return sprintf(buf, "%s\n", value.strval);
 
@@ -166,6 +172,7 @@ static struct device_attribute power_supply_attrs[] = {
        POWER_SUPPLY_ATTR(time_to_full_now),
        POWER_SUPPLY_ATTR(time_to_full_avg),
        POWER_SUPPLY_ATTR(type),
+       POWER_SUPPLY_ATTR(scope),
        /* Properties of type `const char *' */
        POWER_SUPPLY_ATTR(model_name),
        POWER_SUPPLY_ATTR(manufacturer),