aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2023-09-28 17:51:34 +0200
committerHelge Deller <deller@gmx.de>2023-09-28 17:51:34 +0200
commit8c990699bed57b3c1a122fc762b37edd96cabbf0 (patch)
treeb56806ea11cb9fb1bb4de789471cd7de2e05e6b3
parent7a54c339b768785061d0f7d35510f28b0969c8d9 (diff)
downloadseabios-hppa-8c990699bed57b3c1a122fc762b37edd96cabbf0.zip
seabios-hppa-8c990699bed57b3c1a122fc762b37edd96cabbf0.tar.gz
seabios-hppa-8c990699bed57b3c1a122fc762b37edd96cabbf0.tar.bz2
fix building IRT
-rw-r--r--src/parisc/parisc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/parisc/parisc.c b/src/parisc/parisc.c
index 469f40f..bdd92db 100644
--- a/src/parisc/parisc.c
+++ b/src/parisc/parisc.c
@@ -1573,6 +1573,7 @@ static int pdc_lan_station_id(unsigned int *arg)
#endif
#define IRT_TABLE_ENTRIES 24
#define IOSAPIC_HPA 0xfffffffffed30800ULL
+#define ELROY_IRQS 8 /* IOSAPIC IRQs */
static int irt_table_entries;
static u32 irt_table[IRT_TABLE_ENTRIES * 16/sizeof(u32)];
@@ -1601,6 +1602,8 @@ static void iosapic_table_setup(void)
*p++ = (irq_devno << 24) | (bus_id << 16) | (0 << 8) | (iosapic_intin << 0);
*p++ = IOSAPIC_HPA >> 32;
*p++ = (u32) IOSAPIC_HPA;
+ iosapic_intin++;
+ iosapic_intin &= (ELROY_IRQS - 1 );
}
}