All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Tissoires <benjamin.tissoires@redhat.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Jiri Kosina <jkosina@suse.cz>, Ping Cheng <pinglinux@gmail.com>,
	Jason Gerecke <killertofu@gmail.com>,
	Przemo Firszt <przemo@firszt.eu>
Cc: linux-kernel@vger.kernel.org, linux-input@vger.kernel.org
Subject: [PATCH v2 04/10] Input - wacom: use a uniq name for the battery device
Date: Thu, 24 Jul 2014 14:13:59 -0400	[thread overview]
Message-ID: <1406225645-32141-5-git-send-email-benjamin.tissoires@redhat.com> (raw)
In-Reply-To: <1406225645-32141-1-git-send-email-benjamin.tissoires@redhat.com>

The current implementation uses "wacom_battery" as a generic name for
batteries. This prevents us to have two Wacom devices with a battery
attached as the power system will complain about the name which is already
registered.

Use an incremental name for each battery attached.

Related bug:
https://sourceforge.net/p/linuxwacom/bugs/248/

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
---

changes in v2:
- do not use the name of the tablet (which removes the need of the check for
  spaces), but use instead a simple counter to get a uniq name.

 drivers/hid/wacom_sys.c | 6 +++++-
 drivers/hid/wacom_wac.h | 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/hid/wacom_sys.c b/drivers/hid/wacom_sys.c
index f0ee7ff..eb8705d 100644
--- a/drivers/hid/wacom_sys.c
+++ b/drivers/hid/wacom_sys.c
@@ -809,12 +809,16 @@ static int wacom_battery_get_property(struct power_supply *psy,
 static int wacom_initialize_battery(struct wacom *wacom)
 {
 	int error = 0;
+	static atomic_t battery_no = ATOMIC_INIT(0);
+	unsigned long n;
 
 	if (wacom->wacom_wac.features.quirks & WACOM_QUIRK_BATTERY) {
+		n = atomic_inc_return(&battery_no) - 1;
 		wacom->battery.properties = wacom_battery_props;
 		wacom->battery.num_properties = ARRAY_SIZE(wacom_battery_props);
 		wacom->battery.get_property = wacom_battery_get_property;
-		wacom->battery.name = "wacom_battery";
+		sprintf(wacom->wacom_wac.bat_name, "wacom_battery_%ld", n);
+		wacom->battery.name = wacom->wacom_wac.bat_name;
 		wacom->battery.type = POWER_SUPPLY_TYPE_BATTERY;
 		wacom->battery.use_for_apm = 0;
 
diff --git a/drivers/hid/wacom_wac.h b/drivers/hid/wacom_wac.h
index 8a042ac..6cdf707 100644
--- a/drivers/hid/wacom_wac.h
+++ b/drivers/hid/wacom_wac.h
@@ -154,6 +154,7 @@ struct wacom_shared {
 struct wacom_wac {
 	char name[WACOM_NAME_MAX];
 	char pad_name[WACOM_NAME_MAX];
+	char bat_name[WACOM_NAME_MAX];
 	unsigned char data[WACOM_PKGLEN_MAX];
 	int tool[2];
 	int id[2];
-- 
2.0.1


  parent reply	other threads:[~2014-07-24 18:14 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-24 18:13 [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 01/10] Input - wacom: Support up to 2048 pressure levels with ISDv4 Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 02/10] Input - wacom: put a flag when the led are initialized Benjamin Tissoires
2014-07-24 18:13 ` [PATCH v2 03/10] Input - wacom: enhance Wireless Receiver battery reporting Benjamin Tissoires
2014-07-24 18:13 ` Benjamin Tissoires [this message]
2014-07-24 18:14 ` [PATCH v2 05/10] Input - wacom: register an ac power supply for wireless devices Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 06/10] Input - wacom: prepare the driver to include BT devices Benjamin Tissoires
2014-07-26  0:39   ` Dmitry Torokhov
2014-07-26  3:25     ` Benjamin Tissoires
2014-07-26  3:58       ` Dmitry Torokhov
2014-07-24 18:14 ` [PATCH v2 07/10] Input - wacom: handle Graphire BT tablets in wacom.ko Benjamin Tissoires
2014-07-24 19:35   ` Dmitry Torokhov
2014-07-24 19:43     ` Benjamin Tissoires
2014-07-24 19:58       ` Dmitry Torokhov
2014-07-24 20:11         ` Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 08/10] Input - wacom: handle Intuos 4 BT " Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 09/10] Input - wacom: add copyright note and bump version to 2.0 Benjamin Tissoires
2014-07-24 18:14 ` [PATCH v2 10/10] HID: remove hid-wacom Bluetooth driver Benjamin Tissoires
2014-07-25 12:42 ` [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Przemo Firszt
2014-07-25 12:58   ` Benjamin Tissoires
2014-07-25 13:30     ` Przemo Firszt
2014-07-25 13:30       ` Przemo Firszt
2014-07-25 14:54       ` Benjamin Tissoires
2014-07-25 14:54         ` Benjamin Tissoires
2014-07-25 19:26         ` Przemo Firszt
2014-07-25 19:26           ` Przemo Firszt
2014-07-25 19:32           ` Benjamin Tissoires
2014-07-25 19:32             ` Benjamin Tissoires
2014-07-25 22:13 ` Przemo Firszt
2014-07-25 23:15   ` Benjamin Tissoires
2014-07-26 11:55     ` Przemo Firszt
2014-07-25 23:20 ` [PATCH 11/10] Input - wacom: Check for bluetooth protocol while setting OLEDs Benjamin Tissoires
2014-07-26 12:05   ` Przemo Firszt
2014-07-26  1:41 ` [PATCH v2 00/10] Input - wacom: conversion to HID driver, series 2 Dmitry Torokhov
2014-07-26  3:21   ` Benjamin Tissoires
2014-07-26  3:56     ` Dmitry Torokhov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1406225645-32141-5-git-send-email-benjamin.tissoires@redhat.com \
    --to=benjamin.tissoires@redhat.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=jkosina@suse.cz \
    --cc=killertofu@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pinglinux@gmail.com \
    --cc=przemo@firszt.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.