• Dmitry Torokhov's avatar
    Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport · 5030b2fe
    Dmitry Torokhov authored
    Touch controllers need some time after receiving reset command for the
    firmware to finish re-initializing and be ready to respond to commands
    from the host. The driver already had handling for the post-reset delay
    for I2C and SPI transports, this change adds the handling to
    SMBus-connected devices.
    
    SMBus devices are peculiar because they implement legacy PS/2
    compatibility mode, so reset is actually issued by psmouse driver on the
    associated serio port, after which the control is passed to the RMI4
    driver with SMBus companion device.
    
    Note that originally the delay was added to psmouse driver in
    92e24e0e ("Input: psmouse - add delay when deactivating for SMBus
    mode"), but that resulted in an unwanted delay in "fast" reconnect
    handler for the serio port, so it was decided to revert the patch and
    have the delay being handled in the RMI4 driver, similar to the other
    transports.
    Tested-by: default avatarJeffery Miller <jefferymiller@google.com>
    Link: https://lore.kernel.org/r/ZR1yUFJ8a9Zt606N@penguinSigned-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
    5030b2fe
rmi_smbus.c 10.8 KB