Lines Matching defs:aai
154 struct ataraid_array_info *aai = aux;
168 sc->sc_aai = aai; /* this data persists */
170 ld->sc_maxxfer = MAXPHYS * aai->aai_width; /* XXX */
171 ld->sc_secperunit = aai->aai_capacity;
177 switch (aai->aai_level) {
204 aai->aai_level);
210 ata_raid_type_name(aai->aai_type), level);
220 ld->sc_nheads = aai->aai_heads;
221 ld->sc_nsectors = aai->aai_sectors;
222 ld->sc_ncylinders = aai->aai_cylinders;
227 for (i = 0; i < aai->aai_ndisks; i++) {
228 adi = &aai->aai_disks[i];
244 if (i == aai->aai_ndisks) {
249 for (i = 0; i < aai->aai_ndisks; i++) {
340 struct ataraid_array_info *aai = sc->sc_aai;
353 adi = &aai->aai_disks[comp];
357 adi = &aai->aai_disks[++comp];
381 adi = &aai->aai_disks[++comp];
398 struct ataraid_array_info *aai = sc->sc_aai;
406 const int mirror = aai->aai_level & AAI_L_RAID1;
416 tbn = bn / aai->aai_interleave;
417 off = bn % aai->aai_interleave;
419 if (__predict_false(tbn == aai->aai_capacity /
420 aai->aai_interleave)) {
422 daddr_t sz = (aai->aai_capacity -
423 (tbn * aai->aai_interleave)) /
424 aai->aai_width;
426 cbn = ((tbn / aai->aai_width) * aai->aai_interleave) +
430 comp = tbn % aai->aai_width;
431 cbn = ((tbn / aai->aai_width) * aai->aai_interleave) +
433 rcount = uimin(bcount, dbtob(aai->aai_interleave - off));
440 adi = &aai->aai_disks[comp];
442 if (mirror && comp < aai->aai_width) {
443 comp += aai->aai_width;
467 if (mirror && !read && comp < aai->aai_width) {
468 comp += aai->aai_width;
469 adi = &aai->aai_disks[comp];
501 struct ataraid_array_info *aai = sc->sc_aai;
519 adi = &aai->aai_disks[cbp->cb_comp];
532 (aai->aai_level & AAI_L_RAID1) != 0 &&
533 cbp->cb_comp < aai->aai_width) {
534 cbp->cb_comp += aai->aai_width;
535 adi = &aai->aai_disks[cbp->cb_comp];
618 struct ataraid_array_info *aai = sc->sc_aai;
622 bi->bi_nodisk = aai->aai_ndisks;
630 struct ataraid_array_info *aai
638 switch (aai->aai_status) {
649 switch (aai->aai_level) {
652 bv->bv_stripe_size = to_kibytes(ld, aai->aai_interleave);
660 bv->bv_stripe_size = to_kibytes(ld, aai->aai_interleave);
665 bv->bv_nodisk = aai->aai_ndisks;
667 if (aai->aai_name[0] != '\0')
668 strlcpy(bv->bv_vendor, aai->aai_name, sizeof(bv->bv_vendor));
676 struct ataraid_array_info *aai = sc->sc_aai;
684 if (bd->bd_diskid > aai->aai_ndisks)
687 adi = &aai->aai_disks[bd->bd_diskid];
707 bd->bd_size = (wd->sc_capacity * ld->sc_secsize) - aai->aai_reserved;