• Florian Vaussard's avatar
    Input: drv2665 - fix misuse of regmap_update_bits · 037b3af6
    Florian Vaussard authored
    Using regmap_update_bits(..., mask, 1) with 'mask' following (1 << k)
    and k greater than 0 is wrong. Indeed, _regmap_update_bits will perform
    (mask & 1), which results in 0 if LSB of mask is 0. Thus the call
    regmap_update_bits(..., mask, 1) is in reality equivalent to
    regmap_update_bits(..., mask, 0).
    
    In such a case, the correct use is regmap_update_bits(..., mask, mask).
    
    This driver is performing such a mistake with the DRV2665_STANDBY mask,
    which equals BIT(6). Fix the driver to make it consistent with the API,
    and fix the alignment problem at the same time. Please note that this
    change is untested, as I do not have this piece of hardware. Testers
    are welcome!
    Signed-off-by: default avatarFlorian Vaussard <florian.vaussard@heig-vd.ch>
    Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
    037b3af6
drv2665.c 7.97 KB