coreboot/src/soc
Duncan Laurie 5d3f4d0fcb UPSTREAM: skylake: Generate ACPI timing values for I2C devices
Have the Skylake SOC generate ACPI timing values for the enabled I2C
controllers instead of passing it in the DSDT with static timings.

The timing values are generated from the controller clock speed and
are more accurate than the hardcoded values that were in the ASL which
were originally copied from Broadwell where the controller is running
at a different clock speed...

Additionally it is now possible for a board to override the values
using devicetree.cb. If zero is passed in for SCL HCNT or LCNT then
the kernel will generate its own timing using the same forumla, but if
the SDA hold time value is zero the kernel will NOT generate a correct
value and the SDA hold time may be incorrect.

This was tested on the Chell platform to ensure all the I2C devices on
the board are still operational with these new timing values.

BUG=None
BRANCH=None
TEST=None

Change-Id: I4feb3df9e083592792f8fadd7105e081a984a906
Original-Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Original-Reviewed-on: https://review.coreboot.org/15291
Original-Tested-by: build bot (Jenkins)
Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/358386
Reviewed-by: Martin Roth <martinroth@chromium.org>
2016-07-07 01:08:46 -07:00
..
broadcom/cygnus soc/*: fix uart's regwidth specification in cbtables 2016-02-21 12:26:05 +01:00
dmp/vortex86ex dmp/vortex86ex: Merge northbridge and southbridge into soc 2016-05-05 20:06:33 +02:00
imgtec/pistachio drivers/uart: Use uart_platform_refclk for all UART models 2016-05-09 18:45:44 +02:00
intel UPSTREAM: skylake: Generate ACPI timing values for I2C devices 2016-07-07 01:08:46 -07:00
marvell drivers/uart: Use uart_platform_refclk for all UART models 2016-05-09 18:45:44 +02:00
mediatek/mt8173 mt8173: dram: Add more sample points to improve dram timing margin. 2016-06-01 20:37:06 -07:00
nvidia UPSTREAM: tegra124: Actually align the framebuffer's bytes-per-line to 32 2016-06-28 17:17:06 -07:00
qualcomm Gale board: Moving TPM setup function to verstage.c 2016-05-12 15:45:03 -06:00
rdc/r8610 rdc/r8610: Move to src/soc 2016-05-05 20:08:58 +02:00
rockchip rk3399: allow more room for CBMEM console 2016-07-06 10:46:18 -07:00
samsung UPSTREAM: region: Add writeat and eraseat support 2016-06-27 17:13:18 -07:00
ucb/riscv tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00