Kconfig 11 KB

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