blob: 828e13256c023b7f5341fcf6cf512dcc94ca4b8e [file] [log] [blame]
Suman Annaa7084c32020-03-24 13:00:35 +02001/* SPDX-License-Identifier: BSD-3-Clause */
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +02002/*
3 * Remote processor messaging
4 *
Suman Anna9077ac12020-03-24 13:00:31 +02005 * Copyright (C) 2011-2020 Texas Instruments, Inc.
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +02006 * Copyright (C) 2011 Google, Inc.
7 * All rights reserved.
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +02008 */
9
10#ifndef _OMAP_RPMSG_H
11#define _OMAP_RPMSG_H
12
13/*
14 * enum - Predefined Mailbox Messages
15 *
16 * @RP_MBOX_READY: informs the M3's that we're up and running. this is
17 * part of the init sequence sent that the M3 expects to see immediately
18 * after it is booted.
19 *
20 * @RP_MBOX_PENDING_MSG: informs the receiver that there is an inbound
21 * message waiting in its own receive-side vring. please note that currently
22 * this message is optional: alternatively, one can explicitly send the index
23 * of the triggered virtqueue itself. the preferred approach will be decided
24 * as we progress and experiment with those two different approaches.
25 *
26 * @RP_MBOX_CRASH: this message is sent if BIOS crashes
27 *
28 * @RP_MBOX_ECHO_REQUEST: a mailbox-level "ping" message.
29 *
30 * @RP_MBOX_ECHO_REPLY: a mailbox-level reply to a "ping"
31 *
32 * @RP_MBOX_ABORT_REQUEST: a "please crash" request, used for testing the
33 * recovery mechanism (to some extent).
Suman Anna8135d1d2020-03-24 13:00:29 +020034 *
Suman Anna9077ac12020-03-24 13:00:31 +020035 * @RP_MBOX_SUSPEND_AUTO: auto suspend request for the remote processor
36 *
37 * @RP_MBOX_SUSPEND_SYSTEM: system suspend request for the remote processor
38 *
39 * @RP_MBOX_SUSPEND_ACK: successful response from remote processor for a
40 * suspend request
41 *
42 * @RP_MBOX_SUSPEND_CANCEL: a cancel suspend response from a remote processor
43 * on a suspend request
44 *
Suman Anna8135d1d2020-03-24 13:00:29 +020045 * Introduce new message definitions if any here.
46 *
47 * @RP_MBOX_END_MSG: Indicates end of known/defined messages from remote core
48 * This should be the last definition.
49 *
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +020050 */
51enum omap_rp_mbox_messages {
52 RP_MBOX_READY = 0xFFFFFF00,
53 RP_MBOX_PENDING_MSG = 0xFFFFFF01,
54 RP_MBOX_CRASH = 0xFFFFFF02,
55 RP_MBOX_ECHO_REQUEST = 0xFFFFFF03,
56 RP_MBOX_ECHO_REPLY = 0xFFFFFF04,
57 RP_MBOX_ABORT_REQUEST = 0xFFFFFF05,
Suman Anna9077ac12020-03-24 13:00:31 +020058 RP_MBOX_SUSPEND_AUTO = 0xFFFFFF10,
59 RP_MBOX_SUSPEND_SYSTEM = 0xFFFFFF11,
60 RP_MBOX_SUSPEND_ACK = 0xFFFFFF12,
61 RP_MBOX_SUSPEND_CANCEL = 0xFFFFFF13,
62 RP_MBOX_END_MSG = 0xFFFFFF14,
Ohad Ben-Cohen34ed5a32011-10-20 18:53:35 +020063};
64
65#endif /* _OMAP_RPMSG_H */