
On 14 May 2016 at 13:33, Simon Glass sjg@chromium.org wrote:
On 13 May 2016 at 15:50, Stephen Warren swarren@wwwdotorg.org wrote:
From: Stephen Warren swarren@nvidia.com
A mailbox is a hardware mechanism for transferring small message and/or notifications between the CPU on which U-Boot runs and some other device such as an auxilliary CPU running firmware or a hardware module.
This patch defines a standard API that connects mailbox clients to mailbox providers (drivers). Initially, DT is the only supported method for connecting the two.
The DT binding specification (mailbox.txt) was taken from Linux kernel v4.5's Documentation/devicetree/bindings/mailbox/mailbox.txt.
Signed-off-by: Stephen Warren swarren@nvidia.com
v2:
- Use timer_get_us() rather than get_ticks() and conversion code.
- Explicitly mention that mailbox messages are fixed size.
- Spell out IPC.
- Fix typos.
I'll send a sandbox test for this as a separate patch.
doc/device-tree-bindings/mailbox/mailbox.txt | 32 ++++++ drivers/Kconfig | 2 + drivers/Makefile | 1 + drivers/mailbox/Kconfig | 13 +++ drivers/mailbox/Makefile | 5 + drivers/mailbox/mailbox-uclass.c | 145 ++++++++++++++++++++++++++ include/dm/uclass-id.h | 1 + include/mailbox_client.h | 149 +++++++++++++++++++++++++++ include/mailbox_uclass.h | 83 +++++++++++++++ 9 files changed, 431 insertions(+) create mode 100644 doc/device-tree-bindings/mailbox/mailbox.txt create mode 100644 drivers/mailbox/Kconfig create mode 100644 drivers/mailbox/Makefile create mode 100644 drivers/mailbox/mailbox-uclass.c create mode 100644 include/mailbox_client.h create mode 100644 include/mailbox_uclass.h
Acked-by: Simon Glass sjg@chromium.org
Applied to u-boot-dm, thanks!