diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2020-04-10 21:25:01 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2020-04-10 21:25:01 +0000 |
commit | 2831b432f846a64b3daa93a4caa17e89fecc2366 (patch) | |
tree | d118c6b22e99d8f8d38b0a21d040b008c38ca37c /sys/dev/acpi | |
parent | c337af36932bcaa6d7c313ce19ac8dc71c47c9d7 (diff) |
The Raspberry Pi4 (suing UEFI firmware in ACPI mode) uses QWord()
resource descriptors. Add support for this.
ok deraadt@
Diffstat (limited to 'sys/dev/acpi')
-rw-r--r-- | sys/dev/acpi/xhci_acpi.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/dev/acpi/xhci_acpi.c b/sys/dev/acpi/xhci_acpi.c index bd2c89cb387..b2a32eb0f77 100644 --- a/sys/dev/acpi/xhci_acpi.c +++ b/sys/dev/acpi/xhci_acpi.c @@ -1,4 +1,4 @@ -/* $OpenBSD: xhci_acpi.c,v 1.1 2018/07/02 11:23:19 kettenis Exp $ */ +/* $OpenBSD: xhci_acpi.c,v 1.2 2020/04/10 21:25:00 kettenis Exp $ */ /* * Copyright (c) 2018 Mark Kettenis * @@ -153,6 +153,13 @@ xhci_acpi_parse_resources(int crsidx, union acpi_resource *crs, void *arg) sc->sc_size = crs->lr_m32fixed._len; } break; + case LR_QWORD: + /* XHCI registers are specified by the first resource. */ + if (sc->sc_size == 0) { + sc->sc_addr = crs->lr_qword._min; + sc->sc_size = crs->lr_qword._len; + } + break; case LR_EXTIRQ: sc->sc_irq = crs->lr_extirq.irq[0]; sc->sc_irq_flags = crs->lr_extirq.flags; |