summaryrefslogtreecommitdiff
path: root/sys/dev/ata/ata-raid.c
diff options
context:
space:
mode:
authorSøren Schmidt <sos@FreeBSD.org>2002-03-27 22:05:38 +0000
committerSøren Schmidt <sos@FreeBSD.org>2002-03-27 22:05:38 +0000
commit5f3950daa4d233338bfaece6a5b08b0cf0529913 (patch)
tree3df912519fc47a394bd9d023f05d8ffafdee0dc1 /sys/dev/ata/ata-raid.c
parentcd430164f17e4e18d235c7f1a550c9a8b49726ad (diff)
Notes
Diffstat (limited to 'sys/dev/ata/ata-raid.c')
-rw-r--r--sys/dev/ata/ata-raid.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/ata/ata-raid.c b/sys/dev/ata/ata-raid.c
index 5cd97ac26f02..c479093fb9dc 100644
--- a/sys/dev/ata/ata-raid.c
+++ b/sys/dev/ata/ata-raid.c
@@ -879,6 +879,8 @@ ar_highpoint_read_conf(struct ad_softc *adp, struct ar_softc **raidp)
switch (info->type) {
case HPT_T_RAID0:
+ if ((info->order & (HPT_O_RAID0|HPT_O_OK))==(HPT_O_RAID0|HPT_O_OK))
+ goto highpoint_raid1;
if (info->order & (HPT_O_RAID0 | HPT_O_RAID1))
goto highpoint_raid01;
if (raid->magic_0 && raid->magic_0 != info->magic_0)
@@ -892,6 +894,7 @@ ar_highpoint_read_conf(struct ad_softc *adp, struct ar_softc **raidp)
break;
case HPT_T_RAID1:
+highpoint_raid1:
if (raid->magic_0 && raid->magic_0 != info->magic_0)
continue;
raid->magic_0 = info->magic_0;
@@ -1006,9 +1009,9 @@ ar_highpoint_write_conf(struct ar_softc *rdp)
break;
case AR_F_RAID1:
- config->type = HPT_T_RAID1;
+ config->type = HPT_T_RAID0;
strcpy(config->name_2, "RAID 1");
- config->disk_number = (disk < rdp->width) ? disk : disk + 9;
+ config->disk_number = (disk < rdp->width) ? disk : disk + 5;
config->order = HPT_O_RAID0 | HPT_O_OK;
break;