2016-07-27 12:41:04 +02:00
|
|
|
##
|
|
|
|
## This file is part of the coreboot project.
|
|
|
|
##
|
|
|
|
## This program is free software; you can redistribute it and/or modify
|
|
|
|
## it under the terms of the GNU General Public License as published by
|
|
|
|
## the Free Software Foundation; version 2 of the License.
|
|
|
|
##
|
|
|
|
## This program is distributed in the hope that it will be useful,
|
|
|
|
## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
## GNU General Public License for more details.
|
|
|
|
|
|
|
|
choice
|
|
|
|
prompt "Timer driver"
|
2018-01-25 22:02:33 +01:00
|
|
|
default TIMER_NONE if !ARCH_X86
|
|
|
|
default TIMER_RDTSC if ARCH_X86
|
|
|
|
|
|
|
|
config TIMER_RDTSC
|
|
|
|
bool "x86 rdtsc"
|
|
|
|
depends on ARCH_X86
|
2016-07-27 12:41:04 +02:00
|
|
|
|
|
|
|
config TIMER_NONE
|
|
|
|
bool "None"
|
|
|
|
help
|
|
|
|
The timer driver is provided by the payload itself.
|
|
|
|
|
|
|
|
config TIMER_MCT
|
|
|
|
bool "Exynos MCT"
|
|
|
|
|
|
|
|
config TIMER_TEGRA_1US
|
|
|
|
bool "Tegra 1us"
|
|
|
|
|
|
|
|
config TIMER_IPQ806X
|
|
|
|
bool "Timer for ipq806x platforms"
|
|
|
|
|
|
|
|
config TIMER_IPQ40XX
|
|
|
|
bool "Timer for ipq40xx platforms"
|
|
|
|
help
|
|
|
|
This is the timer driver for QCA IPQ40xx based
|
|
|
|
platforms.
|
|
|
|
|
2018-04-24 23:07:26 +02:00
|
|
|
config TIMER_ARM64_ARCH
|
|
|
|
bool "Architecture Timer for ARM64 platforms"
|
|
|
|
help
|
|
|
|
The cntfrq register needs to have been pre-initialized.
|
|
|
|
|
2016-05-17 00:39:12 +02:00
|
|
|
config TIMER_RK3288
|
|
|
|
bool "Timer for Rockchip RK3288"
|
2016-07-27 12:41:04 +02:00
|
|
|
|
2016-05-17 00:39:12 +02:00
|
|
|
config TIMER_RK3399
|
|
|
|
bool "Timer for Rockchip RK3399"
|
2016-07-27 12:41:04 +02:00
|
|
|
|
|
|
|
config TIMER_IMG_PISTACHIO
|
|
|
|
bool "Timer for IMG Pistachio"
|
|
|
|
|
|
|
|
config TIMER_MTK
|
2019-04-08 05:01:40 +02:00
|
|
|
bool "Timer for MediaTek"
|
2016-07-27 12:41:04 +02:00
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
2016-05-17 00:39:12 +02:00
|
|
|
config TIMER_GENERIC_HZ
|
|
|
|
int "Generic Timer Frequency"
|
|
|
|
default 48000000 if TIMER_IPQ40XX
|
|
|
|
default 6250000 if TIMER_IPQ806X
|
|
|
|
default 24000000 if TIMER_MCT
|
|
|
|
default 13000000 if TIMER_MTK
|
|
|
|
default 24000000 if TIMER_RK3288
|
|
|
|
default 24000000 if TIMER_RK3399
|
|
|
|
default 1000000 if TIMER_TEGRA_1US
|
|
|
|
default 0
|
2016-07-27 12:41:04 +02:00
|
|
|
help
|
2016-05-17 00:39:12 +02:00
|
|
|
Clock frequency of generic time counter in Hertz. Leave at 0 to
|
|
|
|
disable when using a non-generic timer driver.
|
|
|
|
|
|
|
|
config TIMER_GENERIC_REG
|
|
|
|
hex "Generic Timer Register Address"
|
|
|
|
default 0x004A2000 if TIMER_IPQ40XX
|
|
|
|
default 0x0200A028 if TIMER_IPQ806X
|
|
|
|
default 0x101C0100 if TIMER_MCT
|
2019-04-08 05:01:40 +02:00
|
|
|
default 0x10008068 if TIMER_MTK
|
2016-05-17 00:39:12 +02:00
|
|
|
default 0xff810028 if TIMER_RK3288
|
|
|
|
default 0xff850008 if TIMER_RK3399
|
|
|
|
default 0x60005010 if TIMER_TEGRA_1US
|
|
|
|
default 0x0
|
|
|
|
help
|
|
|
|
Register address to read generic time counter from.
|
|
|
|
|
|
|
|
config TIMER_GENERIC_HIGH_REG
|
|
|
|
hex "Generic Timer High Register Address"
|
|
|
|
default 0x004A2004 if TIMER_IPQ40XX
|
|
|
|
default 0x101C0104 if TIMER_MCT
|
2019-04-08 05:01:40 +02:00
|
|
|
default 0x10008078 if TIMER_MTK
|
2016-05-17 00:39:12 +02:00
|
|
|
default 0xff81002C if TIMER_RK3288
|
|
|
|
default 0xff85000C if TIMER_RK3399
|
|
|
|
default 0x0
|
2016-07-27 12:41:04 +02:00
|
|
|
help
|
2016-05-17 00:39:12 +02:00
|
|
|
Register address to read high 32 bits of generic time counter from.
|
|
|
|
Leave at 0x0 for 32-bit counters.
|