Lines Matching defs:sitd

731 	ohci_soft_itd_t *sitd;
749 kmem_alloc(sizeof(*sitd) * OHCI_ITD_CHUNK, KM_SLEEP);
755 sitd = &sitds[i];
756 sitd->itd = KERNADDR(&dma, offs);
757 sitd->physaddr = DMAADDR(&dma, offs);
758 sitd->dma = dma;
759 sitd->offs = offs;
760 sitd->nextitd = sc->sc_freeitds;
762 sc->sc_freeitds = sitd;
766 sitd = sc->sc_freeitds;
767 sc->sc_freeitds = sitd->nextitd;
770 memset(sitd->itd, 0, sizeof(*sitd->itd));
771 sitd->nextitd = NULL;
772 sitd->xfer = NULL;
775 sitd->isdone = true;
778 return sitd;
782 ohci_free_sitd_locked(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
786 DPRINTFN(10, "sitd=%#jx", (uintptr_t)sitd, 0, 0, 0);
788 KASSERT(sitd->isdone);
791 sitd->isdone = false;
794 sitd->nextitd = sc->sc_freeitds;
795 sc->sc_freeitds = sitd;
799 ohci_free_sitd(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
805 ohci_free_sitd_locked(sc, sitd);
1446 ohci_soft_itd_t *sitd, *sidone, *sitdnext;
1492 sitd = ohci_hash_find_itd(sc, done);
1493 if (sitd != NULL) {
1494 usb_syncmem(&sitd->dma, sitd->offs, sizeof(*sitd->itd),
1496 sitd->dnext = sidone;
1497 done = O32TOH(sitd->itd->itd_nextitd);
1498 sidone = sitd;
1499 DPRINTFN(5, "add ITD %#jx", (uintptr_t)sitd, 0, 0, 0);
1605 for (sitd = sidone; sitd; sitd = sitd->dnext)
1606 ohci_dump_itd(sc, sitd);
1611 for (sitd = sidone; sitd != NULL; sitd = sitdnext) {
1612 xfer = sitd->xfer;
1613 sitdnext = sitd->dnext;
1614 DPRINTFN(1, "sitd=%#jx xfer=%#jx hcpriv=%#jx", (uintptr_t)sitd,
1627 KASSERT(!sitd->isdone);
1629 sitd->isdone = true;
1631 if (sitd->flags & OHCI_CALL_DONE) {
1640 for (i = 0, sitd = xfer->ux_hcpriv;;
1641 sitd = next) {
1642 next = sitd->nextitd;
1644 usb_syncmem(&sitd->dma, sitd->offs, sizeof(*sitd->itd),
1647 if (OHCI_ITD_GET_CC(O32TOH(sitd->
1655 sitd->itd->itd_flags));
1657 len = O16TOH(sitd->
1669 if (sitd->flags & OHCI_CALL_DONE)
1671 ohci_hash_rem_itd(sc, sitd);
1674 ohci_hash_rem_itd(sc, sitd);
1931 ohci_hash_add_itd(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
1933 int h = HASH(sitd->physaddr);
1939 DPRINTFN(10, "sitd=%#jx physaddr=0x%08jx",
1940 (uintptr_t)sitd, (u_long)sitd->physaddr, 0, 0);
1942 LIST_INSERT_HEAD(&sc->sc_hash_itds[h], sitd, hnext);
1947 ohci_hash_rem_itd(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
1954 DPRINTFN(10, "sitd=%#jx physaddr=0x%08jx", (uintptr_t)sitd,
1955 sitd->physaddr, 0, 0);
1957 LIST_REMOVE(sitd, hnext);
1964 ohci_soft_itd_t *sitd;
1966 for (sitd = LIST_FIRST(&sc->sc_hash_itds[h]);
1967 sitd != NULL;
1968 sitd = LIST_NEXT(sitd, hnext))
1969 if (sitd->physaddr == a)
1970 return sitd;
2009 ohci_dump_itd(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
2013 usb_syncmem(&sitd->dma, sitd->offs, sizeof(*sitd->itd),
2016 uint32_t flags = O32TOH(sitd->itd->itd_flags);
2017 DPRINTF("ITD(%#jx) at 0x%08jx", (uintptr_t)sitd, sitd->physaddr, 0, 0);
2022 O32TOH(sitd->itd->itd_bp0),
2023 O32TOH(sitd->itd->itd_nextitd),
2024 O32TOH(sitd->itd->itd_be), 0);
2028 O16TOH(sitd->itd->itd_offset[0]),
2029 O16TOH(sitd->itd->itd_offset[1]),
2030 O16TOH(sitd->itd->itd_offset[2]),
2031 O16TOH(sitd->itd->itd_offset[3]));
2034 O16TOH(sitd->itd->itd_offset[4]),
2035 O16TOH(sitd->itd->itd_offset[5]),
2036 O16TOH(sitd->itd->itd_offset[6]),
2037 O16TOH(sitd->itd->itd_offset[7]));
2041 ohci_dump_itds(ohci_softc_t *sc, ohci_soft_itd_t *sitd)
2043 for (; sitd; sitd = sitd->nextitd)
2044 ohci_dump_itd(sc, sitd);
2088 ohci_soft_itd_t *sitd;
2123 sitd = ohci_alloc_sitd(sc);
2124 if (sitd == NULL)
2127 opipe->tail.itd = sitd;
2128 sitd->held = &opipe->tail.itd;
2129 tdphys = sitd->physaddr;
3487 ohci_soft_itd_t *sitd;
3506 sitd = ohci_alloc_sitd(sc);
3507 if (sitd == NULL) {
3511 ox->ox_sitds[i] = sitd;
3512 sitd->held = &ox->ox_sitds[i];
3513 sitd->xfer = xfer;
3514 sitd->flags = 0;
3572 ohci_soft_itd_t *sitd, *nsitd, *tail;
3607 sitd = opipe->tail.itd;
3609 ox->ox_sitds[0] = sitd;
3610 sitd->held = &ox->ox_sitds[0];
3620 xfer->ux_hcpriv = sitd;
3656 sitd->itd->itd_flags = HTOO32(
3662 sitd->itd->itd_bp0 = HTOO32(bp0);
3663 sitd->itd->itd_nextitd = HTOO32(nsitd->physaddr);
3664 sitd->itd->itd_be = HTOO32(end);
3665 sitd->nextitd = nsitd;
3666 sitd->xfer = xfer;
3667 sitd->flags = 0;
3669 sitd->isdone = false;
3671 ohci_hash_add_itd(sc, sitd);
3672 usb_syncmem(&sitd->dma, sitd->offs, sizeof(*sitd->itd),
3675 sitd = nsitd;
3680 sitd->itd->itd_offset[ncur] = HTOO16(OHCI_ITD_MK_OFFS(offs));
3696 sitd->itd->itd_flags = HTOO32(
3702 sitd->itd->itd_bp0 = HTOO32(bp0);
3703 sitd->itd->itd_nextitd = HTOO32(tail->physaddr);
3704 sitd->itd->itd_be = HTOO32(end);
3705 sitd->nextitd = tail;
3706 sitd->xfer = xfer;
3707 sitd->flags = OHCI_CALL_DONE;
3709 sitd->isdone = false;
3711 ohci_hash_add_itd(sc, sitd);
3712 usb_syncmem(&sitd->dma, sitd->offs, sizeof(*sitd->itd),
3749 ohci_soft_itd_t *sitd;
3774 sitd = xfer->ux_hcpriv;
3775 KASSERT(sitd);
3779 for (; sitd->xfer == xfer; sitd = sitd->nextitd) {
3780 ohci_hash_rem_itd(sc, sitd);
3782 DPRINTFN(1, "abort sets done sitd=%#jx", (uintptr_t)sitd,
3784 sitd->isdone = true;
3791 sed->ed->ed_headp = HTOO32(sitd->physaddr); /* unlink TDs */