Some chips support Environmental Controller access through SMBus. On those chips, it is possible that an Embedded Controller accesses Environmental Controller chip registers at any time. There is no real means for synchronization. On banked chips, this can and will result in access errors with unpredictable result. Disable SMBus access while reading or writing environmental controller registers to work around the problem. --- Frank Crawford (4): Some chips support Environmental Controller access through SMBus. Disable SMBus access while reading or writing environmental controller registers. Add calls to smbus_enable/smbus_disable as required. Test for error in call to it87_update_device and return error. Disable/enable SMBus access for IT8622E chipset. drivers/hwmon/it87.c | 288 +++++++++++++++++++++++++++++++++++-------- 1 file changed, 240 insertions(+), 48 deletions(-) -- 2.39.2