| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329 |
- menu "Timer Support"
- config TIMER
- bool "Enable driver model for timer drivers"
- depends on DM
- help
- Enable driver model for timer access. It uses the same API as
- lib/time.c, but now implemented by the uclass. The first timer
- will be used. The timer is usually a 32 bits free-running up
- counter. There may be no real tick, and no timer interrupt.
- config SPL_TIMER
- bool "Enable driver model for timer drivers in SPL"
- depends on TIMER && SPL
- help
- Enable support for timer drivers in SPL. These can be used to get
- a timer value when in SPL, or perhaps for implementing a delay
- function. This enables the drivers in drivers/timer as part of an
- SPL build.
- config TPL_TIMER
- bool "Enable driver model for timer drivers in TPL"
- depends on TIMER && TPL
- help
- Enable support for timer drivers in TPL. These can be used to get
- a timer value when in TPL, or perhaps for implementing a delay
- function. This enables the drivers in drivers/timer as part of an
- TPL build.
- config VPL_TIMER
- bool "Enable driver model for timer drivers in VPL"
- depends on TIMER && VPL
- default y if TPL_TIMER
- help
- Enable support for timer drivers in VPL. These can be used to get
- a timer value when in VPL, or perhaps for implementing a delay
- function. This enables the drivers in drivers/timer as part of an
- TPL build.
- config TIMER_EARLY
- bool "Allow timer to be used early in U-Boot"
- depends on TIMER
- # initr_bootstage() requires a timer and is called before initr_dm()
- # so only the early timer is available
- default y if X86 && BOOTSTAGE
- help
- In some cases the timer must be accessible before driver model is
- active. Examples include when using CONFIG_TRACE to trace U-Boot's
- execution before driver model is set up. Enable this option to
- use an early timer. These functions must be supported by your timer
- driver: timer_early_get_count() and timer_early_get_rate().
- config ALTERA_TIMER
- bool "Altera timer support"
- depends on TIMER
- help
- Select this to enable a timer for Altera devices. Please find
- details on the "Embedded Peripherals IP User Guide" of Altera.
- config ANDES_PLMT_TIMER
- bool
- depends on RISCV_MMODE || SPL_RISCV_MMODE
- help
- The Andes PLMT block holds memory-mapped mtime register
- associated with timer tick.
- config ARC_TIMER
- bool "ARC timer support"
- depends on TIMER && ARC && CLK
- help
- Select this to enable built-in ARC timers.
- ARC cores may have up to 2 built-in timers: timer0 and timer1,
- usually at least one of them exists. Either of them is supported
- in U-Boot.
- config ARM_TWD_TIMER
- bool "ARM timer watchdog (TWD) timer support"
- depends on TIMER && CLK
- help
- Select this to enable support for the ARM global timer watchdog timer.
- config AST_TIMER
- bool "Aspeed ast2400/ast2500 timer support"
- depends on TIMER
- default y if ARCH_ASPEED
- help
- Select this to enable timer for Aspeed ast2400/ast2500 devices.
- This is a simple sys timer driver, it is compatible with lib/time.c,
- but does not support any interrupts. Even though SoC has 8 hardware
- counters, they are all treated as a single device by this driver.
- This is mostly because they all share several registers which
- makes it difficult to completely separate them.
- config ATCPIT100_TIMER
- bool "ATCPIT100 timer support"
- depends on TIMER
- help
- Select this to enable a ATCPIT100 timer which will be embedded
- in AE3XX, AE250 boards.
- config ATMEL_PIT_TIMER
- bool "Atmel periodic interval timer support"
- depends on TIMER
- help
- Select this to enable a periodic interval timer for Atmel devices,
- it is designed to offer maximum accuracy and efficient management,
- even for systems with long response time.
- config SPL_ATMEL_PIT_TIMER
- bool "Atmel periodic interval timer support in SPL"
- depends on SPL_TIMER
- help
- Select this to enable a periodic interval timer for Atmel devices,
- it is designed to offer maximum accuracy and efficient management,
- even for systems with long response time.
- Select this to be available in SPL.
- config ATMEL_TCB_TIMER
- bool "Atmel timer counter support"
- depends on TIMER
- depends on ARCH_AT91
- help
- Select this to enable the use of the timer counter as a monotonic
- counter.
- config SPL_ATMEL_TCB_TIMER
- bool "Atmel timer counter support in SPL"
- depends on SPL_TIMER
- depends on ARCH_AT91
- help
- Select this to enable the use of the timer counter as a monotonic
- counter in SPL.
- config CADENCE_TTC_TIMER
- bool "Cadence TTC (Triple Timer Counter)"
- depends on TIMER
- help
- Enables support for the cadence ttc driver. This driver is present
- on Xilinx Zynq and ZynqMP SoCs.
- config DESIGNWARE_APB_TIMER
- bool "Designware APB Timer"
- depends on TIMER
- help
- Enables support for the Designware APB Timer driver. This timer is
- present on Altera SoCFPGA SoCs.
- config FTTMR010_TIMER
- bool "Faraday Technology timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- devices using Faraday Technology's IP.
- config GXP_TIMER
- bool "HPE GXP Timer"
- depends on TIMER
- help
- Enables support for the GXP Timer driver. This timer is
- present on HPE GXP SoCs.
- config MPC83XX_TIMER
- bool "MPC83xx timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- devices based on the MPC83xx family of SoCs.
- config RENESAS_OSTM_TIMER
- bool "Renesas RZ/A1 R7S72100 OSTM Timer"
- depends on TIMER
- help
- Enables support for the Renesas OSTM Timer driver.
- This timer is present on Renesas RZ/A1 R7S72100 SoCs.
- config X86_TSC_TIMER_FREQ
- int "x86 TSC timer frequency in Hz"
- depends on X86_TSC_TIMER
- default 1000000000
- help
- Sets the estimated CPU frequency in Hz when TSC is used as the
- early timer and the frequency can neither be calibrated via some
- hardware ways, nor got from device tree at the time when device
- tree is not available yet.
- config NOMADIK_MTU_TIMER
- bool "Nomadik MTU Timer"
- depends on TIMER
- help
- Enables support for the Nomadik Multi Timer Unit (MTU),
- used in ST-Ericsson Ux500 SoCs.
- The MTU provides 4 decrementing free-running timers.
- At the moment, only the first timer is used by the driver.
- config NPCM_TIMER
- bool "Nuvoton NPCM timer support"
- depends on TIMER
- help
- Select this to enable a timer on Nuvoton NPCM SoCs.
- NPCM timer module has 5 down-counting timers, only the first timer
- is used to implement timer ops. No support for early timer and
- boot timer.
- config OMAP_TIMER
- bool "Omap timer support"
- depends on TIMER
- help
- Select this to enable an timer for Omap devices.
- config ORION_TIMER
- bool "Orion timer support"
- depends on TIMER
- default y if ARCH_KIRKWOOD || (ARCH_MVEBU && ARMADA_32BIT)
- select TIMER_EARLY if ARCH_MVEBU
- help
- Select this to enable an timer for Orion and Armada devices
- like Armada XP etc.
- config RISCV_TIMER
- bool "RISC-V timer support"
- depends on TIMER && RISCV
- help
- Select this to enable support for a generic RISC-V S-Mode timer
- driver.
- config ROCKCHIP_TIMER
- bool "Rockchip timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- Rockchip devices.
- config SANDBOX_TIMER
- bool "Sandbox timer support"
- depends on SANDBOX && TIMER
- help
- Select this to enable an emulated timer for sandbox. It gets
- time from host os.
- config ARM_GLOBAL_TIMER
- bool "ARM Cortex A9 global timer support"
- depends on TIMER
- depends on ARM
- default y if ARCH_STI
- help
- Select this to enable global timer found on ARM Cortex A9
- based devices.
- config SP804_TIMER
- bool "ARM SP804 timer support"
- depends on TIMER
- help
- ARM SP804 dual timer IP support
- config STM32_TIMER
- bool "STM32 timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- STM32 devices.
- config TEGRA_TIMER
- bool "Tegra timer support"
- depends on TIMER
- select TIMER_EARLY
- help
- Select this to enable support for the timer found on
- Tegra devices.
- config X86_TSC_TIMER
- bool "x86 Time-Stamp Counter (TSC) timer support"
- depends on TIMER && X86
- help
- Select this to enable Time-Stamp Counter (TSC) timer for x86.
- config X86_TSC_READ_BASE
- bool "Read the TSC timer base on start-up"
- depends on X86_TSC_TIMER
- help
- On x86 platforms the TSC timer tick starts at the value 0 on reset.
- This it makes no sense to read the timer on boot and use that as the
- base, since we will miss some time taken to load U-Boot, etc. This
- delay is controlled by the SoC and we cannot reduce it, but for
- bootstage we want to record the time since reset as accurately as
- possible.
- The only exception is when U-Boot is used as a secondary bootloader,
- where this option should be enabled.
- config TPL_X86_TSC_TIMER_NATIVE
- bool "x86 TSC timer uses native calibration"
- depends on TPL && X86_TSC_TIMER
- help
- Selects native timer calibration for TPL and don't include the other
- methods in the code. This helps to reduce code size in TPL and works
- on fairly modern Intel chips. Code-size reductions is about 700
- bytes.
- config MTK_TIMER
- bool "MediaTek timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- MediaTek devices.
- config MCHP_PIT64B_TIMER
- bool "Microchip 64-bit periodic interval timer support"
- depends on TIMER
- help
- Select this to enable support for Microchip 64-bit periodic
- interval timer.
- config IMX_GPT_TIMER
- bool "NXP i.MX GPT timer support"
- depends on TIMER
- help
- Select this to enable support for the timer found on
- NXP i.MX devices.
- config XILINX_TIMER
- bool "Xilinx timer support"
- depends on TIMER
- select REGMAP
- select SPL_REGMAP if SPL
- help
- Select this to enable support for the timer found on
- any Xilinx boards (axi timer).
- endmenu
|