index a6f48e0e4bd7e9015a11b910e5afec8bf9effe29..fad2f91c8cc8b9e7ef9e91a327ba7642e6336852 100644 (file)
extern "C" {
#endif
-/* Standard includes */
-#include <stdbool.h>
-
/* RM external includes */
#include <ti/drv/rm/rm.h>
/* Resource allocator operations */
typedef enum {
- /* Allocate operation */
- Rm_allocatorOp_ALLOCATE = 0,
+ /* Allocate init operation */
+ Rm_allocatorOp_ALLOCATE_INIT = 0,
+ /* Allocate use operation */
+ Rm_allocatorOp_ALLOCATE_USE,
/* Free operation */
Rm_allocatorOp_FREE,
- /* Preallocate based on Policy DTB information operation */
- Rm_allocatorOp_PRE_ALLOCATE
+ /* Preallocate to use based on Policy DTB information operation */
+ Rm_allocatorOp_PRE_ALLOCATE_INIT,
+ /* Preallocate to init based on Policy DTB information operation */
+ Rm_allocatorOp_PRE_ALLOCATE_USE
} Rm_AllocatorOp;
/* Allocator operation configuration structure */
Rm_PolicyValidInstNode *serviceSrcInstNode;
/* Allocator operation type */
Rm_AllocatorOp operation;
- /* Specifies the type of allocation
- * a) Allocate to initialize
- * b) Allocate to use */
- uint32_t allocType;
/* Resources for which the allocator operation will affect */
Rm_ResourceInfo *resourceInfo;
} Rm_AllocatorOpInfo;
struct Rm_Allocator_s *nextAllocator;
} Rm_Allocator;
-Rm_Allocator *rmAllocatorFind(Rm_Allocator *allocatorList, char *resourceName);
+Rm_Allocator *rmAllocatorFind(Rm_Handle rmHandle, const char *resourceName);
int32_t rmAllocatorOperation(Rm_Handle rmHandle, Rm_AllocatorOpInfo *opInfo);
int32_t rmAllocatorInitializeResources(Rm_Handle rmHandle, void *globalResourceDtb, void *linuxDtb);
-void rmAllocatorDeleteResources(Rm_Allocator *allocatorList);
+void rmAllocatorDeleteResources(Rm_Handle rmHandle);
#ifdef __cplusplus
}