summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDavid E. Garcia Porras <david.garcia@aheadcomputing.com>2026-06-08 18:22:54 +0530
committerAnup Patel <anup@brainfault.org>2026-06-10 18:13:10 +0530
commitd0ae6a91ff7d55d8b807b354ce2d02db556f274d (patch)
tree0b07364c375e5e9a182c0ccb53d83240a087b493 /lib
parent8570b938444d92d4557df7e03bd9cb83fdd4c2b1 (diff)
downloadopensbi-d0ae6a91ff7d55d8b807b354ce2d02db556f274d.tar.gz
opensbi-d0ae6a91ff7d55d8b807b354ce2d02db556f274d.zip
lib: sbi_mpxy: Enable MPXY channel MSI availability determination
Use sbi_irqchip_find_device_by_caps() to determine MSI availability for each MPXY channel based on MSI controller presence in the system instead of unconditionally disabling it. Signed-off-by: David E. Garcia Porras <david.garcia@aheadcomputing.com> Link: https://lore.kernel.org/r/20260608125257.3220114-3-anup.patel@oss.qualcomm.com Signed-off-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/sbi/sbi_mpxy.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/sbi/sbi_mpxy.c b/lib/sbi/sbi_mpxy.c
index 8daeb83d..3e0e0af6 100644
--- a/lib/sbi/sbi_mpxy.c
+++ b/lib/sbi/sbi_mpxy.c
@@ -13,6 +13,7 @@
#include <sbi/sbi_hart.h>
#include <sbi/sbi_hart_protection.h>
#include <sbi/sbi_heap.h>
+#include <sbi/sbi_irqchip.h>
#include <sbi/sbi_platform.h>
#include <sbi/sbi_mpxy.h>
#include <sbi/sbi_scratch.h>
@@ -255,11 +256,10 @@ static int domain_mpxy_state_data_setup(struct sbi_domain *dom,
return SBI_ENOMEM;
/*
- * TODO: Proper support for checking msi support from
- * platform. Currently disable msi and sse and use
- * polling
+ * TODO: Proper support for checking sse support from
+ * platform. Currently disable sse and use polling
*/
- ms->msi_avail = false;
+ ms->msi_avail = !!sbi_irqchip_find_device_by_caps(SBI_IRQCHIP_CAPS_MSI, NULL);
ms->sse_avail = false;
sbi_mpxy_shmem_disable(ms);