summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2005-04-29 01:11:48 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2005-04-29 01:11:48 +0000
commit2201bc56fafa66340baa78fc45282a157849bb9f (patch)
tree15e0101e60fed8f35c5bf8e583661f3b249f51c9 /sys/dev
parente4e1e86369639a6b1d4a5f378ee98e1d6daa4ea6 (diff)
Support ATI IXP 400 SATA, which is a Silicon Image 3112 in sheep's clothing.
Tested by Pedro la Peu <pedro at am-gen.org>. ok grange@
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/pci/pciide.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/sys/dev/pci/pciide.c b/sys/dev/pci/pciide.c
index 4a96f1913f0..5fd4b5e1006 100644
--- a/sys/dev/pci/pciide.c
+++ b/sys/dev/pci/pciide.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pciide.c,v 1.191 2005/04/20 00:57:25 jsg Exp $ */
+/* $OpenBSD: pciide.c,v 1.192 2005/04/29 01:11:46 jsg Exp $ */
/* $NetBSD: pciide.c,v 1.127 2001/08/03 01:31:08 tsutsui Exp $ */
/*
@@ -666,6 +666,16 @@ const struct pciide_product_desc pciide_ite_products[] = {
}
};
+const struct pciide_product_desc pciide_ati_products[] = {
+ { PCI_PRODUCT_ATI_IXP_SATA_400_1,
+ IDE_PCI_CLASS_OVERRIDE,
+ sii3112_chip_map
+ },
+ { PCI_PRODUCT_ATI_IXP_SATA_400_2,
+ IDE_PCI_CLASS_OVERRIDE,
+ sii3112_chip_map
+ }
+};
struct pciide_vendor_desc {
u_int32_t ide_vendor;
@@ -705,7 +715,9 @@ const struct pciide_vendor_desc pciide_vendors[] = {
{ PCI_VENDOR_NVIDIA, pciide_nvidia_products,
sizeof(pciide_nvidia_products)/sizeof(pciide_nvidia_products[0]) },
{ PCI_VENDOR_ITEXPRESS, pciide_ite_products,
- sizeof(pciide_ite_products)/sizeof(pciide_ite_products[0]) }
+ sizeof(pciide_ite_products)/sizeof(pciide_ite_products[0]) },
+ { PCI_VENDOR_ATI, pciide_ati_products,
+ sizeof(pciide_ati_products)/sizeof(pciide_ati_products[0]) }
};
/* options passed via the 'flags' config keyword */