Kconfig 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. menuconfig MAILBOX
  2. bool "Mailbox Hardware Support"
  3. help
  4. Mailbox is a framework to control hardware communication between
  5. on-chip processors through queued messages and interrupt driven
  6. signals. Say Y if your platform supports hardware mailboxes.
  7. if MAILBOX
  8. config ARM_MHU
  9. tristate "ARM MHU Mailbox"
  10. depends on ARM_AMBA
  11. help
  12. Say Y here if you want to build the ARM MHU controller driver.
  13. The controller has 3 mailbox channels, the last of which can be
  14. used in Secure mode only.
  15. config IMX_MBOX
  16. tristate "i.MX Mailbox"
  17. depends on ARCH_MXC || COMPILE_TEST
  18. help
  19. Mailbox implementation for i.MX Messaging Unit (MU).
  20. config PHYTIUM_MBOX
  21. tristate "Phytium SoC Mailbox Support"
  22. depends on ARCH_PHYTIUM || COMPILE_TEST
  23. help
  24. This driver provides the support for the Phytium mailbox controller.
  25. config PLATFORM_MHU
  26. tristate "Platform MHU Mailbox"
  27. depends on OF
  28. depends on HAS_IOMEM
  29. help
  30. Say Y here if you want to build a platform specific variant MHU
  31. controller driver.
  32. The controller has a maximum of 3 mailbox channels, the last of
  33. which can be used in Secure mode only.
  34. config PL320_MBOX
  35. bool "ARM PL320 Mailbox"
  36. depends on ARM_AMBA
  37. help
  38. An implementation of the ARM PL320 Interprocessor Communication
  39. Mailbox (IPCM), tailored for the Calxeda Highbank. It is used to
  40. send short messages between Highbank's A9 cores and the EnergyCore
  41. Management Engine, primarily for cpufreq. Say Y here if you want
  42. to use the PL320 IPCM support.
  43. config OMAP2PLUS_MBOX
  44. tristate "OMAP2+ Mailbox framework support"
  45. depends on ARCH_OMAP2PLUS
  46. help
  47. Mailbox implementation for OMAP family chips with hardware for
  48. interprocessor communication involving DSP, IVA1.0 and IVA2 in
  49. OMAP2/3; or IPU, IVA HD and DSP in OMAP4/5. Say Y here if you
  50. want to use OMAP2+ Mailbox framework support.
  51. config OMAP_MBOX_KFIFO_SIZE
  52. int "Mailbox kfifo default buffer size (bytes)"
  53. depends on OMAP2PLUS_MBOX
  54. default 256
  55. help
  56. Specify the default size of mailbox's kfifo buffers (bytes).
  57. This can also be changed at runtime (via the mbox_kfifo_size
  58. module parameter).
  59. config ROCKCHIP_MBOX
  60. bool "Rockchip Soc Intergrated Mailbox Support"
  61. depends on ARCH_ROCKCHIP || COMPILE_TEST
  62. help
  63. This driver provides support for inter-processor communication
  64. between CPU cores and MCU processor on Some Rockchip SOCs.
  65. Please check it that the Soc you use have Mailbox hardware.
  66. Say Y here if you want to use the Rockchip Mailbox support.
  67. config PCC
  68. bool "Platform Communication Channel Driver"
  69. depends on ACPI
  70. default n
  71. help
  72. ACPI 5.0+ spec defines a generic mode of communication
  73. between the OS and a platform such as the BMC. This medium
  74. (PCC) is typically used by CPPC (ACPI CPU Performance management),
  75. RAS (ACPI reliability protocol) and MPST (ACPI Memory power
  76. states). Select this driver if your platform implements the
  77. PCC clients mentioned above.
  78. config ALTERA_MBOX
  79. tristate "Altera Mailbox"
  80. depends on HAS_IOMEM
  81. help
  82. An implementation of the Altera Mailbox soft core. It is used
  83. to send message between processors. Say Y here if you want to use the
  84. Altera mailbox support.
  85. config BCM2835_MBOX
  86. tristate "BCM2835 Mailbox"
  87. depends on ARCH_BCM2835
  88. help
  89. An implementation of the BCM2385 Mailbox. It is used to invoke
  90. the services of the Videocore. Say Y here if you want to use the
  91. BCM2835 Mailbox.
  92. config STI_MBOX
  93. tristate "STI Mailbox framework support"
  94. depends on ARCH_STI && OF
  95. help
  96. Mailbox implementation for STMicroelectonics family chips with
  97. hardware for interprocessor communication.
  98. config TI_MESSAGE_MANAGER
  99. tristate "Texas Instruments Message Manager Driver"
  100. depends on ARCH_KEYSTONE
  101. help
  102. An implementation of Message Manager slave driver for Keystone
  103. architecture SoCs from Texas Instruments. Message Manager is a
  104. communication entity found on few of Texas Instrument's keystone
  105. architecture SoCs. These may be used for communication between
  106. multiple processors within the SoC. Select this driver if your
  107. platform has support for the hardware block.
  108. config HI3660_MBOX
  109. tristate "Hi3660 Mailbox" if EXPERT
  110. depends on (ARCH_HISI || COMPILE_TEST)
  111. depends on OF
  112. default ARCH_HISI
  113. help
  114. An implementation of the hi3660 mailbox. It is used to send message
  115. between application processors and other processors/MCU/DSP. Select
  116. Y here if you want to use Hi3660 mailbox controller.
  117. config HI6220_MBOX
  118. tristate "Hi6220 Mailbox" if EXPERT
  119. depends on (ARCH_HISI || COMPILE_TEST)
  120. depends on OF
  121. default ARCH_HISI
  122. help
  123. An implementation of the hi6220 mailbox. It is used to send message
  124. between application processors and MCU. Say Y here if you want to
  125. build Hi6220 mailbox controller driver.
  126. config MAILBOX_TEST
  127. tristate "Mailbox Test Client"
  128. depends on OF
  129. depends on HAS_IOMEM
  130. help
  131. Test client to help with testing new Controller driver
  132. implementations.
  133. config QCOM_APCS_IPC
  134. tristate "Qualcomm APCS IPC driver"
  135. depends on ARCH_QCOM || COMPILE_TEST
  136. help
  137. Say y here to enable support for the APCS IPC mailbox driver,
  138. providing an interface for invoking the inter-process communication
  139. signals from the application processor to other masters.
  140. config TEGRA_HSP_MBOX
  141. bool "Tegra HSP (Hardware Synchronization Primitives) Driver"
  142. depends on ARCH_TEGRA
  143. help
  144. The Tegra HSP driver is used for the interprocessor communication
  145. between different remote processors and host processors on Tegra186
  146. and later SoCs. Say Y here if you want to have this support.
  147. If unsure say N.
  148. config XGENE_SLIMPRO_MBOX
  149. tristate "APM SoC X-Gene SLIMpro Mailbox Controller"
  150. depends on ARCH_XGENE
  151. help
  152. An implementation of the APM X-Gene Interprocessor Communication
  153. Mailbox (IPCM) between the ARM 64-bit cores and SLIMpro controller.
  154. It is used to send short messages between ARM64-bit cores and
  155. the SLIMpro Management Engine, primarily for PM. Say Y here if you
  156. want to use the APM X-Gene SLIMpro IPCM support.
  157. config BCM_PDC_MBOX
  158. tristate "Broadcom FlexSparx DMA Mailbox"
  159. depends on ARCH_BCM_IPROC || COMPILE_TEST
  160. help
  161. Mailbox implementation for the Broadcom FlexSparx DMA ring manager,
  162. which provides access to various offload engines on Broadcom
  163. SoCs, including FA2/FA+ on Northstar Plus and PDC on Northstar 2.
  164. config BCM_FLEXRM_MBOX
  165. tristate "Broadcom FlexRM Mailbox"
  166. depends on ARM64
  167. depends on ARCH_BCM_IPROC || COMPILE_TEST
  168. select GENERIC_MSI_IRQ_DOMAIN
  169. default m if ARCH_BCM_IPROC
  170. help
  171. Mailbox implementation of the Broadcom FlexRM ring manager,
  172. which provides access to various offload engines on Broadcom
  173. SoCs. Say Y here if you want to use the Broadcom FlexRM.
  174. config STM32_IPCC
  175. tristate "STM32 IPCC Mailbox"
  176. depends on MACH_STM32MP157
  177. help
  178. Mailbox implementation for STMicroelectonics STM32 family chips
  179. with hardware for Inter-Processor Communication Controller (IPCC)
  180. between processors. Say Y here if you want to have this support.
  181. config MTK_CMDQ_MBOX
  182. tristate "MediaTek CMDQ Mailbox Support"
  183. depends on ARCH_MEDIATEK || COMPILE_TEST
  184. select MTK_INFRACFG
  185. help
  186. Say yes here to add support for the MediaTek Command Queue (CMDQ)
  187. mailbox driver. The CMDQ is used to help read/write registers with
  188. critical time limitation, such as updating display configuration
  189. during the vblank.
  190. endif