On Fri, 6 Apr 2018 16:10:45 +0200, Jean Delvare wrote: > One thing you could do is compare all the register values before and > after loading and unloading the i2c-i801 driver, with and without > disable_features=0x20. For that purpose, you would have to build > i2c-i801 as a module, and blacklist this module so it does not get > auto-loaded. You can find the base I/O address of the registers with: > > # lspci -v -s 00:1f.3 > 00:1f.3 SMBus: Intel Corporation 8 Series/C220 Series Chipset Family SMBus Controller (rev 04) > Subsystem: Dell Device 05a4 > Flags: medium devsel, IRQ 18 > Memory at f7f35000 (64-bit, non-prefetchable) [size=256] > I/O ports at f000 [size=32] <-- HERE > Kernel driver in use: i801_smbus > Kernel modules: i2c_i801 > > Then the register values can be dumped with: > > # isadump -f 0xf000 32 > > isadump is part of lm-sensors. Adjust the address for your own system. Oh, and dumping the PCI device configuration space while you're here would be a good idea as well, as some of the device registers are there: # lspci -s 00:1f.3 -xxx Maybe the difference is there and not in the I/O space registers. > Then modprobe i2c-i801, rmmod i2c-i801, and dump again. If there is any > difference then that would possibly point us to what the firmware does > not like on next boot. -- Jean Delvare SUSE L3 Support