diff options
Diffstat (limited to 'drivers/staging/nmf-cm/cm/engine/memory/src')
-rw-r--r-- | drivers/staging/nmf-cm/cm/engine/memory/src/domain.c | 21 | ||||
-rw-r--r-- | drivers/staging/nmf-cm/cm/engine/memory/src/remote_allocator.c | 5 |
2 files changed, 26 insertions, 0 deletions
diff --git a/drivers/staging/nmf-cm/cm/engine/memory/src/domain.c b/drivers/staging/nmf-cm/cm/engine/memory/src/domain.c index 8524183ce19..a605cc475a9 100644 --- a/drivers/staging/nmf-cm/cm/engine/memory/src/domain.c +++ b/drivers/staging/nmf-cm/cm/engine/memory/src/domain.c @@ -122,6 +122,20 @@ PUBLIC t_cm_error cm_DM_Init(void) domainDesc[2].client = NMF_CORE_CLIENT; domainDesc[3].client = NMF_CORE_CLIENT; + /* We use domain 1 and 2 for the singleton, only used for components structure */ + domainDesc[DEFAULT_SVA_DOMAIN].type = DOMAIN_NORMAL; + domainDesc[DEFAULT_SVA_DOMAIN].domain.coreId= SVA_CORE_ID; + domainDesc[DEFAULT_SVA_DOMAIN].domain.esramCode.size = (t_uint32)-1; + domainDesc[DEFAULT_SVA_DOMAIN].domain.esramData.size = (t_uint32)-1; + domainDesc[DEFAULT_SVA_DOMAIN].domain.sdramCode.size = (t_uint32)-1; + domainDesc[DEFAULT_SVA_DOMAIN].domain.sdramData.size = (t_uint32)-1; + domainDesc[DEFAULT_SIA_DOMAIN].type = DOMAIN_NORMAL; + domainDesc[DEFAULT_SIA_DOMAIN].domain.coreId= SIA_CORE_ID; + domainDesc[DEFAULT_SIA_DOMAIN].domain.esramCode.size = (t_uint32)-1; + domainDesc[DEFAULT_SIA_DOMAIN].domain.esramData.size = (t_uint32)-1; + domainDesc[DEFAULT_SIA_DOMAIN].domain.sdramCode.size = (t_uint32)-1; + domainDesc[DEFAULT_SIA_DOMAIN].domain.sdramData.size = (t_uint32)-1; + for(i = 0; i < MAX_SCRATCH_DOMAIN_NB; i++) { domainScratchDesc[i].domainId = 0; domainScratchDesc[i].parentId = 0; @@ -585,3 +599,10 @@ static void cm_DM_DomainError(const t_cm_domain_id parentId, const t_nmf_client_ domainDesc[parentId].domain.esramData.offset + domainDesc[parentId].domain.esramData.size); } +PUBLIC void cm_DM_SetDefaultDomain(t_memory_handle memHandle, t_nmf_core_id coreId) +{ + if (coreId == SVA_CORE_ID) + cm_MM_SetDefaultDomain(memHandle, DEFAULT_SVA_DOMAIN); + else if (coreId == SIA_CORE_ID) + cm_MM_SetDefaultDomain(memHandle, DEFAULT_SIA_DOMAIN); +} diff --git a/drivers/staging/nmf-cm/cm/engine/memory/src/remote_allocator.c b/drivers/staging/nmf-cm/cm/engine/memory/src/remote_allocator.c index ec23e28917c..0d000d37371 100644 --- a/drivers/staging/nmf-cm/cm/engine/memory/src/remote_allocator.c +++ b/drivers/staging/nmf-cm/cm/engine/memory/src/remote_allocator.c @@ -649,3 +649,8 @@ PUBLIC void cm_MM_DumpMemory(t_cm_allocator_desc* alloc, t_uint32 start, t_uint3 chunk = chunk->next; } } + +PUBLIC void cm_MM_SetDefaultDomain(t_memory_handle memHandle, t_uint32 domainId) +{ + ((t_cm_chunk *) memHandle)->domainId = domainId; +} |