162306a36Sopenharmony_ci/* SPDX-License-Identifier: BSD-3-Clause */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Remote processor messaging 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (C) 2011-2020 Texas Instruments, Inc. 662306a36Sopenharmony_ci * Copyright (C) 2011 Google, Inc. 762306a36Sopenharmony_ci * All rights reserved. 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#ifndef _OMAP_RPMSG_H 1162306a36Sopenharmony_ci#define _OMAP_RPMSG_H 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci/* 1462306a36Sopenharmony_ci * enum - Predefined Mailbox Messages 1562306a36Sopenharmony_ci * 1662306a36Sopenharmony_ci * @RP_MBOX_READY: informs the M3's that we're up and running. this is 1762306a36Sopenharmony_ci * part of the init sequence sent that the M3 expects to see immediately 1862306a36Sopenharmony_ci * after it is booted. 1962306a36Sopenharmony_ci * 2062306a36Sopenharmony_ci * @RP_MBOX_PENDING_MSG: informs the receiver that there is an inbound 2162306a36Sopenharmony_ci * message waiting in its own receive-side vring. please note that currently 2262306a36Sopenharmony_ci * this message is optional: alternatively, one can explicitly send the index 2362306a36Sopenharmony_ci * of the triggered virtqueue itself. the preferred approach will be decided 2462306a36Sopenharmony_ci * as we progress and experiment with those two different approaches. 2562306a36Sopenharmony_ci * 2662306a36Sopenharmony_ci * @RP_MBOX_CRASH: this message is sent if BIOS crashes 2762306a36Sopenharmony_ci * 2862306a36Sopenharmony_ci * @RP_MBOX_ECHO_REQUEST: a mailbox-level "ping" message. 2962306a36Sopenharmony_ci * 3062306a36Sopenharmony_ci * @RP_MBOX_ECHO_REPLY: a mailbox-level reply to a "ping" 3162306a36Sopenharmony_ci * 3262306a36Sopenharmony_ci * @RP_MBOX_ABORT_REQUEST: a "please crash" request, used for testing the 3362306a36Sopenharmony_ci * recovery mechanism (to some extent). 3462306a36Sopenharmony_ci * 3562306a36Sopenharmony_ci * @RP_MBOX_SUSPEND_AUTO: auto suspend request for the remote processor 3662306a36Sopenharmony_ci * 3762306a36Sopenharmony_ci * @RP_MBOX_SUSPEND_SYSTEM: system suspend request for the remote processor 3862306a36Sopenharmony_ci * 3962306a36Sopenharmony_ci * @RP_MBOX_SUSPEND_ACK: successful response from remote processor for a 4062306a36Sopenharmony_ci * suspend request 4162306a36Sopenharmony_ci * 4262306a36Sopenharmony_ci * @RP_MBOX_SUSPEND_CANCEL: a cancel suspend response from a remote processor 4362306a36Sopenharmony_ci * on a suspend request 4462306a36Sopenharmony_ci * 4562306a36Sopenharmony_ci * Introduce new message definitions if any here. 4662306a36Sopenharmony_ci * 4762306a36Sopenharmony_ci * @RP_MBOX_END_MSG: Indicates end of known/defined messages from remote core 4862306a36Sopenharmony_ci * This should be the last definition. 4962306a36Sopenharmony_ci * 5062306a36Sopenharmony_ci */ 5162306a36Sopenharmony_cienum omap_rp_mbox_messages { 5262306a36Sopenharmony_ci RP_MBOX_READY = 0xFFFFFF00, 5362306a36Sopenharmony_ci RP_MBOX_PENDING_MSG = 0xFFFFFF01, 5462306a36Sopenharmony_ci RP_MBOX_CRASH = 0xFFFFFF02, 5562306a36Sopenharmony_ci RP_MBOX_ECHO_REQUEST = 0xFFFFFF03, 5662306a36Sopenharmony_ci RP_MBOX_ECHO_REPLY = 0xFFFFFF04, 5762306a36Sopenharmony_ci RP_MBOX_ABORT_REQUEST = 0xFFFFFF05, 5862306a36Sopenharmony_ci RP_MBOX_SUSPEND_AUTO = 0xFFFFFF10, 5962306a36Sopenharmony_ci RP_MBOX_SUSPEND_SYSTEM = 0xFFFFFF11, 6062306a36Sopenharmony_ci RP_MBOX_SUSPEND_ACK = 0xFFFFFF12, 6162306a36Sopenharmony_ci RP_MBOX_SUSPEND_CANCEL = 0xFFFFFF13, 6262306a36Sopenharmony_ci RP_MBOX_END_MSG = 0xFFFFFF14, 6362306a36Sopenharmony_ci}; 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci#endif /* _OMAP_RPMSG_H */ 66