Dmitry Torokhov
2e210bbb74
HID: input: fix battery level reporting on BT mice
...
The commit 581c448476 ("HID: input: map digitizer battery usage")
assumed that devices having input (qas opposed to feature) report for
battery strength would report the data on their own, without the need to
be polled by the kernel; unfortunately it is not so. Many wireless mice
do not send unsolicited reports with battery strength data and have to
be polled explicitly. As a complication, stylus devices on digitizers
are not normally connected to the base and thus can not be polled - the
base can only determine battery strength in the stylus when it is in
proximity.
To solve this issue, we add a special flag that tells the kernel
to avoid polling the device (and expect unsolicited reports) and set it
when report field with physical usage of digitizer stylus (HID_DG_STYLUS).
Unless this flag is set, and we have not seen the unsolicited reports,
the kernel will attempt to poll the device when userspace attempts to
read "capacity" and "state" attributes of power_supply object
corresponding to the devices battery.
Fixes: 581c448476 ("HID: input: map digitizer battery usage")
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=198095
Cc: stable@vger.kernel.org
Reported-and-tested-by: Martin van Es <martin@mrvanes.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2018-04-09 09:26:12 +02:00
..
accessibility
acpi
arm64 updates for 4.17
2018-04-04 16:01:43 -07:00
amba
android
ata
Merge branch 'for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata
2018-04-03 17:42:25 -07:00
atm
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-04-01 19:49:34 -04:00
auxdisplay
base
Driver core patches for 4.17-rc1
2018-04-04 19:41:45 -07:00
bcma
block
bluetooth
Bluetooth: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for BTUSB_QCA_ROME
2018-04-01 21:43:02 +03:00
bus
Staging/IIO patches for 4.17-rc1
2018-04-04 18:56:27 -07:00
cdrom
char
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
clk
clk: bcm2835: Protect sections updating shared registers
2018-03-19 09:27:37 -07:00
clocksource
arch: remove obsolete architecture ports
2018-04-02 20:20:12 -07:00
connector
cpufreq
Power management updates for 4.17-rc1
2018-04-03 10:45:39 -07:00
cpuidle
cpuidle: poll_state: Avoid invoking local_clock() too often
2018-03-29 13:06:08 +02:00
crypto
Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2018-04-04 17:11:08 -07:00
dax
dca
devfreq
dio
dma
dmaengine: stm32-dmamux: fix a potential buffer overflow
2018-03-22 10:51:35 +05:30
dma-buf
edac
arch: remove obsolete architecture ports
2018-04-02 20:20:12 -07:00
eisa
extcon
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
firewire
firmware
Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-04-02 17:46:37 -07:00
fmc
fpga
fsi
gpio
This is the bulk of GPIO changes for the v4.17 kernel cycle:
2018-04-05 09:51:41 -07:00
gpu
sound updates for 4.17-rc1
2018-04-05 10:42:07 -07:00
hid
HID: input: fix battery level reporting on BT mice
2018-04-09 09:26:12 +02:00
hsi
HSI: hsi_char: Delete an error message for a failed memory allocation in hsc_probe()
2018-03-19 16:31:07 +01:00
hv
hv: add SPDX license id to Kconfig
2018-03-28 13:24:56 +02:00
hwmon
hwspinlock
hwtracing
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
i2c
arch: remove obsolete architecture ports
2018-04-02 20:20:12 -07:00
ide
LED updates for 4.17-rc1
2018-04-03 12:38:19 -07:00
idle
iio
This is the bulk of GPIO changes for the v4.17 kernel cycle:
2018-04-05 09:51:41 -07:00
infiniband
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-04-01 19:49:34 -04:00
input
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-04-04 14:50:29 -07:00
iommu
Merge branch 'x86-dma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-04-02 17:18:45 -07:00
ipack
irqchip
Staging/IIO patches for 4.17-rc1
2018-04-04 18:56:27 -07:00
isdn
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-04-03 14:04:18 -07:00
leds
leds: Fix wrong dmi_match on PC Engines APU LEDs
2018-03-20 20:28:00 +01:00
lightnvm
macintosh
macintosh/via-pmu68k: Initialize PMU driver with setup_arch and arch_initcall
2018-03-19 10:22:59 +01:00
mailbox
mcb
md
dm: fix dropped return code from dm_get_bdev_for_ioctl
2018-03-29 23:31:32 -04:00
media
media updates for v4.17-rc1
2018-04-03 17:16:59 -07:00
memory
memstick
message
mfd
misc
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
mmc
MMC core:
2018-04-03 12:17:25 -07:00
mtd
mtd: jedec_probe: Fix crash in jedec_read_mfr()
2018-03-29 19:29:06 +02:00
mux
net
Driver core patches for 4.17-rc1
2018-04-04 19:41:45 -07:00
nfc
ntb
nubus
nvdimm
libnvdimm, nfit: fix persistence domain reporting
2018-03-21 15:12:07 -07:00
nvme
nvmem
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
of
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-04-03 14:04:18 -07:00
opp
oprofile
oprofilefs: don't oops on allocation failure
2018-03-29 15:07:48 -04:00
parisc
parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode
2018-03-27 18:52:22 +02:00
parport
Char/Misc patches for 4.17-rc1
2018-04-04 20:07:20 -07:00
pci
arch: remove obsolete architecture ports
2018-04-02 20:20:12 -07:00
pcmcia
Power management updates for 4.17-rc1
2018-04-03 10:45:39 -07:00
perf
arm64 updates for 4.17
2018-04-04 16:01:43 -07:00
phy
phy: for 4.17
2018-03-20 10:10:46 +01:00
pinctrl
This is the bulk of GPIO changes for the v4.17 kernel cycle:
2018-04-05 09:51:41 -07:00
platform
USB/PHY patches for 4.17-rc1
2018-04-04 17:55:35 -07:00
pnp
power
power supply and reset changes for the v4.17 series
2018-04-03 12:10:01 -07:00
powercap
powercap: RAPL: Add support for Cannon Lake
2018-03-19 00:02:24 +01:00
pps
ps3
ptp
pwm
pwm: remove pwm-bfin driver
2018-03-26 15:57:08 +02:00
rapidio
ras
regulator
Merge remote-tracking branches 'regulator/topic/88pg86x', 'regulator/topic/dt', 'regulator/topic/formatting' and 'regulator/topic/gpio' into regulator-next
2018-03-28 10:33:53 +08:00
remoteproc
reset
rpmsg
rtc
rtc: remove bfin driver
2018-03-26 15:56:31 +02:00
s390
Kbuild updates for v4.17
2018-04-03 15:51:22 -07:00
sbus
sparc64: Properly range check DAX completion index
2018-04-01 20:07:00 -04:00
scsi
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-04-01 19:49:34 -04:00
sfi
sh
siox
slimbus
sn
soc
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-03-23 11:31:58 -04:00
soundwire
spi
spi: SPI updates for v4.17
2018-04-03 12:06:21 -07:00
spmi
ssb
staging
Staging/IIO patches for 4.17-rc1
2018-04-04 18:56:27 -07:00
target
tc
tee
thermal
thunderbolt
tty
TTY/Serial driver patches for 4.17-rc1
2018-04-04 18:43:49 -07:00
uio
usb
TTY/Serial driver patches for 4.17-rc1
2018-04-04 18:43:49 -07:00
uwb
vfio
Revert: "vfio-pci: Mask INTx if a device is not capabable of enabling it"
2018-03-21 22:50:19 -06:00
vhost
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-04-01 19:49:34 -04:00
video
TTY/Serial driver patches for 4.17-rc1
2018-04-04 18:43:49 -07:00
virt
virtio
visorbus
vlynq
vme
w1
watchdog
This is the bulk of GPIO changes for the v4.17 kernel cycle:
2018-04-05 09:51:41 -07:00
xen
x86/dma: Remove dma_alloc_coherent_mask()
2018-03-20 10:01:56 +01:00
zorro
zorro: Set up z->dev.dma_mask for the DMA API
2018-03-19 10:26:46 +01:00
Kconfig
hwtracing: Add HW tracing support menu
2018-03-29 13:38:10 +03:00
Makefile