Werner Zeh has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/55089 )
Change subject: mb/siemens/mc_apl{1,2,3,5,6}: Provide I2C timings for 400 kHz ......................................................................
mb/siemens/mc_apl{1,2,3,5,6}: Provide I2C timings for 400 kHz
The I2C bus at which the external RTC is attached to is operated at standard speed (100 kHz) at coreboot runtime. The OS can chose to run it at fast speed since it uses its own driver and controller set up.
Report additional bus timings for fast mode so that OS can do it right.
Change-Id: I82e11e5dde8ad1047713f105c5a6d020eebf1ffd Signed-off-by: Werner Zeh werner.zeh@siemens.com --- M src/mainboard/siemens/mc_apl1/variants/mc_apl1/devicetree.cb M src/mainboard/siemens/mc_apl1/variants/mc_apl2/devicetree.cb M src/mainboard/siemens/mc_apl1/variants/mc_apl3/devicetree.cb M src/mainboard/siemens/mc_apl1/variants/mc_apl5/devicetree.cb M src/mainboard/siemens/mc_apl1/variants/mc_apl6/devicetree.cb 5 files changed, 35 insertions(+), 5 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/89/55089/1
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl1/devicetree.cb b/src/mainboard/siemens/mc_apl1/variants/mc_apl1/devicetree.cb index b7590fa..20d44bb 100644 --- a/src/mainboard/siemens/mc_apl1/variants/mc_apl1/devicetree.cb +++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl1/devicetree.cb @@ -49,7 +49,13 @@ .speed = I2C_SPEED_STANDARD, .rise_time_ns = 160, .fall_time_ns = 110, - .data_hold_time_ns = 300 + .data_hold_time_ns = 300, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_hcnt = 0x58, + .scl_lcnt = 0xcf, + .sda_hold = 0x28 + }, }, }"
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl2/devicetree.cb b/src/mainboard/siemens/mc_apl1/variants/mc_apl2/devicetree.cb index 336d6c4..06f4c05 100644 --- a/src/mainboard/siemens/mc_apl1/variants/mc_apl2/devicetree.cb +++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl2/devicetree.cb @@ -47,7 +47,13 @@ .speed = I2C_SPEED_STANDARD, .rise_time_ns = 60, .fall_time_ns = 20, - .data_hold_time_ns = 300 + .data_hold_time_ns = 300, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_hcnt = 0x68, + .scl_lcnt = 0xd4, + .sda_hold = 0x28 + }, }, }"
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl3/devicetree.cb b/src/mainboard/siemens/mc_apl1/variants/mc_apl3/devicetree.cb index 635ff3f..45cfd85 100644 --- a/src/mainboard/siemens/mc_apl1/variants/mc_apl3/devicetree.cb +++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl3/devicetree.cb @@ -44,7 +44,13 @@ .speed = I2C_SPEED_STANDARD, .rise_time_ns = 40, .fall_time_ns = 10, - .data_hold_time_ns = 300 + .data_hold_time_ns = 300, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_hcnt = 0x68, + .scl_lcnt = 0xd1, + .sda_hold = 0x28 + }, }, }"
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/devicetree.cb b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/devicetree.cb index 48b4ad8..2500e08 100644 --- a/src/mainboard/siemens/mc_apl1/variants/mc_apl5/devicetree.cb +++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl5/devicetree.cb @@ -47,7 +47,13 @@ .speed = I2C_SPEED_STANDARD, .rise_time_ns = 160, .fall_time_ns = 110, - .data_hold_time_ns = 300 + .data_hold_time_ns = 300, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_hcnt = 0x5b, + .scl_lcnt = 0xce, + .sda_hold = 0x28 + }, }, }"
diff --git a/src/mainboard/siemens/mc_apl1/variants/mc_apl6/devicetree.cb b/src/mainboard/siemens/mc_apl1/variants/mc_apl6/devicetree.cb index e2a3ea0..e058fde 100644 --- a/src/mainboard/siemens/mc_apl1/variants/mc_apl6/devicetree.cb +++ b/src/mainboard/siemens/mc_apl1/variants/mc_apl6/devicetree.cb @@ -18,7 +18,13 @@ .speed = I2C_SPEED_STANDARD, .rise_time_ns = 40, .fall_time_ns = 10, - .data_hold_time_ns = 300 + .data_hold_time_ns = 300, + .speed_config[0] = { + .speed = I2C_SPEED_FAST, + .scl_hcnt = 0x68, + .scl_lcnt = 0xd1, + .sda_hold = 0x28 + }, } }"