aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>2016-07-13 12:06:16 -0400
committerJiri Kosina <jkosina@suse.cz>2016-08-05 07:39:22 -0400
commit136ae5e9bacebbd8f2a94e8dea69f0dc22fbc8c7 (patch)
tree49e3176f50029bb4b894e7da840b37b59f9b3a92
parent96983296281507f049425b84f0d244c40d506eba (diff)
HID: wacom: power_supply: remove ac information
Looks like upowerd is ignoring this since October 2013, so there is no need to keep this around in the kernel. And as mentioned in 8aaa592 (linux: Ignore ACs coming from devices) in the upower tree, "We already have enough information on the device battery". Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/wacom.h3
-rw-r--r--drivers/hid/wacom_sys.c49
2 files changed, 1 insertions, 51 deletions
diff --git a/drivers/hid/wacom.h b/drivers/hid/wacom.h
index 8f8a16243f07..26a8a057b624 100644
--- a/drivers/hid/wacom.h
+++ b/drivers/hid/wacom.h
@@ -135,11 +135,8 @@ struct wacom_group_leds {
135 135
136struct wacom_battery { 136struct wacom_battery {
137 struct power_supply_desc bat_desc; 137 struct power_supply_desc bat_desc;
138 struct power_supply_desc ac_desc;
139 struct power_supply *battery; 138 struct power_supply *battery;
140 struct power_supply *ac;
141 char bat_name[WACOM_NAME_MAX]; 139 char bat_name[WACOM_NAME_MAX];
142 char ac_name[WACOM_NAME_MAX];
143 int battery_capacity; 140 int battery_capacity;
144 int bat_charging; 141 int bat_charging;
145 int bat_connected; 142 int bat_connected;
diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
index 792708b932bc..d8f3d3dc2c88 100644
--- a/drivers/hid/wacom_sys.c
+++ b/drivers/hid/wacom_sys.c
@@ -1342,12 +1342,6 @@ static enum power_supply_property wacom_battery_props[] = {
1342 POWER_SUPPLY_PROP_CAPACITY 1342 POWER_SUPPLY_PROP_CAPACITY
1343}; 1343};
1344 1344
1345static enum power_supply_property wacom_ac_props[] = {
1346 POWER_SUPPLY_PROP_PRESENT,
1347 POWER_SUPPLY_PROP_ONLINE,
1348 POWER_SUPPLY_PROP_SCOPE,
1349};
1350
1351static int wacom_battery_get_property(struct power_supply *psy, 1345static int wacom_battery_get_property(struct power_supply *psy,
1352 enum power_supply_property psp, 1346 enum power_supply_property psp,
1353 union power_supply_propval *val) 1347 union power_supply_propval *val)
@@ -1384,38 +1378,14 @@ static int wacom_battery_get_property(struct power_supply *psy,
1384 return ret; 1378 return ret;
1385} 1379}
1386 1380
1387static int wacom_ac_get_property(struct power_supply *psy,
1388 enum power_supply_property psp,
1389 union power_supply_propval *val)
1390{
1391 struct wacom_battery *battery = power_supply_get_drvdata(psy);
1392 int ret = 0;
1393
1394 switch (psp) {
1395 case POWER_SUPPLY_PROP_PRESENT:
1396 /* fall through */
1397 case POWER_SUPPLY_PROP_ONLINE:
1398 val->intval = battery->ps_connected;
1399 break;
1400 case POWER_SUPPLY_PROP_SCOPE:
1401 val->intval = POWER_SUPPLY_SCOPE_DEVICE;
1402 break;
1403 default:
1404 ret = -EINVAL;
1405 break;
1406 }
1407 return ret;
1408}
1409
1410static int __wacom_initialize_battery(struct wacom *wacom, 1381static int __wacom_initialize_battery(struct wacom *wacom,
1411 struct wacom_battery *battery) 1382 struct wacom_battery *battery)
1412{ 1383{
1413 static atomic_t battery_no = ATOMIC_INIT(0); 1384 static atomic_t battery_no = ATOMIC_INIT(0);
1414 struct device *dev = &wacom->hdev->dev; 1385 struct device *dev = &wacom->hdev->dev;
1415 struct power_supply_config psy_cfg = { .drv_data = battery, }; 1386 struct power_supply_config psy_cfg = { .drv_data = battery, };
1416 struct power_supply *ps_bat, *ps_ac; 1387 struct power_supply *ps_bat;
1417 struct power_supply_desc *bat_desc = &battery->bat_desc; 1388 struct power_supply_desc *bat_desc = &battery->bat_desc;
1418 struct power_supply_desc *ac_desc = &battery->ac_desc;
1419 unsigned long n; 1389 unsigned long n;
1420 int error; 1390 int error;
1421 1391
@@ -1432,31 +1402,15 @@ static int __wacom_initialize_battery(struct wacom *wacom,
1432 bat_desc->type = POWER_SUPPLY_TYPE_USB; 1402 bat_desc->type = POWER_SUPPLY_TYPE_USB;
1433 bat_desc->use_for_apm = 0; 1403 bat_desc->use_for_apm = 0;
1434 1404
1435 ac_desc->properties = wacom_ac_props;
1436 ac_desc->num_properties = ARRAY_SIZE(wacom_ac_props);
1437 ac_desc->get_property = wacom_ac_get_property;
1438 sprintf(battery->ac_name, "wacom_ac_%ld", n);
1439 ac_desc->name = battery->ac_name;
1440 ac_desc->type = POWER_SUPPLY_TYPE_MAINS;
1441 ac_desc->use_for_apm = 0;
1442
1443 ps_bat = devm_power_supply_register(dev, bat_desc, &psy_cfg); 1405 ps_bat = devm_power_supply_register(dev, bat_desc, &psy_cfg);
1444 if (IS_ERR(ps_bat)) { 1406 if (IS_ERR(ps_bat)) {
1445 error = PTR_ERR(ps_bat); 1407 error = PTR_ERR(ps_bat);
1446 goto err; 1408 goto err;
1447 } 1409 }
1448 1410
1449 ps_ac = devm_power_supply_register(dev, ac_desc, &psy_cfg);
1450 if (IS_ERR(ps_ac)) {
1451 error = PTR_ERR(ps_ac);
1452 goto err;
1453 }
1454
1455 power_supply_powers(ps_bat, &wacom->hdev->dev); 1411 power_supply_powers(ps_bat, &wacom->hdev->dev);
1456 power_supply_powers(ps_ac, &wacom->hdev->dev);
1457 1412
1458 battery->battery = ps_bat; 1413 battery->battery = ps_bat;
1459 battery->ac = ps_ac;
1460 1414
1461 devres_close_group(dev, bat_desc); 1415 devres_close_group(dev, bat_desc);
1462 return 0; 1416 return 0;
@@ -1480,7 +1434,6 @@ static void wacom_destroy_battery(struct wacom *wacom)
1480 devres_release_group(&wacom->hdev->dev, 1434 devres_release_group(&wacom->hdev->dev,
1481 &wacom->battery.bat_desc); 1435 &wacom->battery.bat_desc);
1482 wacom->battery.battery = NULL; 1436 wacom->battery.battery = NULL;
1483 wacom->battery.ac = NULL;
1484 } 1437 }
1485} 1438}
1486 1439