[PATCH] tee: optee: Allow MT_NORMAL_TAGGED shared memory

Hirokazu Honda posted 1 patch 2 months ago
drivers/tee/optee/call.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] tee: optee: Allow MT_NORMAL_TAGGED shared memory
Posted by Hirokazu Honda 2 months ago
From: Hirokazu Honda <hiroh@chromium.org>

On ARM64, shared memory can have MT_NORMAL_TAGGED attribute when using
the Memory Tagging Extension (MTE). The OP-TEE driver needs to
recognize this as normal memory to allow sharing such buffers with the
Secure World.

Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
---
 drivers/tee/optee/call.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/tee/optee/call.c b/drivers/tee/optee/call.c
index 9effe88049e9..e046aff61828 100644
--- a/drivers/tee/optee/call.c
+++ b/drivers/tee/optee/call.c
@@ -602,7 +602,8 @@ static bool is_normal_memory(pgprot_t p)
 	return (((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEALLOC) ||
 		((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEBACK));
 #elif defined(CONFIG_ARM64)
-	return (pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL);
+	return ((pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL)) ||
+	       ((pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL_TAGGED));
 #else
 #error "Unsupported architecture"
 #endif
-- 
2.54.0.rc1.513.gad8abe7a5a-goog
Re: [PATCH] tee: optee: Allow MT_NORMAL_TAGGED shared memory
Posted by Sumit Garg 1 month, 3 weeks ago
On Thu, Apr 16, 2026 at 03:18:19PM -0700, Hirokazu Honda wrote:
> From: Hirokazu Honda <hiroh@chromium.org>
> 
> On ARM64, shared memory can have MT_NORMAL_TAGGED attribute when using
> the Memory Tagging Extension (MTE). The OP-TEE driver needs to
> recognize this as normal memory to allow sharing such buffers with the
> Secure World.
> 
> Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
> ---
>  drivers/tee/optee/call.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>

-Sumit

> 
> diff --git a/drivers/tee/optee/call.c b/drivers/tee/optee/call.c
> index 9effe88049e9..e046aff61828 100644
> --- a/drivers/tee/optee/call.c
> +++ b/drivers/tee/optee/call.c
> @@ -602,7 +602,8 @@ static bool is_normal_memory(pgprot_t p)
>  	return (((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEALLOC) ||
>  		((pgprot_val(p) & L_PTE_MT_MASK) == L_PTE_MT_WRITEBACK));
>  #elif defined(CONFIG_ARM64)
> -	return (pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL);
> +	return ((pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL)) ||
> +	       ((pgprot_val(p) & PTE_ATTRINDX_MASK) == PTE_ATTRINDX(MT_NORMAL_TAGGED));
>  #else
>  #error "Unsupported architecture"
>  #endif
> -- 
> 2.54.0.rc1.513.gad8abe7a5a-goog
>
Re: [PATCH] tee: optee: Allow MT_NORMAL_TAGGED shared memory
Posted by Jens Wiklander 1 month, 2 weeks ago
Hi,

On Mon, Apr 20, 2026 at 2:29 PM Sumit Garg <sumit.garg@kernel.org> wrote:
>
> On Thu, Apr 16, 2026 at 03:18:19PM -0700, Hirokazu Honda wrote:
> > From: Hirokazu Honda <hiroh@chromium.org>
> >
> > On ARM64, shared memory can have MT_NORMAL_TAGGED attribute when using
> > the Memory Tagging Extension (MTE). The OP-TEE driver needs to
> > recognize this as normal memory to allow sharing such buffers with the
> > Secure World.
> >
> > Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
> > ---
> >  drivers/tee/optee/call.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
>
> Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>

Looks good. I'm picking up this.

Cheers,
Jens
Re: [PATCH] tee: optee: Allow MT_NORMAL_TAGGED shared memory
Posted by Hirokazu Honda 1 month, 2 weeks ago
Thanks Sumit and Jens for reviewing!

On Mon, Apr 27, 2026 at 6:42 AM Jens Wiklander
<jens.wiklander@linaro.org> wrote:
>
> Hi,
>
> On Mon, Apr 20, 2026 at 2:29 PM Sumit Garg <sumit.garg@kernel.org> wrote:
> >
> > On Thu, Apr 16, 2026 at 03:18:19PM -0700, Hirokazu Honda wrote:
> > > From: Hirokazu Honda <hiroh@chromium.org>
> > >
> > > On ARM64, shared memory can have MT_NORMAL_TAGGED attribute when using
> > > the Memory Tagging Extension (MTE). The OP-TEE driver needs to
> > > recognize this as normal memory to allow sharing such buffers with the
> > > Secure World.
> > >
> > > Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
> > > ---
> > >  drivers/tee/optee/call.c | 3 ++-
> > >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
>
> Looks good. I'm picking up this.
>
> Cheers,
> Jens