mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2026-03-21 11:31:39 +00:00
lib: sbi: fix sse_event_inject() status setting
sse_event_inject() currently sets all status bits to 1 except for SBI_SSE_ATTR_STATUS_PENDING_OFFSET which it sets to zero. Instead of overwriting all the values of the status bits, sse_event_inject() is only expected to clear SBI_SSE_ATTR_STATUS_PENDING_OFFSET. Fix sse_event_inject() to only do the clearing. Signed-off-by: Charlie Jenkins <thecharlesjenkins@gmail.com> Reviewed-by: Anup Patel <anup@brainfault.org> Link: https://lore.kernel.org/r/20260302-event_inject_fix-v1-1-e88952b03aa4@gmail.com Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
committed by
Anup Patel
parent
b5348006e9
commit
6d5b2b9b05
@@ -548,7 +548,7 @@ static void sse_event_inject(struct sbi_sse_event *e,
|
||||
|
||||
sse_event_set_state(e, SBI_SSE_STATE_RUNNING);
|
||||
|
||||
e->attrs.status = ~BIT(SBI_SSE_ATTR_STATUS_PENDING_OFFSET);
|
||||
e->attrs.status &= ~BIT(SBI_SSE_ATTR_STATUS_PENDING_OFFSET);
|
||||
|
||||
i_ctx->a6 = regs->a6;
|
||||
i_ctx->a7 = regs->a7;
|
||||
|
||||
Reference in New Issue
Block a user