Kconfig 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  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 ATMEL_ST
  117. bool
  118. select CLKSRC_OF
  119. select MFD_SYSCON
  120. config CLKSRC_METAG_GENERIC
  121. def_bool y if METAG
  122. help
  123. This option enables support for the Meta per-thread timers.
  124. config CLKSRC_EXYNOS_MCT
  125. def_bool y if ARCH_EXYNOS
  126. depends on !ARM64
  127. help
  128. Support for Multi Core Timer controller on Exynos SoCs.
  129. config CLKSRC_SAMSUNG_PWM
  130. bool
  131. help
  132. This is a new clocksource driver for the PWM timer found in
  133. Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
  134. for all devicetree enabled platforms. This driver will be
  135. needed only on systems that do not have the Exynos MCT available.
  136. config FSL_FTM_TIMER
  137. bool
  138. help
  139. Support for Freescale FlexTimer Module (FTM) timer.
  140. config VF_PIT_TIMER
  141. bool
  142. help
  143. Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
  144. config SYS_SUPPORTS_SH_CMT
  145. bool
  146. config MTK_TIMER
  147. select CLKSRC_OF
  148. select CLKSRC_MMIO
  149. bool
  150. config SYS_SUPPORTS_SH_MTU2
  151. bool
  152. config SYS_SUPPORTS_SH_TMU
  153. bool
  154. config SYS_SUPPORTS_EM_STI
  155. bool
  156. config SH_TIMER_CMT
  157. bool "Renesas CMT timer driver" if COMPILE_TEST
  158. depends on GENERIC_CLOCKEVENTS
  159. depends on HAS_IOMEM
  160. default SYS_SUPPORTS_SH_CMT
  161. help
  162. This enables build of a clocksource and clockevent driver for
  163. the Compare Match Timer (CMT) hardware available in 16/32/48-bit
  164. variants on a wide range of Mobile and Automotive SoCs from Renesas.
  165. config SH_TIMER_MTU2
  166. bool "Renesas MTU2 timer driver" if COMPILE_TEST
  167. depends on GENERIC_CLOCKEVENTS
  168. depends on HAS_IOMEM
  169. default SYS_SUPPORTS_SH_MTU2
  170. help
  171. This enables build of a clockevent driver for the Multi-Function
  172. Timer Pulse Unit 2 (MTU2) hardware available on SoCs from Renesas.
  173. This hardware comes with 16 bit-timer registers.
  174. config SH_TIMER_TMU
  175. bool "Renesas TMU timer driver" if COMPILE_TEST
  176. depends on GENERIC_CLOCKEVENTS
  177. depends on HAS_IOMEM
  178. default SYS_SUPPORTS_SH_TMU
  179. help
  180. This enables build of a clocksource and clockevent driver for
  181. the 32-bit Timer Unit (TMU) hardware available on a wide range
  182. SoCs from Renesas.
  183. config EM_TIMER_STI
  184. bool "Renesas STI timer driver" if COMPILE_TEST
  185. depends on GENERIC_CLOCKEVENTS && HAS_IOMEM
  186. default SYS_SUPPORTS_EM_STI
  187. help
  188. This enables build of a clocksource and clockevent driver for
  189. the 48-bit System Timer (STI) hardware available on a SoCs
  190. such as EMEV2 from former NEC Electronics.
  191. config CLKSRC_QCOM
  192. bool
  193. config CLKSRC_VERSATILE
  194. bool "ARM Versatile (Express) reference platforms clock source"
  195. depends on PLAT_VERSATILE && GENERIC_SCHED_CLOCK && !ARCH_USES_GETTIMEOFFSET
  196. select CLKSRC_OF
  197. default y if MFD_VEXPRESS_SYSREG
  198. help
  199. This option enables clock source based on free running
  200. counter available in the "System Registers" block of
  201. ARM Versatile, RealView and Versatile Express reference
  202. platforms.
  203. config CLKSRC_MIPS_GIC
  204. bool
  205. depends on MIPS_GIC
  206. select CLKSRC_OF
  207. config CLKSRC_PXA
  208. def_bool y if ARCH_PXA || ARCH_SA1100
  209. select CLKSRC_OF if USE_OF
  210. help
  211. This enables OST0 support available on PXA and SA-11x0
  212. platforms.
  213. endmenu