aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAnup Patel <anup.patel@oss.qualcomm.com>2026-02-13 11:23:40 +0530
committerAnup Patel <anup@brainfault.org>2026-03-22 10:55:03 +0530
commite82d20122dcf97a357053636c1fc6d268bd4db5c (patch)
tree70b642a96f7aa9d09ecadacfba8e815e85c4475b /include
parentb55bb4cdcb298c12a316713d6cc7948973c14f9b (diff)
downloadopensbi-e82d20122dcf97a357053636c1fc6d268bd4db5c.tar.gz
opensbi-e82d20122dcf97a357053636c1fc6d268bd4db5c.tar.bz2
opensbi-e82d20122dcf97a357053636c1fc6d268bd4db5c.zip
lib: utils/irqchip: Add unique_id to plic, aplic, and imsic data
Add a 32-bit unique ID to plic, aplic, and imsic data which can be used to differentiate multiple irqchip devices. Signed-off-by: Anup Patel <anup.patel@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260213055342.3124872-7-anup.patel@oss.qualcomm.com Signed-off-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'include')
-rw-r--r--include/sbi_utils/irqchip/aplic.h1
-rw-r--r--include/sbi_utils/irqchip/imsic.h1
-rw-r--r--include/sbi_utils/irqchip/plic.h1
3 files changed, 3 insertions, 0 deletions
diff --git a/include/sbi_utils/irqchip/aplic.h b/include/sbi_utils/irqchip/aplic.h
index ad613778..3461d1c7 100644
--- a/include/sbi_utils/irqchip/aplic.h
+++ b/include/sbi_utils/irqchip/aplic.h
@@ -35,6 +35,7 @@ struct aplic_data {
struct sbi_irqchip_device irqchip;
struct sbi_dlist node;
/* Public members */
+ u32 unique_id;
unsigned long addr;
unsigned long size;
unsigned long num_idc;
diff --git a/include/sbi_utils/irqchip/imsic.h b/include/sbi_utils/irqchip/imsic.h
index 353cefec..88dd3cfb 100644
--- a/include/sbi_utils/irqchip/imsic.h
+++ b/include/sbi_utils/irqchip/imsic.h
@@ -24,6 +24,7 @@ struct imsic_regs {
};
struct imsic_data {
+ u32 unique_id;
bool targets_mmode;
u32 guest_index_bits;
u32 hart_index_bits;
diff --git a/include/sbi_utils/irqchip/plic.h b/include/sbi_utils/irqchip/plic.h
index 18aa7469..0dbf4ed3 100644
--- a/include/sbi_utils/irqchip/plic.h
+++ b/include/sbi_utils/irqchip/plic.h
@@ -17,6 +17,7 @@ struct plic_data {
/* Private members */
struct sbi_irqchip_device irqchip;
/* Public members */
+ u32 unique_id;
unsigned long addr;
unsigned long size;
unsigned long num_src;