On Wed, 2015-12-23 at 11:52 +0200, Mika Westerberg wrote: > On Wed, Dec 23, 2015 at 05:34:01PM +0800, Ken Xue wrote: > > 1) Regarding > > https://msdn.microsoft.com/en-us/library/windows/hardware/dn919852(v=vs.85).aspx > > , Window I2C driver should pass MITT test. There are 5 I2C devices > > connect to one I2C bus for test. And those devices defined different > > "ConnectionSpeed" over the I2C bus by ACPI resource "I2CSerialBus". > > > > During test, I2C bus should run in different "ConnectionSpeed" of > > device. > > > > That means windows driver can modify I2C bus speed to match the > > "ConnectionSpeed" of device on-the-fly. Static value from SSCN and FMCN > > can not work for WITT test cases. > > That is why there are *CNT methods for all supported I2C modes: > > - SSCN() - returns for standard mode (100kHz) > - FMCN() - returns for fast mode (400kHz) > - FPCN() - returns for fast mode+ (1MHz) > > for High-speed mode I'm not sure what the method name is ;-) > > Then the Windows driver switches between those based on what the > ConnectionSpeed is in the ACPI I2C connector. Window driver can set Bus speed based on "ConnectionSpeed". But Current Linux driver only sets Bus speed during probe. How can Linux diver determine which Bus speed should be applied, if all *CNT methods return non-zero? -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html