xref: /openbmc/linux/drivers/mailbox/Kconfig (revision 65ca668f)
1menuconfig 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
8if MAILBOX
9
10config ARM_MHU
11	tristate "ARM MHU Mailbox"
12	depends on ARM_AMBA
13	help
14	  Say Y here if you want to build the ARM MHU controller driver.
15	  The controller has 3 mailbox channels, the last of which can be
16	  used in Secure mode only.
17
18config PL320_MBOX
19	bool "ARM PL320 Mailbox"
20	depends on ARM_AMBA
21	help
22	  An implementation of the ARM PL320 Interprocessor Communication
23	  Mailbox (IPCM), tailored for the Calxeda Highbank. It is used to
24	  send short messages between Highbank's A9 cores and the EnergyCore
25	  Management Engine, primarily for cpufreq. Say Y here if you want
26	  to use the PL320 IPCM support.
27
28config OMAP2PLUS_MBOX
29	tristate "OMAP2+ Mailbox framework support"
30	depends on ARCH_OMAP2PLUS
31	help
32	  Mailbox implementation for OMAP family chips with hardware for
33	  interprocessor communication involving DSP, IVA1.0 and IVA2 in
34	  OMAP2/3; or IPU, IVA HD and DSP in OMAP4/5. Say Y here if you
35	  want to use OMAP2+ Mailbox framework support.
36
37config OMAP_MBOX_KFIFO_SIZE
38	int "Mailbox kfifo default buffer size (bytes)"
39	depends on OMAP2PLUS_MBOX
40	default 256
41	help
42	  Specify the default size of mailbox's kfifo buffers (bytes).
43	  This can also be changed at runtime (via the mbox_kfifo_size
44	  module parameter).
45
46config ROCKCHIP_MBOX
47	bool "Rockchip Soc Intergrated Mailbox Support"
48	depends on ARCH_ROCKCHIP || COMPILE_TEST
49	help
50	  This driver provides support for inter-processor communication
51	  between CPU cores and MCU processor on Some Rockchip SOCs.
52	  Please check it that the Soc you use have Mailbox hardware.
53	  Say Y here if you want to use the Rockchip Mailbox support.
54
55config PCC
56	bool "Platform Communication Channel Driver"
57	depends on ACPI
58	default n
59	help
60	  ACPI 5.0+ spec defines a generic mode of communication
61	  between the OS and a platform such as the BMC. This medium
62	  (PCC) is typically used by CPPC (ACPI CPU Performance management),
63	  RAS (ACPI reliability protocol) and MPST (ACPI Memory power
64	  states). Select this driver if your platform implements the
65	  PCC clients mentioned above.
66
67config ALTERA_MBOX
68	tristate "Altera Mailbox"
69	depends on HAS_IOMEM
70	help
71	  An implementation of the Altera Mailbox soft core. It is used
72	  to send message between processors. Say Y here if you want to use the
73	  Altera mailbox support.
74
75config BCM2835_MBOX
76	tristate "BCM2835 Mailbox"
77	depends on ARCH_BCM2835
78	help
79	  An implementation of the BCM2385 Mailbox.  It is used to invoke
80	  the services of the Videocore. Say Y here if you want to use the
81	  BCM2835 Mailbox.
82
83config STI_MBOX
84	tristate "STI Mailbox framework support"
85	depends on ARCH_STI && OF
86	help
87	  Mailbox implementation for STMicroelectonics family chips with
88	  hardware for interprocessor communication.
89
90config TI_MESSAGE_MANAGER
91	tristate "Texas Instruments Message Manager Driver"
92	depends on ARCH_KEYSTONE
93	help
94	  An implementation of Message Manager slave driver for Keystone
95	  architecture SoCs from Texas Instruments. Message Manager is a
96	  communication entity found on few of Texas Instrument's keystone
97	  architecture SoCs. These may be used for communication between
98	  multiple processors within the SoC. Select this driver if your
99	  platform has support for the hardware block.
100
101config HI6220_MBOX
102	tristate "Hi6220 Mailbox"
103	depends on ARCH_HISI
104	help
105	  An implementation of the hi6220 mailbox. It is used to send message
106	  between application processors and MCU. Say Y here if you want to
107	  build Hi6220 mailbox controller driver.
108
109config MAILBOX_TEST
110	tristate "Mailbox Test Client"
111	depends on OF
112	depends on HAS_IOMEM
113	help
114	  Test client to help with testing new Controller driver
115	  implementations.
116
117config XGENE_SLIMPRO_MBOX
118	tristate "APM SoC X-Gene SLIMpro Mailbox Controller"
119	depends on ARCH_XGENE
120	help
121	  An implementation of the APM X-Gene Interprocessor Communication
122	  Mailbox (IPCM) between the ARM 64-bit cores and SLIMpro controller.
123	  It is used to send short messages between ARM64-bit cores and
124	  the SLIMpro Management Engine, primarily for PM. Say Y here if you
125	  want to use the APM X-Gene SLIMpro IPCM support.
126
127config BCM_PDC_MBOX
128	tristate "Broadcom PDC Mailbox"
129	depends on ARM64 || COMPILE_TEST
130	default ARCH_BCM_IPROC
131	help
132	  Mailbox implementation for the Broadcom PDC ring manager,
133	  which provides access to various offload engines on Broadcom
134	  SoCs. Say Y here if you want to use the Broadcom PDC.
135endif
136