1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2023, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  *
7  * Description:
8  *     TC2 Power Model (Thermal Management Driver)
9  */
10 
11 #ifndef MOD_TC2_POWER_MODEL_H
12 #define MOD_TC2_POWER_MODEL_H
13 
14 //#include <mod_power_domain.h>
15 
16 /*!
17  * \addtogroup GroupTC2Module TC2 Product Modules
18  * \{
19  */
20 
21 /*!
22  * \defgroup GroupTC2PowerModel TC2 Power Model
23  * \{
24  */
25 
26 /*!
27  * \brief TC2 Power Model element configuration
28  */
29 struct mod_tc2_power_model_dev_config {
30     /*!
31      * \brief Coefficient to compute the power from level and viceversa.
32      *
33      * \details This is an oversimplified example of element configuration. For
34      *      the purpose of code reference, we assume that power and level are
35      *      tied each other by a simple coefficient.
36      */
37     unsigned int coeff;
38 };
39 
40 /*!
41  * \brief Number of defined APIs for Power Model.
42  */
43 enum mod_tc2_power_model_api_idx {
44     /*! API index for the driver interface of the Thermal Management module */
45     MOD_TC2_POWER_MODEL_THERMAL_DRIVER_API_IDX,
46 
47     /*! Number of exposed interfaces */
48     MOD_TC2_POWER_MODEL_API_COUNT,
49 };
50 
51 /*!
52  * \}
53  */
54 
55 /*!
56  * \}
57  */
58 
59 #endif /* MOD_TC2_POWER_MODEL_H */
60