Re: [PATCH v5 2/2] firmware: arm_scmi: Add qcom smc/hvc transport support

From: Nikunj Kela
Date: Mon Oct 09 2023 - 13:50:00 EST



On 10/9/2023 8:29 AM, Sudeep Holla wrote:
On Mon, Oct 09, 2023 at 07:59:08AM -0700, Nikunj Kela wrote:
On 10/9/2023 7:47 AM, Sudeep Holla wrote:
On Fri, Oct 06, 2023 at 09:42:06AM -0700, Nikunj Kela wrote:
This change adds the support for SCMI message exchange on Qualcomm
virtual platforms.

The hypervisor associates an object-id also known as capability-id
with each smc/hvc doorbell object. The capability-id is used to
identify the doorbell from the VM's capability namespace, similar
to a file-descriptor.

The hypervisor, in addition to the function-id, expects the capability-id
to be passed in x1 register when SMC/HVC call is invoked.

The capability-id is allocated by the hypervisor on bootup and is stored in
the shmem region by the firmware before starting Linux.

Since you are happy to move to signed value, I assume you are happy to loose
upper half of the range values ?

Anyways after Bjorn pointed out inconsistency, I am thinking of moving
all the values to unsigned long to work with both 32bit and 64bit.

Does the below delta on top of this patch works for you and makes sense?
This looks good to me. Will do some testing and float v6 with the changes
you suggested below. Thanks

Please refer or use the patch from [1] when reposting. I rebased on my
patch[2] that I posted few minutes back. I am trying to finalise the branch
and send PR in next couple of days, so please test and post sooner. Sorry
for the rush.

Validated the patch from [1] below on Qualcomm ARM64 virtual platform using SMC64 convention. Thanks!



--
Regards,
Sudeep
[1] https://git.kernel.org/sudeep.holla/h/for-next/scmi/updates
[2] https://lore.kernel.org/r/20231009152049.1428872-1-sudeep.holla@xxxxxxx