summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/i386/pci/pcibios.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arch/i386/pci/pcibios.c b/sys/arch/i386/pci/pcibios.c
index b21383c977d..3eac6f4ddad 100644
--- a/sys/arch/i386/pci/pcibios.c
+++ b/sys/arch/i386/pci/pcibios.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pcibios.c,v 1.25 2002/03/14 01:26:33 millert Exp $ */
+/* $OpenBSD: pcibios.c,v 1.26 2002/03/21 22:47:02 millert Exp $ */
/* $NetBSD: pcibios.c,v 1.5 2000/08/01 05:23:59 uch Exp $ */
/*
@@ -258,7 +258,13 @@ pcibios_pir_init(sc)
int i;
pirh = (struct pcibios_pir_header *)p = ISA_HOLE_VADDR(pa);
- if (pirh->signature != BIOS32_MAKESIG('$', 'P', 'I', 'R'))
+ /*
+ * Some laptops (such as the Toshiba Libretto L series)
+ * use _PIR instead of the standard $PIR for the signature
+ * so we check for that too.
+ */
+ if (pirh->signature != BIOS32_MAKESIG('$', 'P', 'I', 'R') &&
+ pirh->signature != BIOS32_MAKESIG('_', 'P', 'I', 'R'))
continue;
cksum = 0;