1menu "Clock Source drivers" 2 depends on !ARCH_USES_GETTIMEOFFSET 3 4config CLKSRC_OF 5 bool 6 select CLKSRC_PROBE 7 8config CLKSRC_ACPI 9 bool 10 select CLKSRC_PROBE 11 12config CLKSRC_PROBE 13 bool 14 15config CLKSRC_I8253 16 bool 17 18config CLKEVT_I8253 19 bool 20 21config I8253_LOCK 22 bool 23 24config CLKBLD_I8253 25 def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK 26 27config CLKSRC_MMIO 28 bool 29 30config DIGICOLOR_TIMER 31 bool 32 33config DW_APB_TIMER 34 bool 35 36config DW_APB_TIMER_OF 37 bool 38 select DW_APB_TIMER 39 select CLKSRC_OF 40 41config ROCKCHIP_TIMER 42 bool 43 select CLKSRC_OF 44 45config ARMADA_370_XP_TIMER 46 bool 47 select CLKSRC_OF 48 49config MESON6_TIMER 50 bool 51 select CLKSRC_MMIO 52 53config ORION_TIMER 54 select CLKSRC_OF 55 select CLKSRC_MMIO 56 bool 57 58config SUN4I_TIMER 59 select CLKSRC_MMIO 60 bool 61 62config SUN5I_HSTIMER 63 select CLKSRC_MMIO 64 bool 65 66config TEGRA_TIMER 67 bool 68 69config VT8500_TIMER 70 bool 71 72config CADENCE_TTC_TIMER 73 bool 74 75config ASM9260_TIMER 76 bool 77 select CLKSRC_MMIO 78 select CLKSRC_OF 79 80config CLKSRC_NOMADIK_MTU 81 bool 82 depends on (ARCH_NOMADIK || ARCH_U8500) 83 select CLKSRC_MMIO 84 help 85 Support for Multi Timer Unit. MTU provides access 86 to multiple interrupt generating programmable 87 32-bit free running decrementing counters. 88 89config CLKSRC_NOMADIK_MTU_SCHED_CLOCK 90 bool 91 depends on CLKSRC_NOMADIK_MTU 92 help 93 Use the Multi Timer Unit as the sched_clock. 94 95config CLKSRC_DBX500_PRCMU 96 bool "Clocksource PRCMU Timer" 97 depends on UX500_SOC_DB8500 98 default y 99 help 100 Use the always on PRCMU Timer as clocksource 101 102config CLKSRC_DBX500_PRCMU_SCHED_CLOCK 103 bool "Clocksource PRCMU Timer sched_clock" 104 depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK) 105 default y 106 help 107 Use the always on PRCMU Timer as sched_clock 108 109config CLKSRC_EFM32 110 bool "Clocksource for Energy Micro's EFM32 SoCs" if !ARCH_EFM32 111 depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST) 112 select CLKSRC_MMIO 113 default ARCH_EFM32 114 help 115 Support to use the timers of EFM32 SoCs as clock source and clock 116 event device. 117 118config CLKSRC_LPC32XX 119 bool 120 select CLKSRC_MMIO 121 select CLKSRC_OF 122 123config CLKSRC_PISTACHIO 124 bool 125 select CLKSRC_OF 126 127config CLKSRC_TI_32K 128 bool "Texas Instruments 32.768 Hz Clocksource" if COMPILE_TEST 129 depends on GENERIC_SCHED_CLOCK 130 select CLKSRC_OF if OF 131 help 132 This option enables support for Texas Instruments 32.768 Hz clocksource 133 available on many OMAP-like platforms. 134 135config CLKSRC_STM32 136 bool "Clocksource for STM32 SoCs" if !ARCH_STM32 137 depends on OF && ARM && (ARCH_STM32 || COMPILE_TEST) 138 select CLKSRC_MMIO 139 140config ARM_ARCH_TIMER 141 bool 142 select CLKSRC_OF if OF 143 select CLKSRC_ACPI if ACPI 144 145config ARM_ARCH_TIMER_EVTSTREAM 146 bool "Support for ARM architected timer event stream generation" 147 default y if ARM_ARCH_TIMER 148 depends on ARM_ARCH_TIMER 149 help 150 This option enables support for event stream generation based on 151 the ARM architected timer. It is used for waking up CPUs executing 152 the wfe instruction at a frequency represented as a power-of-2 153 divisor of the clock rate. 154 The main use of the event stream is wfe-based timeouts of userspace 155 locking implementations. It might also be useful for imposing timeout 156 on wfe to safeguard against any programming errors in case an expected 157 event is not generated. 158 This must be disabled for hardware validation purposes to detect any 159 hardware anomalies of missing events. 160 161config ARM_ARCH_TIMER_VCT_ACCESS 162 bool "Support for ARM architected timer virtual counter access in userspace" 163 default !ARM64 164 depends on ARM_ARCH_TIMER 165 help 166 This option enables support for reading the ARM architected timer's 167 virtual counter in userspace. 168 169config ARM_GLOBAL_TIMER 170 bool 171 select CLKSRC_OF if OF 172 help 173 This options enables support for the ARM global timer unit 174 175config ARM_TIMER_SP804 176 bool "Support for Dual Timer SP804 module" 177 depends on GENERIC_SCHED_CLOCK && CLKDEV_LOOKUP 178 select CLKSRC_MMIO 179 select CLKSRC_OF if OF 180 181config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 182 bool 183 depends on ARM_GLOBAL_TIMER 184 default y 185 help 186 Use ARM global timer clock source as sched_clock 187 188config ARMV7M_SYSTICK 189 bool 190 select CLKSRC_OF if OF 191 select CLKSRC_MMIO 192 help 193 This options enables support for the ARMv7M system timer unit 194 195config ATMEL_PIT 196 select CLKSRC_OF if OF 197 def_bool SOC_AT91SAM9 || SOC_SAMA5 198 199config ATMEL_ST 200 bool 201 select CLKSRC_OF 202 select MFD_SYSCON 203 204config CLKSRC_METAG_GENERIC 205 def_bool y if METAG 206 help 207 This option enables support for the Meta per-thread timers. 208 209config CLKSRC_EXYNOS_MCT 210 def_bool y if ARCH_EXYNOS 211 depends on !ARM64 212 help 213 Support for Multi Core Timer controller on Exynos SoCs. 214 215config CLKSRC_SAMSUNG_PWM 216 bool 217 help 218 This is a new clocksource driver for the PWM timer found in 219 Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver 220 for all devicetree enabled platforms. This driver will be 221 needed only on systems that do not have the Exynos MCT available. 222 223config FSL_FTM_TIMER 224 bool 225 help 226 Support for Freescale FlexTimer Module (FTM) timer. 227 228config VF_PIT_TIMER 229 bool 230 help 231 Support for Period Interrupt Timer on Freescale Vybrid Family SoCs. 232 233config SYS_SUPPORTS_SH_CMT 234 bool 235 236config MTK_TIMER 237 select CLKSRC_OF 238 select CLKSRC_MMIO 239 bool 240 241config SYS_SUPPORTS_SH_MTU2 242 bool 243 244config SYS_SUPPORTS_SH_TMU 245 bool 246 247config SYS_SUPPORTS_EM_STI 248 bool 249 250config SH_TIMER_CMT 251 bool "Renesas CMT timer driver" if COMPILE_TEST 252 depends on GENERIC_CLOCKEVENTS 253 depends on HAS_IOMEM 254 default SYS_SUPPORTS_SH_CMT 255 help 256 This enables build of a clocksource and clockevent driver for 257 the Compare Match Timer (CMT) hardware available in 16/32/48-bit 258 variants on a wide range of Mobile and Automotive SoCs from Renesas. 259 260config SH_TIMER_MTU2 261 bool "Renesas MTU2 timer driver" if COMPILE_TEST 262 depends on GENERIC_CLOCKEVENTS 263 depends on HAS_IOMEM 264 default SYS_SUPPORTS_SH_MTU2 265 help 266 This enables build of a clockevent driver for the Multi-Function 267 Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas. 268 This hardware comes with 16 bit-timer registers. 269 270config SH_TIMER_TMU 271 bool "Renesas TMU timer driver" if COMPILE_TEST 272 depends on GENERIC_CLOCKEVENTS 273 depends on HAS_IOMEM 274 default SYS_SUPPORTS_SH_TMU 275 help 276 This enables build of a clocksource and clockevent driver for 277 the 32-bit Timer Unit (TMU) hardware available on a wide range 278 SoCs from Renesas. 279 280config EM_TIMER_STI 281 bool "Renesas STI timer driver" if COMPILE_TEST 282 depends on GENERIC_CLOCKEVENTS && HAS_IOMEM 283 default SYS_SUPPORTS_EM_STI 284 help 285 This enables build of a clocksource and clockevent driver for 286 the 48-bit System Timer (STI) hardware available on a SoCs 287 such as EMEV2 from former NEC Electronics. 288 289config CLKSRC_QCOM 290 bool 291 292config CLKSRC_VERSATILE 293 bool "ARM Versatile (Express) reference platforms clock source" 294 depends on PLAT_VERSATILE && GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET 295 select CLKSRC_OF 296 default y if MFD_VEXPRESS_SYSREG 297 help 298 This option enables clock source based on free running 299 counter available in the "System Registers" block of 300 ARM Versatile, RealView and Versatile Express reference 301 platforms. 302 303config CLKSRC_MIPS_GIC 304 bool 305 depends on MIPS_GIC 306 select CLKSRC_OF 307 308config CLKSRC_TANGO_XTAL 309 bool 310 select CLKSRC_OF 311 312config CLKSRC_PXA 313 def_bool y if ARCH_PXA || ARCH_SA1100 314 select CLKSRC_OF if OF 315 help 316 This enables OST0 support available on PXA and SA-11x0 317 platforms. 318 319config H8300_TMR16 320 bool 321 322config H8300_TPU 323 bool 324 325config CLKSRC_IMX_GPT 326 bool "Clocksource using i.MX GPT" if COMPILE_TEST 327 depends on ARM && CLKDEV_LOOKUP 328 select CLKSRC_MMIO 329 330config CLKSRC_ST_LPC 331 bool 332 depends on ARCH_STI 333 select CLKSRC_OF if OF 334 help 335 Enable this option to use the Low Power controller timer 336 as clocksource. 337 338endmenu 339