1 /*
2  * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 /*******************************************************************************
8  * NOTICE
9  * The hal is not public api, don't use in application code.
10  * See readme.md in hal/include/hal/readme.md
11  ******************************************************************************/
12 
13 #pragma once
14 
15 #include <stdint.h>
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 typedef struct soc_etm_dev_t *etm_soc_handle_t; // ETM SOC layer handle
22 
23 /**
24  * @brief HAL context type of ETM driver
25  */
26 typedef struct {
27     etm_soc_handle_t regs; /*!< ETM Register base address */
28 } etm_hal_context_t;
29 
30 /**
31  * @brief Initialize the ETM HAL driver
32  *
33  * @param hal: ETM HAL context
34  */
35 void etm_hal_init(etm_hal_context_t *hal);
36 
37 /**
38  * @brief Deinitialize the ETM HAL driver
39  *
40  * @param hal: ETM HAL context
41  */
42 void etm_hal_deinit(etm_hal_context_t *hal);
43 
44 #ifdef __cplusplus
45 }
46 #endif
47