Lines Matching refs:atsc

442 	struct at91_usart_softc *atsc;  in at91_usart_bus_attach()  local
444 atsc = (struct at91_usart_softc *)sc; in at91_usart_bus_attach()
447 atsc->flags |= USE_RTS0_WORKAROUND; in at91_usart_bus_attach()
458 atsc->flags |= HAS_TIMEOUT; in at91_usart_bus_attach()
469 NULL, &atsc->tx_tag); in at91_usart_bus_attach()
472 err = bus_dmamap_create(atsc->tx_tag, 0, &atsc->tx_map); in at91_usart_bus_attach()
476 if (atsc->flags & HAS_TIMEOUT) { in at91_usart_bus_attach()
487 &atsc->rx_tag); in at91_usart_bus_attach()
491 err = bus_dmamem_alloc(atsc->rx_tag, in at91_usart_bus_attach()
492 (void **)&atsc->ping_pong[i].buffer, in at91_usart_bus_attach()
493 BUS_DMA_NOWAIT, &atsc->ping_pong[i].map); in at91_usart_bus_attach()
496 err = bus_dmamap_load(atsc->rx_tag, in at91_usart_bus_attach()
497 atsc->ping_pong[i].map, in at91_usart_bus_attach()
498 atsc->ping_pong[i].buffer, sc->sc_rxfifosz, in at91_usart_bus_attach()
499 at91_getaddr, &atsc->ping_pong[i].pa, 0); in at91_usart_bus_attach()
502 bus_dmamap_sync(atsc->rx_tag, atsc->ping_pong[i].map, in at91_usart_bus_attach()
505 atsc->ping = &atsc->ping_pong[0]; in at91_usart_bus_attach()
506 atsc->pong = &atsc->ping_pong[1]; in at91_usart_bus_attach()
520 if (atsc->flags & HAS_TIMEOUT) { in at91_usart_bus_attach()
521 WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); in at91_usart_bus_attach()
523 WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); in at91_usart_bus_attach()
551 struct at91_usart_softc *atsc; in at91_usart_bus_transmit() local
555 atsc = (struct at91_usart_softc *)sc; in at91_usart_bus_transmit()
557 if (bus_dmamap_load(atsc->tx_tag, atsc->tx_map, sc->sc_txbuf, in at91_usart_bus_transmit()
562 bus_dmamap_sync(atsc->tx_tag, atsc->tx_map, BUS_DMASYNC_PREWRITE); in at91_usart_bus_transmit()
581 struct at91_usart_softc *atsc; in at91_usart_bus_setsig() local
583 atsc = (struct at91_usart_softc *)sc; in at91_usart_bus_setsig()
606 if (atsc->flags & USE_RTS0_WORKAROUND) { in at91_usart_bus_setsig()
648 struct at91_usart_softc *atsc; in at91_usart_bus_ipend() local
654 atsc = (struct at91_usart_softc *)sc; in at91_usart_bus_ipend()
667 bus_dmamap_sync(atsc->tx_tag, atsc->tx_map, in at91_usart_bus_ipend()
669 bus_dmamap_unload(atsc->tx_tag, atsc->tx_map); in at91_usart_bus_ipend()
684 if (atsc->flags & HAS_TIMEOUT) { in at91_usart_bus_ipend()
693 bus_dmamap_sync(atsc->rx_tag, atsc->ping->map, in at91_usart_bus_ipend()
696 at91_rx_put(sc, atsc->ping->buffer[i]); in at91_usart_bus_ipend()
697 bus_dmamap_sync(atsc->rx_tag, atsc->ping->map, in at91_usart_bus_ipend()
699 WR4(&sc->sc_bas, PDC_RPR, atsc->ping->pa); in at91_usart_bus_ipend()
702 bus_dmamap_sync(atsc->rx_tag, atsc->pong->map, in at91_usart_bus_ipend()
705 at91_rx_put(sc, atsc->pong->buffer[i]); in at91_usart_bus_ipend()
707 bus_dmamap_sync(atsc->rx_tag, atsc->pong->map, in at91_usart_bus_ipend()
709 WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); in at91_usart_bus_ipend()
719 bus_dmamap_sync(atsc->rx_tag, atsc->ping->map, in at91_usart_bus_ipend()
722 at91_rx_put(sc, atsc->ping->buffer[i]); in at91_usart_bus_ipend()
723 p = atsc->ping; in at91_usart_bus_ipend()
724 atsc->ping = atsc->pong; in at91_usart_bus_ipend()
725 atsc->pong = p; in at91_usart_bus_ipend()
726 bus_dmamap_sync(atsc->rx_tag, atsc->pong->map, in at91_usart_bus_ipend()
728 WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); in at91_usart_bus_ipend()
759 WR4(&sc->sc_bas, PDC_RPR, atsc->pong->pa); in at91_usart_bus_ipend()
765 bus_dmamap_sync(atsc->rx_tag, atsc->ping->map, in at91_usart_bus_ipend()
768 at91_rx_put(sc, atsc->ping->buffer[i]); in at91_usart_bus_ipend()
769 bus_dmamap_sync(atsc->rx_tag, atsc->ping->map, in at91_usart_bus_ipend()
771 p = atsc->ping; in at91_usart_bus_ipend()
772 atsc->ping = atsc->pong; in at91_usart_bus_ipend()
773 atsc->pong = p; in at91_usart_bus_ipend()
774 WR4(&sc->sc_bas, PDC_RNPR, atsc->pong->pa); in at91_usart_bus_ipend()