This extension replaces the legacy extension (EID #0x04). The other IPI related
legacy extension(0x3) is deprecated now. All the functions in this extension
follow the hart_mask
as defined in the binary encoding section.
struct sbiret sbi_send_ipi(unsigned long hart_mask,
unsigned long hart_mask_base)
Send an inter-processor interrupt to all the harts defined in hart_mask. Interprocessor interrupts manifest at the receiving harts as the supervisor software interrupts.
The possible error codes returned in sbiret.error
are shown in the
IPI Send Errors below.
Error code | Description |
---|---|
SBI_SUCCESS |
IPI was sent to all the targeted harts successfully. |
SBI_ERR_INVALID_PARAM |
At least one hartid constructed from |
SBI_ERR_FAILED |
The request failed for unspecified or unknown other reasons. |