aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/uart
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>2013-07-25 16:57:27 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>2013-07-25 16:57:27 +0000
commita177309ff983687ffc24b42c090f8043cc13a23a (patch)
tree263224b27239db3f1f75947be95238360c6f47cd /sys/dev/uart
parentba90c51af36a4b5268b83dba840e8f69a8d14fce (diff)
Notes
Diffstat (limited to 'sys/dev/uart')
-rw-r--r--sys/dev/uart/uart_bus_pci.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/dev/uart/uart_bus_pci.c b/sys/dev/uart/uart_bus_pci.c
index 062c3790c068..6419ebb89216 100644
--- a/sys/dev/uart/uart_bus_pci.c
+++ b/sys/dev/uart/uart_bus_pci.c
@@ -162,6 +162,7 @@ uart_pci_probe(device_t dev)
{
struct uart_softc *sc;
const struct pci_id *id;
+ int result;
sc = device_get_softc(dev);
@@ -174,9 +175,14 @@ uart_pci_probe(device_t dev)
return (ENXIO);
match:
+ result = uart_bus_probe(dev, 0, id->rclk, id->rid, 0);
+ /* Bail out on error. */
+ if (result > 0)
+ return (result);
+ /* Set/override the device description. */
if (id->desc)
device_set_desc(dev, id->desc);
- return (uart_bus_probe(dev, 0, id->rclk, id->rid, 0));
+ return (result);
}
DRIVER_MODULE(uart, pci, uart_pci_driver, uart_devclass, NULL, NULL);