Kconfig 5.8 KB

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