Hi Valentina, On 9/12/24 10:00, Valentina Fernandez wrote:
Additional details on the Microchip vendor extension and the IPC function IDs described in the driver can be found in the following documentation: https://github.com/linux4microchip/microchip-sbi-ecall-extension The IPC remoteproc platform driver allows for starting and stopping firmware on the remote cluster(s) and facilitates RPMsg communication. The remoteproc attach/detach operations are also supported for use cases where the firmware is loaded by the Hart Software Services (zero-stage bootloader) before Linux boots.
Would you mind help clarifying the need for SBI_EXT_RPROC_STATE/STOP/...? If I'm not mistaken, the HW you are targeting is described in https://ww1.microchip.com/downloads/aemDocuments/documents/MPU64/ProductDocuments/SupportingCollateral/Asymmetric_Multi-Processing_on_PIC64GX_White_Paper.pdf (typo in the page 4, U51 -> E51) In SBI, do you put hart1-3 and hart4 into 2 separate domains? If not, I don't see why you can't just use HSM extension from SBI to kick rproc. Also, how stable is this microchip-sbi-ecall-extension? Is it subject to changes down the road? I don't see a probe() like SBI function, so the kernel kind of assume it can call those microchip extensions without causing unintended effects. This means those extension FIDs must be stable and can no longer change once this code is in. Perhaps checking-in the microchip SBI extensions to major SBI implementations such as openSBI first would be better? Bo