mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Harshal Dev <harshal.dev@oss.qualcomm.com>
To: Amirreza Zarrabi <amirreza.zarrabi@oss.qualcomm.com>,
	Jens Wiklander <jens.wiklander@oss.qualcomm.com>,
	Sumit Garg <sumit.garg@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
	Krzysztof Kozlowski <krzk@kernel.org>
Cc: Kuldeep Singh <kuldeep.singh@oss.qualcomm.com>,
	Basant Kumar <basantk@qti.qualcomm.com>,
	Apurupa Pattapu <apurupa@qti.qualcomm.com>,
	Arun Kumar Neelakantam <aneelaka@qti.qualcomm.com>,
	op-tee@lists.trustedfirmware.org, linux-kernel@vger.kernel.org,
	linux-arm-msm@vger.kernel.org,
	Sumit Garg <sumit.garg@oss.qualcomm.com>
Subject: Re: [PATCH v4 4/7] tee: Export uuidv5 generation for TEE backends
Date: Mon, 12 Oct 2026 15:15:10 +0530	[thread overview]
Message-ID: <447d71bd-b9fe-44c5-b4ac-375661bbbd92@oss.qualcomm.com> (raw)
In-Reply-To: <4b5d8ee4-4927-4932-963c-19eb76a8f67d@oss.qualcomm.com>

Hi Amir,

On 09-10-2026 06:53 am, Amirreza Zarrabi wrote:
> 
> 
> On 10/6/2026 10:33 PM, Harshal Dev wrote:
>> Export the uuidv5() function defined in the TEE core to all TEE backends.
>> This enables the TEE backend drivers to generate a UUID for identifying
>> and registering their secure services on the TEE bus.
>>
>> Reviewed-by: Sumit Garg <sumit.garg@oss.qualcomm.com>
>> Signed-off-by: Harshal Dev <harshal.dev@oss.qualcomm.com>
>> ---
>>  drivers/tee/tee_core.c   |  9 +++++----
>>  include/linux/tee_core.h | 15 +++++++++++++++
>>  2 files changed, 20 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/tee/tee_core.c b/drivers/tee/tee_core.c
>> index a03a3d645dd1..2cfd302d1393 100644
>> --- a/drivers/tee/tee_core.c
>> +++ b/drivers/tee/tee_core.c
>> @@ -135,7 +135,7 @@ static int tee_release(struct inode *inode, struct file *filp)
>>  }
>>  
>>  /**
>> - * uuid_v5() - Calculate UUIDv5
>> + * tee_generate_uuid_v5() - Calculate UUIDv5
>>   * @uuid: Resulting UUID
>>   * @ns: Name space ID for UUIDv5 function
>>   * @name: Name for UUIDv5 function
>> @@ -146,8 +146,8 @@ static int tee_release(struct inode *inode, struct file *filp)
>>   * This implements section (for SHA-1):
>>   * 4.3.  Algorithm for Creating a Name-Based UUID
>>   */
>> -static void uuid_v5(uuid_t *uuid, const uuid_t *ns, const void *name,
>> -		    size_t size)
>> +void tee_generate_uuid_v5(uuid_t *uuid, const uuid_t *ns, const void *name,
>> +			  size_t size)
>>  {
>>  	unsigned char hash[SHA1_DIGEST_SIZE];
>>  	struct sha1_ctx ctx;
>> @@ -163,6 +163,7 @@ static void uuid_v5(uuid_t *uuid, const uuid_t *ns, const void *name,
>>  	uuid->b[6] = (hash[6] & 0x0F) | 0x50;
>>  	uuid->b[8] = (hash[8] & 0x3F) | 0x80;
>>  }
>> +EXPORT_SYMBOL_GPL(tee_generate_uuid_v5);
>>  
>>  int tee_session_calc_client_uuid(uuid_t *uuid, u32 connection_method,
>>  				 const u8 connection_data[TEE_IOCTL_UUID_LEN])
>> @@ -228,7 +229,7 @@ int tee_session_calc_client_uuid(uuid_t *uuid, u32 connection_method,
>>  		goto out_free_name;
>>  	}
>>  
>> -	uuid_v5(uuid, &tee_client_uuid_ns, name, name_len);
>> +	tee_generate_uuid_v5(uuid, &tee_client_uuid_ns, name, name_len);
>>  out_free_name:
>>  	kfree(name);
>>  
>> diff --git a/include/linux/tee_core.h b/include/linux/tee_core.h
>> index bcb5418d6fdc..a3f4f88b8423 100644
>> --- a/include/linux/tee_core.h
>> +++ b/include/linux/tee_core.h
>> @@ -272,6 +272,21 @@ void tee_device_set_dev_groups(struct tee_device *teedev,
>>  int tee_session_calc_client_uuid(uuid_t *uuid, u32 connection_method,
>>  				 const u8 connection_data[TEE_IOCTL_UUID_LEN]);
>>  
>> +/**
>> + * tee_generate_uuid_v5() - Calculate UUIDv5
>> + * @uuid: Resulting UUID
>> + * @ns: Name space ID for UUIDv5 function
>> + * @name: Name for UUIDv5 function
>> + * @size: Size of name
>> + *
>> + * UUIDv5 is specific in RFC 4122.
>> + *
>> + * This implements section (for SHA-1):
>> + * 4.3.  Algorithm for Creating a Name-Based UUID
>> + */
> 
> I think the functions in the header do not need to replicate the docs from c files.
> If you want you can remove it. Otherwise,
>

I can see that the exported function tee_session_calc_client_uuid() in the
.c file only provides the docs in the header file. Perhaps I can do the same
and remove the doc from the .c file and keep it here instead of replicating
it in both files. 
> Reviewed-by: Amirreza Zarrabi <amirreza.zarrabi@oss.qualcomm.com>
>

Hope I can keep your tag with this. :)

Regards,
Harshal
 
> - Amir
> 
>> +void tee_generate_uuid_v5(uuid_t *uuid, const uuid_t *ns, const void *name,
>> +			  size_t size);
>> +
>>  /**
>>   * struct tee_shm_pool - shared memory pool
>>   * @ops:		operations
>>
> 


  reply	other threads:[~2026-10-12  9:45 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-06 11:33 [PATCH v4 0/7] Add TEE based client driver for UEFI Secure Application Harshal Dev
2026-10-06 11:33 ` [PATCH v4 1/7] tee: qcomtee: Track the object invocation context Harshal Dev
2026-10-09  1:01   ` Amirreza Zarrabi
2026-10-06 11:33 ` [PATCH v4 2/7] tee: Add kernel client object invoke helper Harshal Dev
2026-10-09  1:03   ` Amirreza Zarrabi
2026-10-06 11:33 ` [PATCH v4 3/7] tee: qcomtee: Allow object invokes from kernel clients Harshal Dev
2026-10-09  1:19   ` Amirreza Zarrabi
2026-10-12  9:38     ` Harshal Dev
2026-10-06 11:33 ` [PATCH v4 4/7] tee: Export uuidv5 generation for TEE backends Harshal Dev
2026-10-09  1:23   ` Amirreza Zarrabi
2026-10-12  9:45     ` Harshal Dev [this message]
2026-10-06 11:33 ` [PATCH v4 5/7] tee: qcomtee: Add support for registering QTEE services on TEE bus Harshal Dev
2026-10-09  2:10   ` Amirreza Zarrabi
2026-10-12  9:51     ` Harshal Dev
2026-10-06 11:33 ` [PATCH v4 6/7] firmware: qcom: Add support for TEE based EFI-var client driver Harshal Dev
2026-10-06 13:48   ` Dmitry Baryshkov
2026-10-12  9:36     ` Harshal Dev
2026-10-09  2:34   ` Amirreza Zarrabi
2026-10-12 10:34     ` Harshal Dev
2026-10-06 11:33 ` [PATCH v4 7/7] arm64: defconfig: Enable UefiSecApp TEE client driver for Qualcomm SoCs Harshal Dev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=447d71bd-b9fe-44c5-b4ac-375661bbbd92@oss.qualcomm.com \
    --to=harshal.dev@oss.qualcomm.com \
    --cc=amirreza.zarrabi@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=aneelaka@qti.qualcomm.com \
    --cc=apurupa@qti.qualcomm.com \
    --cc=basantk@qti.qualcomm.com \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=jens.wiklander@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk@kernel.org \
    --cc=kuldeep.singh@oss.qualcomm.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=op-tee@lists.trustedfirmware.org \
    --cc=sumit.garg@kernel.org \
    --cc=sumit.garg@oss.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®