linux-stable/drivers/input/misc
Stephan Gerhold c694050c96 Input: pm8xxx-vib - fix handling of separate enable register
commit 996d5d5f89 upstream.

Setting the vibrator enable_mask is not implemented correctly:

For regmap_update_bits(map, reg, mask, val) we give in either
regs->enable_mask or 0 (= no-op) as mask and "val" as value.
But "val" actually refers to the vibrator voltage control register,
which has nothing to do with the enable_mask.

So we usually end up doing nothing when we really wanted
to enable the vibrator.

We want to set or clear the enable_mask (to enable/disable the vibrator).
Therefore, change the call to always modify the enable_mask
and set the bits only if we want to enable the vibrator.

Fixes: d4c7c5c96c ("Input: pm8xxx-vib - handle separate enable register")
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20200114183442.45720-1-stephan@gerhold.net
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-29 16:43:20 +01:00
..
88pm80x_onkey.c Input: misc - drop unnecessary calls to device_init_wakeup 2017-01-21 23:53:21 -08:00
88pm860x_onkey.c
ab8500-ponkey.c Input: ab8500-ponkey - drop unnecessary call to platform_set_drvdata 2017-01-18 11:49:19 -08:00
ad714x-i2c.c
ad714x-spi.c
ad714x.c
ad714x.h
adxl34x-i2c.c Input: adxl34x - make it enumerable in ACPI environment 2017-01-03 12:33:12 -08:00
adxl34x-spi.c
adxl34x.c Input: adxl34x - do not treat FIFO_MODE() as boolean 2017-09-20 12:15:58 -07:00
adxl34x.h
apanel.c Input: remove unneeded MODULE_VERSION() usage in misc input drivers 2018-01-16 16:48:24 -08:00
arizona-haptics.c Linux 4.10-rc5 2017-01-24 12:37:43 -08:00
ati_remote2.c Input: ati_remote2 - fix typo 'can by' to 'can be' 2018-05-15 12:01:09 -07:00
atlas_btns.c Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
atmel_captouch.c Input: misc - drop calls to platform_set_drvdata and i2c_set_clientdata 2017-01-21 23:51:51 -08:00
axp20x-pek.c Input: axp20x-pek - fix module not auto-loading for axp221 pek 2017-10-19 16:50:28 -07:00
bma150.c Input: bma150 - register input device after setting private data 2019-02-20 10:25:46 +01:00
cm109.c Input: cm109 - validate number of endpoints before using them 2017-03-16 13:56:50 -07:00
cma3000_d0x.c
cma3000_d0x.h
cma3000_d0x_i2c.c
cobalt_btns.c
cpcap-pwrbutton.c input: cpcap-pwrbutton: New driver 2017-04-11 15:18:09 +01:00
da9052_onkey.c
da9055_onkey.c
da9063_onkey.c Input: da9063 - fix capability and drop KEY_SLEEP 2019-10-29 09:19:51 +01:00
dm355evm_keys.c mfd: dm355evm_msp: Move header file out of I2C realm 2017-08-15 08:06:14 +01:00
drv260x.c Input: drv260x - remove OF dependency 2017-03-09 10:00:14 -08:00
drv2665.c Input: drv2665 - fix misuse of regmap_update_bits 2016-11-30 09:03:44 -08:00
drv2667.c Input: drv2667 - fix misuse of regmap_update_bits 2016-11-30 09:03:45 -08:00
e3x0-button.c Input: misc - drop empty remove functions 2017-01-21 23:53:34 -08:00
gp2ap002a00f.c Input: misc - drop unnecessary calls to device_init_wakeup 2017-01-21 23:53:21 -08:00
gpio-beeper.c
gpio_decoder.c Input: gpio_decoder - drop unnecessary call to platform_set_drvdata 2017-01-18 11:49:13 -08:00
hisi_powerkey.c Input: misc - drop empty remove functions 2017-01-21 23:53:34 -08:00
hp_sdc_rtc.c proc: introduce proc_create_single{,_data} 2018-05-16 07:23:35 +02:00
ideapad_slidebar.c
ims-pcu.c Input: ims-pcu - fix typo in the error message 2017-11-26 16:16:31 -08:00
ixp4xx-beeper.c
Kconfig Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2018-06-27 09:16:53 -07:00
keyspan_remote.c Input: keyspan-remote - fix control-message timeouts 2020-01-29 16:43:18 +01:00
kxtj9.c
m68kspkr.c
Makefile Input: add Spreadtrum vibrator driver 2018-06-04 13:36:11 -07:00
max8925_onkey.c
max8997_haptic.c
max77693-haptic.c Linux 4.8 2016-10-13 17:25:40 -07:00
mc13783-pwrbutton.c
mma8450.c Input: mma8450 - drop unnecessary call to i2c_set_clientdata 2017-01-18 11:49:14 -08:00
palmas-pwrbutton.c
pcap_keys.c
pcf8574_keypad.c
pcf50633-input.c
pcspkr.c Input: pcspkr - fix code style and error value in pcspkr_event 2017-08-14 22:12:05 -07:00
pm8xxx-vibrator.c Input: pm8xxx-vib - fix handling of separate enable register 2020-01-29 16:43:20 +01:00
pm8941-pwrkey.c Input: pm8941-pwrkey - add resin entry 2018-07-30 23:11:17 -07:00
pmic8xxx-pwrkey.c Input: misc - drop empty remove functions 2017-01-21 23:53:34 -08:00
powermate.c Input: powermate - replace GFP_ATOMIC with GFP_KERNEL in powermate_alloc_buffers() 2018-07-27 11:59:07 -07:00
pwm-beeper.c Input: pwm-beeper - support customized freq for SND_BELL 2017-03-07 10:39:23 -08:00
pwm-vibra.c Input: pwm-vibra - stop regulator after disabling pwm, not before 2019-03-23 20:09:42 +01:00
rave-sp-pwrbutton.c Input: add RAVE SP Powerbutton driver 2018-03-08 15:34:45 -08:00
rb532_button.c
regulator-haptic.c locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE() 2017-10-25 11:01:08 +02:00
retu-pwrbutton.c Input: misc - drop empty remove functions 2017-01-21 23:53:34 -08:00
rk805-pwrkey.c Input: add power key driver for Rockchip RK805 PMIC 2017-07-24 17:00:55 -07:00
rotary_encoder.c docs: Fix some broken references 2018-06-15 18:10:01 -03:00
sc27xx-vibra.c Input: add Spreadtrum vibrator driver 2018-06-04 13:36:11 -07:00
sgi_btns.c
sirfsoc-onkey.c Input: misc - drop empty remove functions 2017-01-21 23:53:34 -08:00
soc_button_array.c Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device 2019-04-05 22:33:16 +02:00
sparcspkr.c
tps65218-pwrbutton.c Linux 4.10-rc5 2017-01-24 12:37:43 -08:00
twl4030-pwrbutton.c mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
twl4030-vibra.c Input: twl4030-vibra - fix sibling-node lookup 2018-01-08 17:40:52 -08:00
twl6040-vibra.c Input: twl6040-vibra - fix child-node lookup 2018-01-08 17:40:55 -08:00
uinput.c Input: input_event - fix struct padding on sparc64 2020-01-14 20:07:01 +01:00
wistron_btns.c Input: wistron_btns - remove use of sparse_keymap_free 2017-03-09 10:06:12 -08:00
wm831x-on.c
xen-kbdfront.c Input: xen-kbdfront - allow better run-time configuration 2018-06-12 15:11:00 -07:00
yealink.c Input: yealink - replace GFP_ATOMIC with GFP_KERNEL in usb_probe() 2018-07-27 11:59:09 -07:00
yealink.h Input: yealink - define packet offset __be16 instead of u16 2017-04-10 20:41:41 -07:00