summaryrefslogtreecommitdiff
path: root/sys/dev/acpi
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2009-01-27 21:32:01 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2009-01-27 21:32:01 +0000
commit1a8b80642771bf0165549f9d34521c83a20504aa (patch)
tree418ea43bee879882970ab5a3fcbfb59b386e185d /sys/dev/acpi
parent65c606a06c6df0310d87d427bc17591862ad61c4 (diff)
Turns out the IRQ Information is optional in IRQ Descriptor resources, so
allow resources that are only 5 bytes long. Prevents dmesg spamming on the OQO.
Diffstat (limited to 'sys/dev/acpi')
-rw-r--r--sys/dev/acpi/acpiprt.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/acpi/acpiprt.c b/sys/dev/acpi/acpiprt.c
index 4a5adf41808..7359d0b3bfc 100644
--- a/sys/dev/acpi/acpiprt.c
+++ b/sys/dev/acpi/acpiprt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: acpiprt.c,v 1.30 2008/12/19 18:55:47 kettenis Exp $ */
+/* $OpenBSD: acpiprt.c,v 1.31 2009/01/27 21:32:00 kettenis Exp $ */
/*
* Copyright (c) 2006 Mark Kettenis <kettenis@openbsd.org>
*
@@ -275,7 +275,7 @@ acpiprt_prt_add(struct acpiprt_softc *sc, struct aml_value *v)
return;
}
- if (res.type != AML_OBJTYPE_BUFFER || res.length < 6) {
+ if (res.type != AML_OBJTYPE_BUFFER || res.length < 5) {
printf("invalid _CRS object\n");
aml_freevalue(&res);
return;
@@ -288,7 +288,7 @@ acpiprt_prt_add(struct acpiprt_softc *sc, struct aml_value *v)
if ((irq == 0 || irq == 2 || irq == 13) &&
!aml_evalname(sc->sc_acpi, node, "_PRS", 0, NULL, &res)){
if (res.type == AML_OBJTYPE_BUFFER &&
- res.length >= 6) {
+ res.length >= 5) {
aml_parse_resource(res.length, res.v_buffer,
acpiprt_chooseirq, &irq);
}
@@ -483,7 +483,7 @@ acpiprt_route_interrupt(int bus, int dev, int pin)
printf("no _CRS method\n");
return;
}
- if (res.type != AML_OBJTYPE_BUFFER || res.length < 6) {
+ if (res.type != AML_OBJTYPE_BUFFER || res.length < 5) {
printf("invalid _CRS object\n");
aml_freevalue(&res);
return;