summaryrefslogtreecommitdiff
path: root/payloads
diff options
context:
space:
mode:
authorTristan Shieh <tristan.shieh@mediatek.com>2019-04-08 11:01:40 +0800
committerJulius Werner <jwerner@chromium.org>2019-04-17 04:32:26 +0000
commita76e6542d1ab39ca50777f3fd0146151d0868c5c (patch)
tree8011717f7cf8ef7e826825caa8f7bdfcdd0ea853 /payloads
parent250dfc025613f5e193183f9520432207f4b296e4 (diff)
mediatek: Use the 64-bit timer
GPT4 is a 32-bit timer and the counter of GPT4 will overflow in about 330 seconds (0xffffffff / 13MHz). Timer and delay functions will not work properly if the counter overflows. To fix that we should use the 64-bit timer (GPT6). BUG=b:80501386 BRANCH=none Test=emerge-elm coreboot; emerge-kukui coreboot Change-Id: I9f080e47253a1b1bab4636a45cb86c8666a25302 Signed-off-by: Tristan Shieh <tristan.shieh@mediatek.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/32245 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Hung-Te Lin <hungte@chromium.org> Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-by: You-Cheng Syu <youcheng@google.com>
Diffstat (limited to 'payloads')
-rw-r--r--payloads/libpayload/drivers/timer/Kconfig5
1 files changed, 3 insertions, 2 deletions
diff --git a/payloads/libpayload/drivers/timer/Kconfig b/payloads/libpayload/drivers/timer/Kconfig
index f1542cf9db..5a61dfab51 100644
--- a/payloads/libpayload/drivers/timer/Kconfig
+++ b/payloads/libpayload/drivers/timer/Kconfig
@@ -54,7 +54,7 @@ config TIMER_IMG_PISTACHIO
bool "Timer for IMG Pistachio"
config TIMER_MTK
- bool "Timer for MediaTek MT8173"
+ bool "Timer for MediaTek"
endchoice
@@ -77,7 +77,7 @@ config TIMER_GENERIC_REG
default 0x004A2000 if TIMER_IPQ40XX
default 0x0200A028 if TIMER_IPQ806X
default 0x101C0100 if TIMER_MCT
- default 0x10008048 if TIMER_MTK
+ default 0x10008068 if TIMER_MTK
default 0xff810028 if TIMER_RK3288
default 0xff850008 if TIMER_RK3399
default 0x60005010 if TIMER_TEGRA_1US
@@ -89,6 +89,7 @@ config TIMER_GENERIC_HIGH_REG
hex "Generic Timer High Register Address"
default 0x004A2004 if TIMER_IPQ40XX
default 0x101C0104 if TIMER_MCT
+ default 0x10008078 if TIMER_MTK
default 0xff81002C if TIMER_RK3288
default 0xff85000C if TIMER_RK3399
default 0x0