[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [RFC PATCH v4 6/8] xen/arm: scmi: introduce SCI SCMI SMC multi-agent driver
Hi Oleksii & Stefano, On 23/05/2025 21:06, Stefano Stabellini wrote: +SCMI SMC multi-agent support +============================ + +For enabling the ARM SCMI SMC multi-agent support (enabled by CONFIG_SCMI_SMC_MA) +the Xen specific SCMI Agent's configuration shell be provided in the Host DT +according to the SCMI compliant EL3 Firmware specification with +ARM SMC/HVC transport using property "xen,scmi-secondary-agents" under +the top-level "chosen" node: + +- xen,scmi-secondary-agents + + Defines a set of SCMI agents configuration supported by SCMI EL3 FW and + available for Xen. Each Agent defined as triple consisting of: + SCMI agent_id, + SMC/HVC function_id assigned for the agent transport ("arm,smc-id"), + phandle to SCMI SHM assigned for the agent transport ("arm,scmi-shmem"). + +As an example: + +chosen { + xen,scmi-secondary-agents = < + 1 0x82000003 &scmi_shm_1 + 2 0x82000004 &scmi_shm_2 + 3 0x82000005 &scmi_shm_3 + 4 0x82000006 &scmi_shm_4>; +}NIT: it should be }; Looking at scmi_probe, collect_agents, and the following SCMI SCMI_BASE_DISCOVER_AGENT request, I wonder: do we actually need this information? It looks like we can discover the agend_ids for every channel, I guess what we need to know is the shmem location for every channel? But the full list of shmem channel is available below thanks to the scmi-shmem nodes. So, we have the list of scmi-shmem anyway, and we can probe the agent_id. The only parameter left is the smc_id/func_id. Or maybe smc_id/func_id can be calculated from agent_id? I am asking mostly because if a user is supposed to add this xen,scmi-secondary-agents property, where are they supposed to find the smc_id/func_id information? It is important that we write down in this document how the user is expected to find out what 1 is 0x82000003 which is scmi_shm_1. I was actually going to write something similar to what you wrote. I think this is error-prone to let the user specify the full SMC ID. It would be better if this can be computed from a base + an agent ID. Cheers, -- Julien Grall
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |