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