Loading drivers/tee/tee_shm_pool.c +0 −56 Original line number Diff line number Diff line Loading @@ -47,62 +47,6 @@ static const struct tee_shm_pool_mgr_ops pool_ops_generic = { .destroy_poolmgr = pool_op_gen_destroy_poolmgr, }; /** * tee_shm_pool_alloc_res_mem() - Create a shared memory pool from reserved * memory range * @priv_info: Information for driver private shared memory pool * @dmabuf_info: Information for dma-buf shared memory pool * * Start and end of pools will must be page aligned. * * Allocation with the flag TEE_SHM_DMA_BUF set will use the range supplied * in @dmabuf, others will use the range provided by @priv. * * @returns pointer to a 'struct tee_shm_pool' or an ERR_PTR on failure. */ struct tee_shm_pool * tee_shm_pool_alloc_res_mem(struct tee_shm_pool_mem_info *priv_info, struct tee_shm_pool_mem_info *dmabuf_info) { struct tee_shm_pool_mgr *priv_mgr; struct tee_shm_pool_mgr *dmabuf_mgr; void *rc; /* * Create the pool for driver private shared memory */ rc = tee_shm_pool_mgr_alloc_res_mem(priv_info->vaddr, priv_info->paddr, priv_info->size, 3 /* 8 byte aligned */); if (IS_ERR(rc)) return rc; priv_mgr = rc; /* * Create the pool for dma_buf shared memory */ rc = tee_shm_pool_mgr_alloc_res_mem(dmabuf_info->vaddr, dmabuf_info->paddr, dmabuf_info->size, PAGE_SHIFT); if (IS_ERR(rc)) goto err_free_priv_mgr; dmabuf_mgr = rc; rc = tee_shm_pool_alloc(priv_mgr, dmabuf_mgr); if (IS_ERR(rc)) goto err_free_dmabuf_mgr; return rc; err_free_dmabuf_mgr: tee_shm_pool_mgr_destroy(dmabuf_mgr); err_free_priv_mgr: tee_shm_pool_mgr_destroy(priv_mgr); return rc; } EXPORT_SYMBOL_GPL(tee_shm_pool_alloc_res_mem); struct tee_shm_pool_mgr *tee_shm_pool_mgr_alloc_res_mem(unsigned long vaddr, phys_addr_t paddr, size_t size, Loading include/linux/tee_drv.h +0 −30 Original line number Diff line number Diff line Loading @@ -278,36 +278,6 @@ static inline void tee_shm_pool_mgr_destroy(struct tee_shm_pool_mgr *poolm) poolm->ops->destroy_poolmgr(poolm); } /** * struct tee_shm_pool_mem_info - holds information needed to create a shared * memory pool * @vaddr: Virtual address of start of pool * @paddr: Physical address of start of pool * @size: Size in bytes of the pool */ struct tee_shm_pool_mem_info { unsigned long vaddr; phys_addr_t paddr; size_t size; }; /** * tee_shm_pool_alloc_res_mem() - Create a shared memory pool from reserved * memory range * @priv_info: Information for driver private shared memory pool * @dmabuf_info: Information for dma-buf shared memory pool * * Start and end of pools will must be page aligned. * * Allocation with the flag TEE_SHM_DMA_BUF set will use the range supplied * in @dmabuf, others will use the range provided by @priv. * * @returns pointer to a 'struct tee_shm_pool' or an ERR_PTR on failure. */ struct tee_shm_pool * tee_shm_pool_alloc_res_mem(struct tee_shm_pool_mem_info *priv_info, struct tee_shm_pool_mem_info *dmabuf_info); /** * tee_shm_pool_free() - Free a shared memory pool * @pool: The shared memory pool to free Loading Loading
drivers/tee/tee_shm_pool.c +0 −56 Original line number Diff line number Diff line Loading @@ -47,62 +47,6 @@ static const struct tee_shm_pool_mgr_ops pool_ops_generic = { .destroy_poolmgr = pool_op_gen_destroy_poolmgr, }; /** * tee_shm_pool_alloc_res_mem() - Create a shared memory pool from reserved * memory range * @priv_info: Information for driver private shared memory pool * @dmabuf_info: Information for dma-buf shared memory pool * * Start and end of pools will must be page aligned. * * Allocation with the flag TEE_SHM_DMA_BUF set will use the range supplied * in @dmabuf, others will use the range provided by @priv. * * @returns pointer to a 'struct tee_shm_pool' or an ERR_PTR on failure. */ struct tee_shm_pool * tee_shm_pool_alloc_res_mem(struct tee_shm_pool_mem_info *priv_info, struct tee_shm_pool_mem_info *dmabuf_info) { struct tee_shm_pool_mgr *priv_mgr; struct tee_shm_pool_mgr *dmabuf_mgr; void *rc; /* * Create the pool for driver private shared memory */ rc = tee_shm_pool_mgr_alloc_res_mem(priv_info->vaddr, priv_info->paddr, priv_info->size, 3 /* 8 byte aligned */); if (IS_ERR(rc)) return rc; priv_mgr = rc; /* * Create the pool for dma_buf shared memory */ rc = tee_shm_pool_mgr_alloc_res_mem(dmabuf_info->vaddr, dmabuf_info->paddr, dmabuf_info->size, PAGE_SHIFT); if (IS_ERR(rc)) goto err_free_priv_mgr; dmabuf_mgr = rc; rc = tee_shm_pool_alloc(priv_mgr, dmabuf_mgr); if (IS_ERR(rc)) goto err_free_dmabuf_mgr; return rc; err_free_dmabuf_mgr: tee_shm_pool_mgr_destroy(dmabuf_mgr); err_free_priv_mgr: tee_shm_pool_mgr_destroy(priv_mgr); return rc; } EXPORT_SYMBOL_GPL(tee_shm_pool_alloc_res_mem); struct tee_shm_pool_mgr *tee_shm_pool_mgr_alloc_res_mem(unsigned long vaddr, phys_addr_t paddr, size_t size, Loading
include/linux/tee_drv.h +0 −30 Original line number Diff line number Diff line Loading @@ -278,36 +278,6 @@ static inline void tee_shm_pool_mgr_destroy(struct tee_shm_pool_mgr *poolm) poolm->ops->destroy_poolmgr(poolm); } /** * struct tee_shm_pool_mem_info - holds information needed to create a shared * memory pool * @vaddr: Virtual address of start of pool * @paddr: Physical address of start of pool * @size: Size in bytes of the pool */ struct tee_shm_pool_mem_info { unsigned long vaddr; phys_addr_t paddr; size_t size; }; /** * tee_shm_pool_alloc_res_mem() - Create a shared memory pool from reserved * memory range * @priv_info: Information for driver private shared memory pool * @dmabuf_info: Information for dma-buf shared memory pool * * Start and end of pools will must be page aligned. * * Allocation with the flag TEE_SHM_DMA_BUF set will use the range supplied * in @dmabuf, others will use the range provided by @priv. * * @returns pointer to a 'struct tee_shm_pool' or an ERR_PTR on failure. */ struct tee_shm_pool * tee_shm_pool_alloc_res_mem(struct tee_shm_pool_mem_info *priv_info, struct tee_shm_pool_mem_info *dmabuf_info); /** * tee_shm_pool_free() - Free a shared memory pool * @pool: The shared memory pool to free Loading