summaryrefslogtreecommitdiff
path: root/certs/blacklist_hashes.c
diff options
context:
space:
mode:
authorJeff LaBundy <jeff@labundy.com>2025-03-09 20:29:59 -0500
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2025-03-09 23:12:07 -0700
commita2add513311b48cc924a699a8174db2c61ed5e8a (patch)
treebbcc0d84f596f07cbcee85bd7e0de0fbfff5bd0b /certs/blacklist_hashes.c
parentd85862ccca452eeb19329e9f4f9a6ce1d1e53561 (diff)
Input: iqs7222 - preserve system status register
Some register groups reserve a byte at the end of their continuous address space. Depending on the variant of silicon, this field may share the same memory space as the lower byte of the system status register (0x10). In these cases, caching the reserved byte and writing it later may effectively reset the device depending on what happened in between the read and write operations. Solve this problem by avoiding any access to this last byte within offending register groups. This method replaces a workaround which attempted to write the reserved byte with up-to-date contents, but left a small window in which updates by the device could have been clobbered. Now that the driver does not touch these reserved bytes, the order in which the device's registers are written no longer matters, and they can be written in their natural order. The new method is also much more generic, and can be more easily extended to new variants of silicon with different register maps. As part of this change, the register read and write functions must be gently updated to support byte access instead of word access. Fixes: 2e70ef525b73 ("Input: iqs7222 - acknowledge reset before writing registers") Signed-off-by: Jeff LaBundy <jeff@labundy.com> Link: https://lore.kernel.org/r/Z85Alw+d9EHKXx2e@nixie71 Cc: stable@vger.kernel.org Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'certs/blacklist_hashes.c')
0 files changed, 0 insertions, 0 deletions