mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-13 14:24:11 +08:00
One fix in the i801 driver where a bug caused touchpad
malfunctions on some Lenovo P1 models by incorrectly overwriting a status variable during successful SMBUS transactions. -----BEGIN PGP SIGNATURE----- iIwEABYIADQWIQScDfrjQa34uOld1VLaeAVmJtMtbgUCZgXR5RYcYW5kaS5zaHl0 aUBrZXJuZWwub3JnAAoJENp4BWYm0y1uqAQBAJqp/3aqB816lBH0F2i2qTs/sXL4 lmeDWXG3XXkdOC+WAQCcxJ/EoJcNH6kDfMm0XvgyixTDVy68Mk7HMsQOg1ntBQ== =vXmL -----END PGP SIGNATURE----- Merge tag 'i2c-host-fixes-6.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/andi.shyti/linux into i2c/for-current One fix in the i801 driver where a bug caused touchpad malfunctions on some Lenovo P1 models by incorrectly overwriting a status variable during successful SMBUS transactions.
This commit is contained in:
commit
2953eb0287
@ -536,11 +536,12 @@ static int i801_block_transaction_by_block(struct i801_priv *priv,
|
||||
|
||||
if (read_write == I2C_SMBUS_READ ||
|
||||
command == I2C_SMBUS_BLOCK_PROC_CALL) {
|
||||
status = i801_get_block_len(priv);
|
||||
if (status < 0)
|
||||
len = i801_get_block_len(priv);
|
||||
if (len < 0) {
|
||||
status = len;
|
||||
goto out;
|
||||
}
|
||||
|
||||
len = status;
|
||||
data->block[0] = len;
|
||||
inb_p(SMBHSTCNT(priv)); /* reset the data buffer index */
|
||||
for (i = 0; i < len; i++)
|
||||
|
Loading…
Reference in New Issue
Block a user