Deleted Added
full compact
at91_spi.c (166901) at91_spi.c (167082)
1/*-
2 * Copyright (c) 2006 M. Warner Losh. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 9 unchanged lines hidden (view full) ---

18 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
19 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
20 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
22 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23 */
24
25#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2006 M. Warner Losh. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.

--- 9 unchanged lines hidden (view full) ---

18 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
19 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
20 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
22 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23 */
24
25#include <sys/cdefs.h>
26__FBSDID("$FreeBSD: head/sys/arm/at91/at91_spi.c 166901 2007-02-23 12:19:07Z piso $");
26__FBSDID("$FreeBSD: head/sys/arm/at91/at91_spi.c 167082 2007-02-27 17:15:39Z jhb $");
27
28#include <sys/param.h>
29#include <sys/systm.h>
30#include <sys/bus.h>
31#include <sys/conf.h>
32#include <sys/kernel.h>
33#include <sys/mbuf.h>
34#include <sys/malloc.h>

--- 208 unchanged lines hidden (view full) ---

243 bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD);
244 mode[i++] = BUS_DMASYNC_POSTREAD;
245 }
246 WR4(sc, SPI_IER, SPI_SR_ENDRX);
247 WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN | PDC_PTCR_RXTEN);
248
249 rxdone = sc->rxdone;
250 do {
27
28#include <sys/param.h>
29#include <sys/systm.h>
30#include <sys/bus.h>
31#include <sys/conf.h>
32#include <sys/kernel.h>
33#include <sys/mbuf.h>
34#include <sys/malloc.h>

--- 208 unchanged lines hidden (view full) ---

243 bus_dmamap_sync(sc->dmatag, sc->map[i], BUS_DMASYNC_PREREAD);
244 mode[i++] = BUS_DMASYNC_POSTREAD;
245 }
246 WR4(sc, SPI_IER, SPI_SR_ENDRX);
247 WR4(sc, PDC_PTCR, PDC_PTCR_TXTEN | PDC_PTCR_RXTEN);
248
249 rxdone = sc->rxdone;
250 do {
251 err = msleep(&sc->rxdone, NULL, PCATCH | PZERO, "spi", hz);
251 err = tsleep(&sc->rxdone, PCATCH | PZERO, "spi", hz);
252 } while (rxdone == sc->rxdone && err != EINTR);
253 WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS | PDC_PTCR_RXTDIS);
254 if (err == 0) {
255 for (j = 0; j < i; j++)
256 bus_dmamap_sync(sc->dmatag, sc->map[j], mode[j]);
257 }
258 for (j = 0; j < i; j++)
259 bus_dmamap_unload(sc->dmatag, sc->map[j]);

--- 45 unchanged lines hidden ---
252 } while (rxdone == sc->rxdone && err != EINTR);
253 WR4(sc, PDC_PTCR, PDC_PTCR_TXTDIS | PDC_PTCR_RXTDIS);
254 if (err == 0) {
255 for (j = 0; j < i; j++)
256 bus_dmamap_sync(sc->dmatag, sc->map[j], mode[j]);
257 }
258 for (j = 0; j < i; j++)
259 bus_dmamap_unload(sc->dmatag, sc->map[j]);

--- 45 unchanged lines hidden ---