1*5a729246SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2aace66b1SNishanth Menon /* 3aace66b1SNishanth Menon * Texas Instruments' Message Manager 4aace66b1SNishanth Menon * 5df227dc8SDave Gerlach * Copyright (C) 2015-2022 Texas Instruments Incorporated - https://www.ti.com/ 6aace66b1SNishanth Menon * Nishanth Menon 7aace66b1SNishanth Menon */ 8aace66b1SNishanth Menon 9aace66b1SNishanth Menon #ifndef TI_MSGMGR_H 10aace66b1SNishanth Menon #define TI_MSGMGR_H 11aace66b1SNishanth Menon 12df227dc8SDave Gerlach struct mbox_chan; 13df227dc8SDave Gerlach 14aace66b1SNishanth Menon /** 15aace66b1SNishanth Menon * struct ti_msgmgr_message - Message Manager structure 16aace66b1SNishanth Menon * @len: Length of data in the Buffer 17aace66b1SNishanth Menon * @buf: Buffer pointer 18df227dc8SDave Gerlach * @chan_rx: Expected channel for response, must be provided to use polled rx 19df227dc8SDave Gerlach * @timeout_rx_ms: Timeout value to use if polling for response 20aace66b1SNishanth Menon * 21aace66b1SNishanth Menon * This is the structure for data used in mbox_send_message 22aace66b1SNishanth Menon * the length of data buffer used depends on the SoC integration 23aace66b1SNishanth Menon * parameters - each message may be 64, 128 bytes long depending 24aace66b1SNishanth Menon * on SoC. Client is supposed to be aware of this. 25aace66b1SNishanth Menon */ 26aace66b1SNishanth Menon struct ti_msgmgr_message { 27aace66b1SNishanth Menon size_t len; 28aace66b1SNishanth Menon u8 *buf; 29df227dc8SDave Gerlach struct mbox_chan *chan_rx; 30df227dc8SDave Gerlach int timeout_rx_ms; 31aace66b1SNishanth Menon }; 32aace66b1SNishanth Menon 33aace66b1SNishanth Menon #endif /* TI_MSGMGR_H */ 34