mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-05-05 18:48:45 +00:00

Add new functions and intefaces of LPM to support more interactions between LPM providers and users. Signed-off-by: James Liao <jamesjj.liao@mediatek.com> Change-Id: I8ebbda0c0ef5be3a7a388a38c09424ebf785996f
31 lines
846 B
C
31 lines
846 B
C
/*
|
|
* Copyright (c) 2023, MediaTek Inc. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef MT_LP_RQ_H
|
|
#define MT_LP_RQ_H
|
|
|
|
/* Determine the generic resource request public type */
|
|
#define MT_LP_RQ_XO_FPM BIT(0)
|
|
#define MT_LP_RQ_26M BIT(1)
|
|
#define MT_LP_RQ_INFRA BIT(2)
|
|
#define MT_LP_RQ_SYSPLL BIT(3)
|
|
#define MT_LP_RQ_DRAM BIT(4)
|
|
#define MT_LP_RQ_ALL (0xFFFFFFFF)
|
|
|
|
struct mt_lp_resource_user {
|
|
/* Determine the resource user mask */
|
|
unsigned int umask;
|
|
/* Determine the resource request user identify */
|
|
unsigned int uid;
|
|
/* Request the resource */
|
|
int (*request)(struct mt_lp_resource_user *this, unsigned int resource);
|
|
/* Release the resource */
|
|
int (*release)(struct mt_lp_resource_user *this);
|
|
};
|
|
|
|
int mt_lp_resource_user_register(char *uname, struct mt_lp_resource_user *ru);
|
|
|
|
#endif /* MT_LP_RQ_H */
|