1 /*
2  * Copyright 2017, NXP
3  * All rights reserved.
4  *
5  *
6  * SPDX-License-Identifier: BSD-3-Clause
7  */
8 
9 #ifndef __SRTM_CHANNEL_H__
10 #define __SRTM_CHANNEL_H__
11 
12 #include "srtm_defs.h"
13 
14 /*!
15  * @addtogroup srtm
16  * @{
17  */
18 
19 /*******************************************************************************
20  * Definitions
21  ******************************************************************************/
22 
23 /*******************************************************************************
24  * API
25  ******************************************************************************/
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 /*!
31  * @brief Destroy SRTM channel.
32  *
33  * @param channel SRTM channel to start.
34  */
35 void SRTM_Channel_Destroy(srtm_channel_t channel);
36 
37 /*!
38  * @brief Let SRTM channel start working.
39  *
40  * @param channel SRTM channel to start.
41  * @return SRTM_Status_Success on success and others on failure.
42  */
43 srtm_status_t SRTM_Channel_Start(srtm_channel_t channel);
44 
45 /*!
46  * @brief Let SRTM channel stop working.
47  *
48  * @param channel SRTM channel to stop.
49  * @return SRTM_Status_Success on success and others on failure.
50  */
51 srtm_status_t SRTM_Channel_Stop(srtm_channel_t channel);
52 
53 /*!
54  * @brief Send data via SRTM channel.
55  *
56  * @param channel SRTM channel to send data.
57  * @param data start address of data to send.
58  * @param len data length in bytes.
59  * @return SRTM_Status_Success on success and others on failure.
60  */
61 srtm_status_t SRTM_Channel_SendData(srtm_channel_t channel, void *data, uint32_t len);
62 
63 #ifdef __cplusplus
64 }
65 #endif
66 
67 /*! @} */
68 
69 #endif /* __SRTM_CHANNEL_H__ */
70