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