]> git.baikalelectronics.ru Git - kernel.git/commit
mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock
authorJarkko Nikula <jarkko.nikula@linux.intel.com>
Fri, 18 May 2018 08:38:27 +0000 (11:38 +0300)
committerLee Jones <lee.jones@linaro.org>
Mon, 4 Jun 2018 07:44:17 +0000 (08:44 +0100)
commit14482f9a776d3d9ad562625712b29c062ef397c8
tree723e1ae80778ca53562e625b0a922147d682dd70
parent075e4b0cf3fd7773052e7f2783b839f9fbd1360a
mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock

Intel Cannon Lake PCH has much higher 216 MHz input clock to LPSS I2C
than Sunrisepoint which uses 120 MHz. Preliminary information was that
both share the same clock rate but actual silicon implements elevated
rate for better support for 3.4 MHz high-speed I2C.

This incorrect input clock rate results too high I2C bus clock in case
ACPI doesn't provide tuned I2C timing parameters since I2C host
controller driver calculates them from input clock rate.

Fix this by using the correct rate. We still share the same 230 ns SDA
hold time value than Sunrisepoint.

Cc: stable@vger.kernel.org
Fixes: 7349c5a84d43 ("mfd: intel-lpss: Add Intel Cannonlake PCI IDs")
Reported-by: Jian-Hong Pan <jian-hong@endlessm.com>
Reported-by: Chris Chiu <chiu@endlessm.com>
Reported-by: Daniel Drake <drake@endlessm.com>
Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: Jian-Hong Pan <jian-hong@endlessm.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/intel-lpss-pci.c