1 /*
2  * Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
3  * Copyright (c) 2020, NVIDIA Corporation. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #ifndef BPMP_IPC_H
9 #define BPMP_IPC_H
10 
11 #include <lib/utils_def.h>
12 #include <stdbool.h>
13 #include <stdint.h>
14 
15 /**
16  * Currently supported reset identifiers
17  */
18 #define TEGRA_RESET_ID_XUSB_PADCTL	U(114)
19 #define TEGRA_RESET_ID_GPCDMA		U(70)
20 
21 /**
22  * Function to initialise the IPC with the bpmp
23  */
24 int32_t tegra_bpmp_ipc_init(void);
25 
26 /**
27  * Handler to reset a module
28  */
29 int32_t tegra_bpmp_ipc_reset_module(uint32_t rst_id);
30 
31 /**
32  * Handler to enable clock to a module. Only SE device is
33  * supported for now.
34  */
35 int tegra_bpmp_ipc_enable_clock(uint32_t clk_id);
36 
37 /**
38  * Handler to disable clock to a module. Only SE device is
39  * supported for now.
40  */
41 int tegra_bpmp_ipc_disable_clock(uint32_t clk_id);
42 
43 #endif /* BPMP_IPC_H */
44