Lines Matching defs:sc_cblk
80 struct bcm_dmac_conblk *sc_cblk;
215 (void **)&sc->sc_cblk, BUS_DMA_WAITOK);
220 KASSERT(sc->sc_cblk != NULL);
222 memset(sc->sc_cblk, 0, PAGE_SIZE);
231 error = bus_dmamap_load(sc->sc.sc_dmat, sc->sc_dmamap, sc->sc_cblk,
288 sc->sc_cblk[seg].cb_ti =
290 sc->sc_cblk[seg].cb_txfr_len =
295 KASSERTMSG((sc->sc_cblk[seg].cb_txfr_len & 0x3) == 0,
296 "seg %zu len %d", seg, sc->sc_cblk[seg].cb_txfr_len);
298 sc->sc_cblk[seg].cb_ti |= DMAC_TI_DEST_INC;
303 if ((sc->sc_cblk[seg].cb_txfr_len & 0xf) == 0)
304 sc->sc_cblk[seg].cb_ti |= DMAC_TI_DEST_WIDTH;
305 sc->sc_cblk[seg].cb_ti |= DMAC_TI_SRC_DREQ;
306 sc->sc_cblk[seg].cb_source_ad = ad_sdhcdata;
307 sc->sc_cblk[seg].cb_dest_ad =
310 sc->sc_cblk[seg].cb_ti |= DMAC_TI_SRC_INC;
315 if ((sc->sc_cblk[seg].cb_txfr_len & 0xf) == 0)
316 sc->sc_cblk[seg].cb_ti |= DMAC_TI_SRC_WIDTH;
317 sc->sc_cblk[seg].cb_ti |= DMAC_TI_DEST_DREQ;
318 sc->sc_cblk[seg].cb_ti |= DMAC_TI_WAIT_RESP;
319 sc->sc_cblk[seg].cb_source_ad =
321 sc->sc_cblk[seg].cb_dest_ad = ad_sdhcdata;
323 sc->sc_cblk[seg].cb_stride = 0;
325 sc->sc_cblk[seg].cb_ti |= DMAC_TI_INTEN;
326 sc->sc_cblk[seg].cb_nextconbk = 0;
328 sc->sc_cblk[seg].cb_nextconbk =
332 bcm_dmac_swap_conblk(&sc->sc_cblk[seg]);
333 sc->sc_cblk[seg].cb_padding[0] = 0;
334 sc->sc_cblk[seg].cb_padding[1] = 0;