Lines Matching refs:aior
487 struct ahci_ioreq *aior; in ahci_port_stop() local
494 TAILQ_FOREACH(aior, &p->iobhd, io_blist) { in ahci_port_stop()
498 error = blockif_cancel(p->bctx, &aior->io_req); in ahci_port_stop()
502 slot = aior->slot; in ahci_port_stop()
503 cfis = aior->cfis; in ahci_port_stop()
519 TAILQ_REMOVE(&p->iobhd, aior, io_blist); in ahci_port_stop()
524 STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); in ahci_port_stop()
612 ahci_build_iov(struct ahci_port *p, struct ahci_ioreq *aior, in ahci_build_iov() argument
615 struct blockif_req *breq = &aior->io_req; in ahci_build_iov()
619 assert(aior->len >= aior->done); in ahci_build_iov()
622 skip = aior->done; in ahci_build_iov()
623 left = aior->len - aior->done; in ahci_build_iov()
662 aior->done += todo; in ahci_build_iov()
663 aior->more = (aior->done < aior->len && i < prdtl); in ahci_build_iov()
669 struct ahci_ioreq *aior; in ahci_handle_rw() local
724 aior = STAILQ_FIRST(&p->iofhd); in ahci_handle_rw()
725 assert(aior != NULL); in ahci_handle_rw()
728 aior->cfis = cfis; in ahci_handle_rw()
729 aior->slot = slot; in ahci_handle_rw()
730 aior->len = len; in ahci_handle_rw()
731 aior->done = done; in ahci_handle_rw()
732 aior->readop = readop; in ahci_handle_rw()
733 breq = &aior->io_req; in ahci_handle_rw()
735 ahci_build_iov(p, aior, prdt, hdr->prdtl); in ahci_handle_rw()
741 TAILQ_INSERT_HEAD(&p->iobhd, aior, io_blist); in ahci_handle_rw()
756 struct ahci_ioreq *aior; in ahci_handle_flush() local
763 aior = STAILQ_FIRST(&p->iofhd); in ahci_handle_flush()
764 assert(aior != NULL); in ahci_handle_flush()
766 aior->cfis = cfis; in ahci_handle_flush()
767 aior->slot = slot; in ahci_handle_flush()
768 aior->len = 0; in ahci_handle_flush()
769 aior->done = 0; in ahci_handle_flush()
770 aior->more = 0; in ahci_handle_flush()
771 breq = &aior->io_req; in ahci_handle_flush()
781 TAILQ_INSERT_HEAD(&p->iobhd, aior, io_blist); in ahci_handle_flush()
865 struct ahci_ioreq *aior; in ahci_handle_next_trim() local
918 aior = STAILQ_FIRST(&p->iofhd); in ahci_handle_next_trim()
919 assert(aior != NULL); in ahci_handle_next_trim()
921 aior->cfis = cfis; in ahci_handle_next_trim()
922 aior->slot = slot; in ahci_handle_next_trim()
923 aior->len = len; in ahci_handle_next_trim()
924 aior->done = done; in ahci_handle_next_trim()
925 aior->dsm = buf; in ahci_handle_next_trim()
926 aior->more = (len != done); in ahci_handle_next_trim()
928 breq = &aior->io_req; in ahci_handle_next_trim()
940 TAILQ_INSERT_HEAD(&p->iobhd, aior, io_blist); in ahci_handle_next_trim()
1449 struct ahci_ioreq *aior; in atapi_read() local
1477 aior = STAILQ_FIRST(&p->iofhd); in atapi_read()
1478 assert(aior != NULL); in atapi_read()
1480 aior->cfis = cfis; in atapi_read()
1481 aior->slot = slot; in atapi_read()
1482 aior->len = len; in atapi_read()
1483 aior->done = done; in atapi_read()
1484 aior->readop = 1; in atapi_read()
1485 breq = &aior->io_req; in atapi_read()
1487 ahci_build_iov(p, aior, prdt, hdr->prdtl); in atapi_read()
1493 TAILQ_INSERT_HEAD(&p->iobhd, aior, io_blist); in atapi_read()
1947 struct ahci_ioreq *aior; in ata_ioreq_cb() local
1957 aior = br->br_param; in ata_ioreq_cb()
1958 p = aior->io_pr; in ata_ioreq_cb()
1959 cfis = aior->cfis; in ata_ioreq_cb()
1960 slot = aior->slot; in ata_ioreq_cb()
1968 dsm = aior->dsm; in ata_ioreq_cb()
1969 aior->dsm = NULL; in ata_ioreq_cb()
1976 TAILQ_REMOVE(&p->iobhd, aior, io_blist); in ata_ioreq_cb()
1981 STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); in ata_ioreq_cb()
1984 hdr->prdbc = aior->done; in ata_ioreq_cb()
1986 if (!err && aior->more) { in ata_ioreq_cb()
1989 aior->len, aior->done); in ata_ioreq_cb()
1991 ahci_handle_rw(p, slot, cfis, aior->done); in ata_ioreq_cb()
2021 struct ahci_ioreq *aior; in atapi_ioreq_cb() local
2030 aior = br->br_param; in atapi_ioreq_cb()
2031 p = aior->io_pr; in atapi_ioreq_cb()
2032 cfis = aior->cfis; in atapi_ioreq_cb()
2033 slot = aior->slot; in atapi_ioreq_cb()
2035 hdr = (struct ahci_cmd_hdr *)(p->cmd_lst + aior->slot * AHCI_CL_SIZE); in atapi_ioreq_cb()
2042 TAILQ_REMOVE(&p->iobhd, aior, io_blist); in atapi_ioreq_cb()
2047 STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); in atapi_ioreq_cb()
2050 hdr->prdbc = aior->done; in atapi_ioreq_cb()
2052 if (!err && aior->more) { in atapi_ioreq_cb()
2053 atapi_read(p, slot, cfis, aior->done); in atapi_ioreq_cb()