dxs_peripheral
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE) {
dmac_reg_write(sc, DMAC_DRCMR(dxs->dxs_peripheral),
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE)
dmac_reg_write(sc, DMAC_DRCMR(dxs->dxs_peripheral), 0);
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE &&
--sc->sc_periph[dxs->dxs_peripheral].sp_busy != 0) {
&sc->sc_periph[dxs->dxs_peripheral].sp_queue);
&sc->sc_periph[dxs->dxs_peripheral].sp_queue,
ds->ds_xfer.dxs_peripheral = DMAC_PERIPH_NONE;
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE &&
dxs->dxs_peripheral >= DMAC_N_PERIPH)
if (dxs->dxs_peripheral == DMAC_PERIPH_NONE ||
sc->sc_periph[dxs->dxs_peripheral].sp_busy == 0) {
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE)
sc->sc_periph[dxs->dxs_peripheral].sp_busy++;
dxs->dxs_queue = &sc->sc_periph[dxs->dxs_peripheral].sp_queue;
sc->sc_periph[dxs->dxs_peripheral].sp_busy++;
if (dxs->dxs_peripheral != DMAC_PERIPH_NONE)
dmac_reg_write(sc, DMAC_DRCMR(dxs->dxs_peripheral), 0);
if (dxs->dxs_peripheral == DMAC_PERIPH_NONE ||
sc->sc_periph[dxs->dxs_peripheral].sp_busy-- == 1 ||
queue == &sc->sc_periph[dxs->dxs_peripheral].sp_queue)
ndxs = SIMPLEQ_FIRST(&sc->sc_periph[dxs->dxs_peripheral].sp_queue);
SIMPLEQ_REMOVE_HEAD(&sc->sc_periph[dxs->dxs_peripheral].sp_queue,