16a0788bcSMarc Bonnici /* 26a0788bcSMarc Bonnici * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved. 36a0788bcSMarc Bonnici * 46a0788bcSMarc Bonnici * SPDX-License-Identifier: BSD-3-Clause 56a0788bcSMarc Bonnici */ 6a8be4cd0SMarc Bonnici #include <services/el3_spmc_ffa_memory.h> 76a0788bcSMarc Bonnici 86a0788bcSMarc Bonnici #include <platform_def.h> 96a0788bcSMarc Bonnici 10*ba33528aSShruti Gupta IMPORT_SYM(uintptr_t, __PLAT_SPMC_SHMEM_DATASTORE_START__, DATASTORE_BASE); 116a0788bcSMarc Bonnici 12*ba33528aSShruti Gupta __section(".arm_el3_tzc_dram") __unused static uint8_t 136a0788bcSMarc Bonnici plat_spmc_shmem_datastore[PLAT_SPMC_SHMEM_DATASTORE_SIZE]; 146a0788bcSMarc Bonnici plat_spmc_shmem_datastore_get(uint8_t ** datastore,size_t * size)156a0788bcSMarc Bonniciint plat_spmc_shmem_datastore_get(uint8_t **datastore, size_t *size) 166a0788bcSMarc Bonnici { 17*ba33528aSShruti Gupta *datastore = (uint8_t *)DATASTORE_BASE; 186a0788bcSMarc Bonnici *size = PLAT_SPMC_SHMEM_DATASTORE_SIZE; 196a0788bcSMarc Bonnici return 0; 206a0788bcSMarc Bonnici } 21a8be4cd0SMarc Bonnici 22a8be4cd0SMarc Bonnici /* 23a8be4cd0SMarc Bonnici * Add dummy implementations of memory management related platform hooks. 24a8be4cd0SMarc Bonnici * These can be used to implement platform specific functionality to support 25a8be4cd0SMarc Bonnici * a memory sharing/lending operation. 26a8be4cd0SMarc Bonnici * 27a8be4cd0SMarc Bonnici * Note: The hooks must be located as part of the initial share request and 28a8be4cd0SMarc Bonnici * final reclaim to prevent order dependencies with operations that may take 29a8be4cd0SMarc Bonnici * place in the normal world without visibility of the SPMC. 30a8be4cd0SMarc Bonnici */ plat_spmc_shmem_begin(struct ffa_mtd * desc)31a8be4cd0SMarc Bonniciint plat_spmc_shmem_begin(struct ffa_mtd *desc) 32a8be4cd0SMarc Bonnici { 33a8be4cd0SMarc Bonnici return 0; 34a8be4cd0SMarc Bonnici } plat_spmc_shmem_reclaim(struct ffa_mtd * desc)35a8be4cd0SMarc Bonniciint plat_spmc_shmem_reclaim(struct ffa_mtd *desc) 36a8be4cd0SMarc Bonnici { 37a8be4cd0SMarc Bonnici return 0; 38a8be4cd0SMarc Bonnici } 39