summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64/dev/psychovar.h
diff options
context:
space:
mode:
authorHenric Jungheim <henric@cvs.openbsd.org>2003-05-16 06:59:13 +0000
committerHenric Jungheim <henric@cvs.openbsd.org>2003-05-16 06:59:13 +0000
commitcf599f158458425ae996473b91afe4d3ee83f2be (patch)
tree19aaec28d5c71cd038595bbeb031d75cfd9ffe47 /sys/arch/sparc64/dev/psychovar.h
parente150ffcc509a8e9b5e856394113e2afc39791dd5 (diff)
The sparc64 proms do not map all interrupt vectors. Instead of
trying to use the interrupt pin (or is it that the PCI function?) as the interrupt vector, this computes the vector from the PCI bus, slot, and pin. This will only change mappings on psycho-based machines (*not* sabre, i.e., IIi/e) and only for those vectors reported as nonsense INRs (INO 0-3). This should fix the mapping of non-bridge expansion cards on U60 and E450, and other psycho boxen. U30 seems to do its own thing.
Diffstat (limited to 'sys/arch/sparc64/dev/psychovar.h')
-rw-r--r--sys/arch/sparc64/dev/psychovar.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/arch/sparc64/dev/psychovar.h b/sys/arch/sparc64/dev/psychovar.h
index aa632dd65ac..0bae3d40d45 100644
--- a/sys/arch/sparc64/dev/psychovar.h
+++ b/sys/arch/sparc64/dev/psychovar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: psychovar.h,v 1.5 2003/02/17 01:29:20 henric Exp $ */
+/* $OpenBSD: psychovar.h,v 1.6 2003/05/16 06:59:12 henric Exp $ */
/* $NetBSD: psychovar.h,v 1.6 2001/07/20 00:07:13 eeh Exp $ */
/*
@@ -52,6 +52,12 @@ struct psycho_pbm {
int pp_nrange;
int pp_nintmap;
+ /* PCI Bus Module A or PCI Bus Module B */
+ int pp_id;
+#define PSYCHO_PBM_UNKNOWN 0
+#define PSYCHO_PBM_A 1
+#define PSYCHO_PBM_B 2
+
/* chipset tag for this instance */
pci_chipset_tag_t pp_pc;