summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-09-29 05:25:34 +0000
committermav <mav@FreeBSD.org>2015-09-29 05:25:34 +0000
commit27f4e553cd0dc4dc6d3983f69d4d55be1bdf9739 (patch)
treeb069e0100c36b395fb653034124e906a466cf570 /sys/dev
parent004f6fe71e6fef0844b460c12bb478c4b774bec7 (diff)
downloadFreeBSD-src-27f4e553cd0dc4dc6d3983f69d4d55be1bdf9739.zip
FreeBSD-src-27f4e553cd0dc4dc6d3983f69d4d55be1bdf9739.tar.gz
MFC r288111: Allow AHCI driver attach to all known chips reporting RAID class.
Reported by: Michael BlackHeart <amdmiek@gmail.com>
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ahci/ahci_pci.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/ahci/ahci_pci.c b/sys/dev/ahci/ahci_pci.c
index 7b80807..1f5ef7b 100644
--- a/sys/dev/ahci/ahci_pci.c
+++ b/sys/dev/ahci/ahci_pci.c
@@ -326,6 +326,9 @@ ahci_probe(device_t dev)
pci_get_subclass(dev) == PCIS_STORAGE_SATA &&
pci_get_progif(dev) == PCIP_STORAGE_SATA_AHCI_1_0)
valid = 1;
+ else if (pci_get_class(dev) == PCIC_STORAGE &&
+ pci_get_subclass(dev) == PCIS_STORAGE_RAID)
+ valid = 2;
/* Is this a known AHCI chip? */
for (i = 0; ahci_ids[i].id != 0; i++) {
if (ahci_ids[i].id == devid &&
@@ -342,7 +345,7 @@ ahci_probe(device_t dev)
return (BUS_PROBE_DEFAULT);
}
}
- if (!valid)
+ if (valid != 1)
return (ENXIO);
device_set_desc_copy(dev, "AHCI SATA controller");
return (BUS_PROBE_DEFAULT);
OpenPOWER on IntegriCloud