summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata-raid.c
diff options
context:
space:
mode:
authorsos <sos@FreeBSD.org>2003-01-27 09:04:29 +0000
committersos <sos@FreeBSD.org>2003-01-27 09:04:29 +0000
commit6d3ace00e49004eacf93fadfa698d9aeb55ef142 (patch)
tree1e4653f12f5af9dbbd1526e68ccc6a080fed8931 /sys/dev/ata/ata-raid.c
parente5f71e4b1ba2c5a960df3bbcdd88689ab8d59d51 (diff)
downloadFreeBSD-src-6d3ace00e49004eacf93fadfa698d9aeb55ef142.zip
FreeBSD-src-6d3ace00e49004eacf93fadfa698d9aeb55ef142.tar.gz
Update the code that deals with disk enclosures:
Properly handle the newer Promise SuperSwap 1000 enclosures. Print out what kind of enclosure was found in the probe. Misc cleanups in the enclosure handling code. Sponsored by: Advanis Inc.
Diffstat (limited to 'sys/dev/ata/ata-raid.c')
-rw-r--r--sys/dev/ata/ata-raid.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/dev/ata/ata-raid.c b/sys/dev/ata/ata-raid.c
index 2c3fb19..62f5a9d 100644
--- a/sys/dev/ata/ata-raid.c
+++ b/sys/dev/ata/ata-raid.c
@@ -228,6 +228,8 @@ ar_attach_raid(struct ar_softc *rdp, int update)
else
printf(" %d FREE ", disk);
ad_print(AD_SOFTC(rdp->disks[disk]));
+ printf(" ");
+ ata_enclosure_print(AD_SOFTC(rdp->disks[disk])->device);
}
else if (rdp->disks[disk].flags & AR_DF_ASSIGNED)
printf(" %d DOWN\n", disk);
@@ -396,7 +398,7 @@ ata_raid_delete(int array)
for (disk = 0; disk < rdp->total_disks; disk++) {
if ((rdp->disks[disk].flags&AR_DF_PRESENT) && rdp->disks[disk].device) {
AD_SOFTC(rdp->disks[disk])->flags &= ~AD_F_RAID_SUBDISK;
- ata_drawerleds(rdp->disks[disk].device, ATA_LED_GREEN);
+ ata_enclosure_leds(rdp->disks[disk].device, ATA_LED_GREEN);
rdp->disks[disk].flags = 0;
}
}
@@ -768,9 +770,9 @@ ar_config_changed(struct ar_softc *rdp, int writeback)
}
if ((rdp->disks[disk].flags&AR_DF_PRESENT) && rdp->disks[disk].device) {
if (rdp->disks[disk].flags & AR_DF_ONLINE)
- ata_drawerleds(rdp->disks[disk].device, ATA_LED_GREEN);
+ ata_enclosure_leds(rdp->disks[disk].device, ATA_LED_GREEN);
else
- ata_drawerleds(rdp->disks[disk].device, ATA_LED_RED);
+ ata_enclosure_leds(rdp->disks[disk].device, ATA_LED_RED);
}
}
if (writeback) {
@@ -804,7 +806,7 @@ ar_rebuild(void *arg)
#endif
continue;
}
- ata_drawerleds(rdp->disks[disk].device, ATA_LED_ORANGE);
+ ata_enclosure_leds(rdp->disks[disk].device, ATA_LED_ORANGE);
count++;
}
}
OpenPOWER on IntegriCloud