diff options
| author | Jens Wiklander <jens.wiklander@linaro.org> | 2025-08-13 09:02:55 +0300 |
|---|---|---|
| committer | Jens Wiklander <jens.wiklander@linaro.org> | 2025-09-11 12:22:33 +0300 |
| commit | ab09dd6d9201af9930efd5a5a0cb56a0fea6a169 (patch) | |
| tree | 6619e182de37095f593dd29df89db3635719440e /include/linux | |
| parent | 146bf4e75ecab9759ed78c9d167e860042d627fb (diff) | |
| download | linux-ab09dd6d9201af9930efd5a5a0cb56a0fea6a169.tar.xz | |
tee: add tee_shm_alloc_dma_mem()
Add tee_shm_alloc_dma_mem() to allocate DMA memory. The memory is
represented by a tee_shm object using the new flag TEE_SHM_DMA_MEM to
identify it as DMA memory. The allocated memory will later be lent to
the TEE to be used as protected memory.
Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/tee_core.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/tee_core.h b/include/linux/tee_core.h index b6c54b34a8b5..7b0c1da2ca6c 100644 --- a/include/linux/tee_core.h +++ b/include/linux/tee_core.h @@ -29,6 +29,8 @@ #define TEE_SHM_POOL BIT(2) /* Memory allocated from pool */ #define TEE_SHM_PRIV BIT(3) /* Memory private to TEE driver */ #define TEE_SHM_DMA_BUF BIT(4) /* Memory with dma-buf handle */ +#define TEE_SHM_DMA_MEM BIT(5) /* Memory allocated with */ + /* dma_alloc_pages() */ #define TEE_DEVICE_FLAG_REGISTERED 0x1 #define TEE_MAX_DEV_NAME_LEN 32 @@ -298,6 +300,9 @@ void *tee_get_drvdata(struct tee_device *teedev); */ struct tee_shm *tee_shm_alloc_priv_buf(struct tee_context *ctx, size_t size); +struct tee_shm *tee_shm_alloc_dma_mem(struct tee_context *ctx, + size_t page_count); + int tee_dyn_shm_alloc_helper(struct tee_shm *shm, size_t size, size_t align, int (*shm_register)(struct tee_context *ctx, struct tee_shm *shm, |
