soc: apple: Add RTKit IPC library
authorSven Peter <sven@svenpeter.dev>
Sun, 1 May 2022 14:55:06 +0000 (16:55 +0200)
committerSven Peter <sven@svenpeter.dev>
Sun, 1 May 2022 14:55:06 +0000 (16:55 +0200)
commit9bd1d9a0d8bb1a549831fd98fcc3105960f7068b
treede48d7f470c432da0cd9f0f585c5319bb059cac7
parentcbb0f00131e48f38db9eda67e0f731504404567b
soc: apple: Add RTKit IPC library

Apple SoCs such as the M1 come with multiple embedded co-processors
running proprietary firmware. Communication with those is established
over a simple mailbox using the RTKit IPC protocol.

This cannot be implemented inside the mailbox subsystem since on top
of communication over channels we also need support for starting,
hibernating and resetting these co-processors. We also need to
handle shared memory allocations differently depending on the
co-processor and don't want to split that across multiple drivers.

Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sven Peter <sven@svenpeter.dev>
drivers/soc/apple/Kconfig
drivers/soc/apple/Makefile
drivers/soc/apple/rtkit-crashlog.c [new file with mode: 0644]
drivers/soc/apple/rtkit-internal.h [new file with mode: 0644]
drivers/soc/apple/rtkit.c [new file with mode: 0644]
include/linux/soc/apple/rtkit.h [new file with mode: 0644]