SysLink API Reference  2.21.03.11
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Macros | Typedefs | Enumerations | Functions
SyslinkMemMgr.h File Reference

Detailed Description

Header file implementing Memory manager. It is a wrapper implementation to support Shared memory allocation using heap address translations using shared region or Tiler buffer allocation using tiler buffer manager and address translations.

Go to the source code of this file.

Data Structures

struct  SyslinkMemMgr_CreateParams_tag
 Structure defining common create parameters for the Memory manager module.Should be the first element in implementation specific create params. More...
struct  SyslinkMemMgr_AllocBlock_tag
struct  SyslinkMemMgr_AllocParams_tag
 Alloc params. More...

Macros

#define MEMMGR_MAX_NAME_LENGTH   32u
#define MEMMGR_MAX_TILER_BLOCKS   10u
#define SyslinkMemMgr_Params   SyslinkMemMgr_CreateParams

Typedefs

typedef enum
SyslinkMemMgr_Type_Type_tag 
SyslinkMemMgr_Type
 enum for denoting the different types of SyslinkMemMgr implementations.
typedef struct
SyslinkMemMgr_CreateParams_tag 
SyslinkMemMgr_CreateParams
 Structure defining common create parameters for the Memory manager module.Should be the first element in implementation specific create params.
typedef struct
SyslinkMemMgr_AllocBlock_tag 
SyslinkMemMgr_AllocBlock
typedef struct
SyslinkMemMgr_AllocParams_tag 
SyslinkMemMgr_AllocParams
 Alloc params.
typedef struct SyslinkMemMgr_Object SyslinkMemMgr_Object
 Forward declaration of structure defining object for the MemoryManger.
typedef SyslinkMemMgr_ObjectSyslinkMemMgr_Handle
 Handle for the MemoryManager instance.

Enumerations

enum  SyslinkMemMgr_AddrType {
  SyslinkMemMgr_AddrType_Virtual = 0u,
  SyslinkMemMgr_AddrType_Portable = 1u,
  SyslinkMemMgr_AddrType_EndValue = 2u
}
 Enumerations to indicate address types used for translation. More...
enum  SyslinkMemMgr_Type_Type_tag {
  SyslinkMemMgr_TYPE_SHAREDMEM = 0x0,
  SyslinkMemMgr_TYPE_TILERMEM = 0x1
}
 enum for denoting the different types of SyslinkMemMgr implementations. More...

Functions

Int32 SyslinkMemMgr_setup (Void)
Int32 SyslinkMemMgr_destroy (Void)
SyslinkMemMgr_Handle SyslinkMemMgr_create (Ptr params)
Int32 SyslinkMemMgr_delete (SyslinkMemMgr_Handle *pHandle)
Ptr SyslinkMemMgr_alloc (SyslinkMemMgr_Handle handle, SyslinkMemMgr_AllocParams *params)
Int32 SyslinkMemMgr_free (SyslinkMemMgr_Handle handle, Ptr ptr, UInt32 size)
Ptr SyslinkMemMgr_map (SyslinkMemMgr_Handle handle, Ptr arg)
Int32 SyslinkMemMgr_unmap (SyslinkMemMgr_Handle handle, Ptr arg)
Ptr SyslinkMemMgr_translate (SyslinkMemMgr_Handle handle, Ptr srcAddr, SyslinkMemMgr_AddrType srcAddrType, SyslinkMemMgr_AddrType desAddrType)
Ptr SyslinkMemMgr_getKnlHandle (SyslinkMemMgr_Handle handle)

Macro Definition Documentation

#define MEMMGR_MAX_NAME_LENGTH   32u
#define MEMMGR_MAX_TILER_BLOCKS   10u
#define SyslinkMemMgr_Params   SyslinkMemMgr_CreateParams

Typedef Documentation

enum for denoting the different types of SyslinkMemMgr implementations.

Structure defining common create parameters for the Memory manager module.Should be the first element in implementation specific create params.

Alloc params.

Forward declaration of structure defining object for the MemoryManger.

Handle for the MemoryManager instance.


Enumeration Type Documentation

Enumerations to indicate address types used for translation.

Enumerator:
SyslinkMemMgr_AddrType_Virtual 

Virtual address on calling process on DSP where MMU is not configured it could be physical address.

SyslinkMemMgr_AddrType_Portable 

This is the shared region address incase sharedmemory manager plugged *in to frameQbufMgr. In case of tiler it could be the tiler specific *portable address

SyslinkMemMgr_AddrType_EndValue 

End delimiter indicating start of invalid values for this enum

enum for denoting the different types of SyslinkMemMgr implementations.

Enumerator:
SyslinkMemMgr_TYPE_SHAREDMEM 
SyslinkMemMgr_TYPE_TILERMEM 

Function Documentation

Int32 SyslinkMemMgr_setup ( Void  )
Int32 SyslinkMemMgr_destroy ( Void  )
SyslinkMemMgr_Handle SyslinkMemMgr_create ( Ptr  params)
Int32 SyslinkMemMgr_delete ( SyslinkMemMgr_Handle pHandle)
Ptr SyslinkMemMgr_alloc ( SyslinkMemMgr_Handle  handle,
SyslinkMemMgr_AllocParams params 
)
Int32 SyslinkMemMgr_free ( SyslinkMemMgr_Handle  handle,
Ptr  ptr,
UInt32  size 
)
Ptr SyslinkMemMgr_map ( SyslinkMemMgr_Handle  handle,
Ptr  arg 
)
Int32 SyslinkMemMgr_unmap ( SyslinkMemMgr_Handle  handle,
Ptr  arg 
)
Ptr SyslinkMemMgr_translate ( SyslinkMemMgr_Handle  handle,
Ptr  srcAddr,
SyslinkMemMgr_AddrType  srcAddrType,
SyslinkMemMgr_AddrType  desAddrType 
)
Ptr SyslinkMemMgr_getKnlHandle ( SyslinkMemMgr_Handle  handle)
Copyright 2014, Texas Instruments Incorporated