[PATCH 0/9] Input: synaptics-rmi4 - Bootloader v7/v8 firmware update improvements

From: Matthias Schiffer
Date: Wed Jun 08 2022 - 08:49:44 EST


This fixes the firmware update function with bootloader v8, allows to
recover from interrupted updates with v7/v8, and does some code cleanup.

I believe that the code that allows to recover from a broken partition
table is also necessary to make flashing a different partition table
work at all, but I wasn't able to verify that, as I don't have any firmware
images with different partition tables to test with. In any case, I'm
pretty sure that it is working correctly now, as recovery from a mostly
empty flash without partition table has been tested successfully.

I have only tested the new code with bootloader v8, and I don't have the
documentation / interfacing guide for v7, so it would be great if anyone
could check that I didn't break updates for v7.


Matthias Schiffer (9):
Input: synaptics-rmi4 - fix firmware update operations with bootloader
v8
Input: synaptics-rmi4 - introduce rmi_f34v7_check_command_status()
helper
Input: synaptics-rmi4 - fix command completion check for bootloader
v7/v8
Input: synaptics-rmi4 - rewrite partition table unconditionally
Input: synaptics-rmi4 - reset after writing partition table
Input: synaptics-rmi4 - make rmi_f34v7_erase_all() use the "erase all"
command
Input: synaptics-rmi4 - remove unneeded struct register_offset
Input: synaptics-rmi4 - simplify rmi_f34v7_start_reflash()
Input: synaptics-rmi4 - drop useless gotos in rmi_f34v7_do_reflash()

drivers/input/rmi4/rmi_f34.c | 16 +-
drivers/input/rmi4/rmi_f34.h | 17 --
drivers/input/rmi4/rmi_f34v7.c | 349 +++++++--------------------------
3 files changed, 81 insertions(+), 301 deletions(-)

--
2.25.1