Hi Julien,

> On 24 Sep 2024, at 19:31, Julien Grall <jul...@xen.org> wrote:
> 
> Hi Bertrand,
> 
> On 24/09/2024 09:16, Bertrand Marquis wrote:
>>> On 22 Sep 2024, at 11:07, Julien Grall <jul...@xen.org> wrote:
>>> 
>>> Hi,
>>> 
>>> On 19/09/2024 14:19, Bertrand Marquis wrote:
>>>> Store the list of ABI we need in a list and go through the list instead
>>>> of having a list of conditions inside the code.
>>>> No functional change.
>>>> Signed-off-by: Bertrand Marquis <bertrand.marq...@arm.com>
>>>> ---
>>>>  xen/arch/arm/tee/ffa.c | 61 +++++++++++++++++++++---------------------
>>>>  1 file changed, 30 insertions(+), 31 deletions(-)
>>>> diff --git a/xen/arch/arm/tee/ffa.c b/xen/arch/arm/tee/ffa.c
>>>> index 7c84aa6aa43d..7ff2529b2055 100644
>>>> --- a/xen/arch/arm/tee/ffa.c
>>>> +++ b/xen/arch/arm/tee/ffa.c
>>>> @@ -74,6 +74,24 @@
>>>>  /* Negotiated FF-A version to use with the SPMC, 0 if not there or 
>>>> supported */
>>>>  static uint32_t __ro_after_init ffa_fw_version;
>>>>  +/* List of ABI we use from the firmware */
>>>> +static const uint32_t ffa_fw_feat_needed[] = {
>>>> +    FFA_VERSION,
>>>> +    FFA_FEATURES,
>>>> +    FFA_NOTIFICATION_BITMAP_CREATE,
>>>> +    FFA_NOTIFICATION_BITMAP_DESTROY,
>>>> +    FFA_PARTITION_INFO_GET,
>>>> +    FFA_NOTIFICATION_INFO_GET_64,
>>>> +    FFA_NOTIFICATION_GET,
>>>> +    FFA_RX_RELEASE,
>>>> +    FFA_RXTX_MAP_64,
>>>> +    FFA_RXTX_UNMAP,
>>>> +    FFA_MEM_SHARE_32,
>>>> +    FFA_MEM_SHARE_64,
>>>> +    FFA_MEM_RECLAIM,
>>>> +    FFA_MSG_SEND_DIRECT_REQ_32,
>>>> +    FFA_MSG_SEND_DIRECT_REQ_64,
>>>> +};
>>> 
>>> NIT: As we are creating an array, could be take the opportunity to provide 
>>> a name for each feature (we could use macro for that)? This would make 
>>> easier for the user to know which feature is missing.
>> In fact those are not "features" per say but ABI we need to use with the 
>> firmware so maybe i should first rename the variable to say abi instead of 
>> feat.
> 
> Thanks for the clarification! With that in mind...
> 
>> Now we could create some features out of those as in practice several ABIs 
>> are needed to be able to use one feature (for example notifications support 
>> require the INFO_GET and the GET).
>> In your mind you wanted to have something like:
>> "Version", FFA_VERSION
>> "Direct Messages", FFA_MSG_SEND_DIRECT_REQ_32,
>> "Direct Messages", FFA_MSG_SEND_DIRECT_REQ_64
>> So that we could print a more meaningfull name or would you be ok with just 
>> printing "FFA_MSG_SEND_DIRECT_REQ_32" ?
> 
> ... I was more thinking about printing which ABI is missing. This is more 
> helpful to the user than knowning which features will be missing.
> 
> This has also the advantage that we can use macro to generate the names.

Ok then i will build a table of strings of the ABI names and use that to say 
what ABI is not supported when there is one.

Cheers
Bertrand

> 
> Cheers,
> 
> -- 
> Julien Grall
> 


Reply via email to