diff options
author | mav <mav@FreeBSD.org> | 2010-02-01 15:22:22 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2010-02-01 15:22:22 +0000 |
commit | 8cd8f36cedbb9bded9147d3d2bddd52c4dcf37ae (patch) | |
tree | e03adadb6bc684c206536b94d954d76303c24555 | |
parent | d774a108f2b8f0d231be8b8813c9e69089e2f86c (diff) | |
download | FreeBSD-src-8cd8f36cedbb9bded9147d3d2bddd52c4dcf37ae.zip FreeBSD-src-8cd8f36cedbb9bded9147d3d2bddd52c4dcf37ae.tar.gz |
NetCell is a PCI hardware RAID without cable and mode setting.
-rw-r--r-- | sys/dev/ata/chipsets/ata-netcell.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/dev/ata/chipsets/ata-netcell.c b/sys/dev/ata/chipsets/ata-netcell.c index f6a7545..8e5a9cb 100644 --- a/sys/dev/ata/chipsets/ata-netcell.c +++ b/sys/dev/ata/chipsets/ata-netcell.c @@ -54,6 +54,7 @@ __FBSDID("$FreeBSD$"); /* local prototypes */ static int ata_netcell_chipinit(device_t dev); static int ata_netcell_ch_attach(device_t dev); +static int ata_netcell_setmode(device_t dev, int target, int mode); /* * NetCell chipset support functions @@ -80,7 +81,7 @@ ata_netcell_chipinit(device_t dev) return ENXIO; ctlr->ch_attach = ata_netcell_ch_attach; - ctlr->setmode = ata_generic_setmode; + ctlr->setmode = ata_netcell_setmode; return 0; } @@ -95,7 +96,16 @@ ata_netcell_ch_attach(device_t dev) /* the NetCell only supports 16 bit PIO transfers */ ch->flags |= ATA_USE_16BIT; + /* It is a hardware RAID without cable. */ + ch->flags |= ATA_CHECKS_CABLE; return 0; } +static int +ata_netcell_setmode(device_t dev, int target, int mode) +{ + + return (min(mode, ATA_UDMA6)); +} + ATA_DECLARE_DRIVER(ata_netcell); |