Lines Matching defs:sed

261 	ohci_soft_ed_t *sed;
401 ohci_soft_ed_t *sed;
419 kmem_alloc(sizeof(*sed) * OHCI_ED_CHUNK, KM_SLEEP);
428 sed = &seds[i];
429 sed->ed = KERNADDR(&dma, offs);
430 sed->physaddr = DMAADDR(&dma, offs);
431 sed->dma = dma;
432 sed->offs = offs;
433 sed->next = sc->sc_freeeds;
435 sc->sc_freeeds = sed;
438 sed = sc->sc_freeeds;
439 sc->sc_freeeds = sed->next;
442 memset(sed->ed, 0, sizeof(*sed->ed));
443 sed->next = 0;
444 return sed;
448 ohci_free_sed_locked(ohci_softc_t *sc, ohci_soft_ed_t *sed)
453 sed->next = sc->sc_freeeds;
454 sc->sc_freeeds = sed;
458 ohci_free_sed(ohci_softc_t *sc, ohci_soft_ed_t *sed)
462 ohci_free_sed_locked(sc, sed);
812 ohci_soft_ed_t *sed, *psed;
903 sed = ohci_alloc_sed(sc);
904 if (sed == NULL) {
911 sc->sc_eds[i] = sed;
912 sed->ed->ed_flags |= HTOO32(OHCI_ED_SKIP);
917 sed->next = psed;
918 sed->ed->ed_nexted = HTOO32(psed->physaddr);
919 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
1581 ohci_soft_ed_t *sed = opipe->sed;
1584 sed->ed->ed_headp = HTOO32(p->physaddr |
1585 (O32TOH(sed->ed->ed_headp) & OHCI_TOGGLECARRY));
1586 usb_syncmem(&sed->dma,
1587 sed->offs + offsetof(ohci_ed_t, ed_headp),
1588 sizeof(sed->ed->ed_headp),
1835 ohci_add_ed(ohci_softc_t *sc, ohci_soft_ed_t *sed, ohci_soft_ed_t *head)
1838 DPRINTFN(8, "sed=%#jx head=%#jx", (uintptr_t)sed, (uintptr_t)head, 0,
1846 sed->next = head->next;
1847 sed->ed->ed_nexted = head->ed->ed_nexted;
1848 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_nexted),
1849 sizeof(sed->ed->ed_nexted),
1851 head->next = sed;
1852 head->ed->ed_nexted = HTOO32(sed->physaddr);
1862 ohci_rem_ed(ohci_softc_t *sc, ohci_soft_ed_t *sed, ohci_soft_ed_t *head)
1869 for (p = head; p != NULL && p->next != sed; p = p->next)
1873 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_nexted),
1874 sizeof(sed->ed->ed_nexted),
1876 p->next = sed->next;
1877 p->ed->ed_nexted = sed->ed->ed_nexted;
2048 ohci_dump_ed(ohci_softc_t *sc, ohci_soft_ed_t *sed)
2052 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
2055 uint32_t flags = O32TOH(sed->ed->ed_flags);
2056 DPRINTF("ED(%#jx) at 0x%08jx:", (uintptr_t)sed, sed->physaddr, 0, 0);
2067 DPRINTF(" tailp=0x%08jx", (u_long)O32TOH(sed->ed->ed_tailp),
2070 O32TOH(sed->ed->ed_headp), O32TOH(sed->ed->ed_nexted),
2071 !!(O32TOH(sed->ed->ed_headp) & OHCI_HALTED),
2072 !!(O32TOH(sed->ed->ed_headp) & OHCI_TOGGLECARRY));
2086 ohci_soft_ed_t *sed;
2103 sed = NULL;
2118 sed = ohci_alloc_sed(sc);
2119 if (sed == NULL)
2121 opipe->sed = sed;
2147 sed->ed->ed_flags = HTOO32(
2153 sed->ed->ed_headp = HTOO32(tdphys |
2155 sed->ed->ed_tailp = HTOO32(tdphys);
2156 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
2168 ohci_add_ed(sc, sed, sc->sc_ctrl_head);
2187 ohci_add_ed(sc, sed, sc->sc_bulk_head);
2199 if (sed != NULL)
2200 ohci_free_sed(sc, sed);
2214 ohci_soft_ed_t *sed = opipe->sed;
2220 sed->ed->ed_flags |= HTOO32(OHCI_ED_SKIP);
2221 if ((O32TOH(sed->ed->ed_tailp) & OHCI_HEADMASK) !=
2222 (O32TOH(sed->ed->ed_headp) & OHCI_HEADMASK)) {
2224 std = ohci_hash_find_td(sc, O32TOH(sed->ed->ed_headp));
2225 printf("ohci_close_pipe: pipe not empty sed=%p hd=%#x "
2226 "tl=%#x pipe=%p, std=%p\n", sed,
2227 (int)O32TOH(sed->ed->ed_headp),
2228 (int)O32TOH(sed->ed->ed_tailp),
2232 ohci_dump_ed(sc, sed);
2237 if ((O32TOH(sed->ed->ed_tailp) & OHCI_HEADMASK) !=
2238 (O32TOH(sed->ed->ed_headp) & OHCI_HEADMASK))
2242 ohci_rem_ed(sc, sed, head);
2246 (O32TOH(sed->ed->ed_headp) & OHCI_TOGGLECARRY) ? 1 : 0;
2247 ohci_free_sed_locked(sc, opipe->sed);
2266 ohci_soft_ed_t *sed = opipe->sed;
2271 DPRINTF("xfer=%#jx pipe=%#jx sed=%#jx", (uintptr_t)xfer,
2272 (uintptr_t)opipe, (uintptr_t)sed, 0);
2297 DPRINTFN(1, "stop ed=%#jx", (uintptr_t)sed, 0, 0, 0);
2298 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
2300 if (!(sed->ed->ed_flags & OHCI_HALTED)) {
2302 DPRINTFN(1, "pausing ed=%#jx", (uintptr_t)sed, 0, 0, 0);
2303 sed->ed->ed_flags |= HTOO32(OHCI_ED_SKIP);
2304 usb_syncmem(&sed->dma,
2305 sed->offs + offsetof(ohci_ed_t, ed_flags),
2306 sizeof(sed->ed->ed_flags),
2336 DPRINTFN(1, "halted ed=%#jx", (uintptr_t)sed, 0, 0, 0);
2358 DPRINTF("sed:", 0, 0, 0, 0);
2359 ohci_dump_ed(sc, sed);
2369 headp = O32TOH(sed->ed->ed_headp) & OHCI_HEADMASK;
2412 (int)O32TOH(sed->ed->ed_tailp), 0, 0);
2414 sed->ed->ed_headp = HTOO32(p->physaddr |
2415 (O32TOH(sed->ed->ed_headp) & OHCI_TOGGLECARRY));
2416 usb_syncmem(&sed->dma,
2417 sed->offs + offsetof(ohci_ed_t, ed_headp),
2418 sizeof(sed->ed->ed_headp),
2427 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_flags),
2428 sizeof(sed->ed->ed_flags),
2430 sed->ed->ed_flags &= HTOO32(~OHCI_ED_SKIP); /* remove hardware skip */
2431 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_flags),
2432 sizeof(sed->ed->ed_flags),
2796 ohci_soft_ed_t *sed;
2835 sed = opipe->sed;
2840 KASSERTMSG(OHCI_ED_GET_FA(O32TOH(sed->ed->ed_flags)) == dev->ud_addr,
2842 OHCI_ED_GET_FA(O32TOH(sed->ed->ed_flags)), dev->ud_addr);
2843 KASSERTMSG(OHCI_ED_GET_MAXP(O32TOH(sed->ed->ed_flags)) ==
2846 OHCI_ED_GET_MAXP(O32TOH(sed->ed->ed_flags)),
2934 ohci_dump_ed(sc, sed);
2941 sed->ed->ed_tailp = HTOO32(tail->physaddr);
2942 usb_syncmem(&sed->dma,
2943 sed->offs + offsetof(ohci_ed_t, ed_tailp),
2944 sizeof(sed->ed->ed_tailp),
2992 ohci_soft_ed_t *sed = opipe->sed;
2994 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_headp),
2995 sizeof(sed->ed->ed_headp),
2998 opipe->sed->ed->ed_headp &= HTOO32(~OHCI_TOGGLECARRY);
3000 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_headp),
3001 sizeof(sed->ed->ed_headp),
3077 ohci_soft_ed_t *sed;
3092 sed = opipe->sed;
3137 (int)O32TOH(sed->ed->ed_flags),
3145 ohci_dump_ed(sc, sed);
3155 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3157 sed->ed->ed_tailp = HTOO32(tail->physaddr);
3158 sed->ed->ed_flags &= HTOO32(~OHCI_ED_SKIP);
3159 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3270 ohci_soft_ed_t *sed = opipe->sed;
3331 ohci_dump_ed(sc, sed);
3338 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3340 sed->ed->ed_tailp = HTOO32(tail->physaddr);
3341 sed->ed->ed_flags &= HTOO32(~OHCI_ED_SKIP);
3342 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3370 ohci_soft_ed_t *p, *sed = opipe->sed;
3378 usb_syncmem(&sed->dma, sed->offs,
3379 sizeof(*sed->ed), BUS_DMASYNC_POSTWRITE | BUS_DMASYNC_POSTREAD);
3380 sed->ed->ed_flags |= HTOO32(OHCI_ED_SKIP);
3381 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_flags),
3382 sizeof(sed->ed->ed_flags),
3384 if ((O32TOH(sed->ed->ed_tailp) & OHCI_HEADMASK) !=
3385 (O32TOH(sed->ed->ed_headp) & OHCI_HEADMASK))
3388 for (p = sc->sc_eds[pos]; p && p->next != sed; p = p->next)
3391 p->next = sed->next;
3392 p->ed->ed_nexted = sed->ed->ed_nexted;
3401 ohci_free_sed_locked(sc, opipe->sed);
3410 ohci_soft_ed_t *hsed, *sed = opipe->sed;
3452 sed->next = hsed->next;
3453 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_nexted),
3454 sizeof(sed->ed->ed_nexted),
3456 sed->ed->ed_nexted = hsed->ed->ed_nexted;
3457 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_nexted),
3458 sizeof(sed->ed->ed_nexted),
3461 hsed->next = sed;
3465 hsed->ed->ed_nexted = HTOO32(sed->physaddr);
3571 ohci_soft_ed_t *sed = opipe->sed;
3731 ohci_dump_ed(sc, sed);
3735 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3737 sed->ed->ed_tailp = HTOO32(tail->physaddr);
3738 sed->ed->ed_flags &= HTOO32(~OHCI_ED_SKIP);
3739 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3748 ohci_soft_ed_t *sed;
3766 sed = opipe->sed;
3767 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3769 sed->ed->ed_flags |= HTOO32(OHCI_ED_SKIP); /* force hardware skip */
3770 usb_syncmem(&sed->dma, sed->offs + offsetof(ohci_ed_t, ed_flags),
3771 sizeof(sed->ed->ed_flags),
3791 sed->ed->ed_headp = HTOO32(sitd->physaddr); /* unlink TDs */
3792 sed->ed->ed_flags &= HTOO32(~OHCI_ED_SKIP); /* remove hardware skip */
3793 usb_syncmem(&sed->dma, sed->offs, sizeof(*sed->ed),
3826 ohci_add_ed(sc, opipe->sed, sc->sc_isoc_head);