diff options
Diffstat (limited to 'product/rcar/module/rcar_dvfs/src/mod_dvfs_module_private.h')
-rw-r--r-- | product/rcar/module/rcar_dvfs/src/mod_dvfs_module_private.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/product/rcar/module/rcar_dvfs/src/mod_dvfs_module_private.h b/product/rcar/module/rcar_dvfs/src/mod_dvfs_module_private.h new file mode 100644 index 00000000..0ec3d455 --- /dev/null +++ b/product/rcar/module/rcar_dvfs/src/mod_dvfs_module_private.h @@ -0,0 +1,42 @@ +/* + * Renesas SCP/MCP Software + * Copyright (c) 2017-2020, Arm Limited and Contributors. All rights reserved. + * Copyright (c) 2020, Renesas Electronics Corporation. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef MOD_DVFS_MODULE_PRIVATE_H +#define MOD_DVFS_MODULE_PRIVATE_H + +#include <mod_clock.h> +#include <mod_rcar_pmic.h> + +#include <fwk_id.h> + +/* Domain context */ +struct mod_dvfs_domain_ctx { + /* Domain configuration */ + const struct mod_dvfs_domain_config *config; + + struct { + /* Power supply API */ + const struct mod_rcar_pmic_device_api *psu; + + /* Clock API */ + const struct mod_clock_api *clock; + } apis; + + /* Number of operating points */ + size_t opp_count; + + /* Operating point prior to domain suspension */ + struct mod_dvfs_opp suspended_opp; + + /* Current operating point limits */ + struct mod_dvfs_frequency_limits frequency_limits; +}; + +struct mod_dvfs_domain_ctx *__mod_dvfs_get_valid_domain_ctx(fwk_id_t domain_id); + +#endif /* MOD_DVFS_MODULE_PRIVATE_H */ |