aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/uart/uart_cpu_acpi.c
diff options
context:
space:
mode:
authorColin Percival <cperciva@FreeBSD.org>2022-03-29 07:41:37 +0000
committerColin Percival <cperciva@FreeBSD.org>2022-03-31 23:02:24 +0000
commitad93649d230428561db983153c546b39336fa4f1 (patch)
tree7eefc51f86adcfb5e9eb7a70bfa6b1f2c4ddd94d /sys/dev/uart/uart_cpu_acpi.c
parentc0f846ff235296249271b1235ff6a52b7d23cefb (diff)
Diffstat (limited to 'sys/dev/uart/uart_cpu_acpi.c')
-rw-r--r--sys/dev/uart/uart_cpu_acpi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/dev/uart/uart_cpu_acpi.c b/sys/dev/uart/uart_cpu_acpi.c
index 1e46462fc58a..68f743c8e8d2 100644
--- a/sys/dev/uart/uart_cpu_acpi.c
+++ b/sys/dev/uart/uart_cpu_acpi.c
@@ -36,6 +36,8 @@ __FBSDID("$FreeBSD$");
#include <machine/bus.h>
+#include <dev/pci/pcireg.h>
+
#include <dev/uart/uart.h>
#include <dev/uart/uart_bus.h>
#include <dev/uart/uart_cpu.h>
@@ -182,6 +184,11 @@ uart_cpu_acpi_spcr(int devtype, struct uart_devinfo *di)
(int)spcr->BaudRate);
goto out;
}
+ if (spcr->PciVendorId != PCIV_INVALID &&
+ spcr->PciDeviceId != PCIV_INVALID) {
+ di->pci_info.vendor = spcr->PciVendorId;
+ di->pci_info.device = spcr->PciDeviceId;
+ }
/* Apply device tweaks. */
if ((cd->cd_quirks & UART_F_IGNORE_SPCR_REGSHFT) ==