Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/isa The AD1848/CS4231 attachment doesn't create DMA ...



details:   https://anonhg.NetBSD.org/src/rev/c835aa9e35b0
branches:  trunk
changeset: 467882:c835aa9e35b0
user:      mycroft <mycroft%NetBSD.org@localhost>
date:      Tue Mar 30 16:40:47 1999 +0000

description:
The AD1848/CS4231 attachment doesn't create DMA maps any more, so we have to
do it here.  This is preferrable anyway, since we're not actually doing DMA
through the AD/CS chip.

diffstat:

 sys/dev/isa/gus.c |  34 +++++++++++++++++-----------------
 1 files changed, 17 insertions(+), 17 deletions(-)

diffs (49 lines):

diff -r 2b747f0ad970 -r c835aa9e35b0 sys/dev/isa/gus.c
--- a/sys/dev/isa/gus.c Tue Mar 30 16:11:43 1999 +0000
+++ b/sys/dev/isa/gus.c Tue Mar 30 16:40:47 1999 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: gus.c,v 1.66 1999/02/19 16:59:36 mycroft Exp $ */
+/*     $NetBSD: gus.c,v 1.67 1999/03/30 16:40:47 mycroft Exp $ */
 
 /*-
  * Copyright (c) 1996, 1999 The NetBSD Foundation, Inc.
@@ -918,23 +918,23 @@
                sc->sc_flags |= GUS_MIXER_INSTALLED;
                gus_init_ics2101(sc);
        }
-       if (sc->sc_revision < 0xa || !gus_init_cs4231(sc)) {
-               /* Not using the CS4231, so create our DMA maps. */
-               if (sc->sc_playdrq != -1) {
-                       if (isa_dmamap_create(sc->sc_ic, sc->sc_playdrq,
-                           MAX_ISADMA, BUS_DMA_NOWAIT|BUS_DMA_ALLOCNOW)) {
-                               printf("%s: can't create map for drq %d\n",
-                                      sc->sc_dev.dv_xname, sc->sc_playdrq);
-                               return;
-                       }
+       if (sc->sc_revision >= 10)
+               gus_init_cs4231(sc);
+
+       if (sc->sc_playdrq != -1) {
+               if (isa_dmamap_create(sc->sc_ic, sc->sc_playdrq,
+                   MAX_ISADMA, BUS_DMA_NOWAIT|BUS_DMA_ALLOCNOW)) {
+                       printf("%s: can't create map for drq %d\n",
+                              sc->sc_dev.dv_xname, sc->sc_playdrq);
+                       return;
                }
-               if (sc->sc_recdrq != -1 && sc->sc_recdrq != sc->sc_playdrq) {
-                       if (isa_dmamap_create(sc->sc_ic, sc->sc_recdrq,
-                           MAX_ISADMA, BUS_DMA_NOWAIT|BUS_DMA_ALLOCNOW)) {
-                               printf("%s: can't create map for drq %d\n",
-                                      sc->sc_dev.dv_xname, sc->sc_recdrq);
-                               return;
-                       }
+       }
+       if (sc->sc_recdrq != -1 && sc->sc_recdrq != sc->sc_playdrq) {
+               if (isa_dmamap_create(sc->sc_ic, sc->sc_recdrq,
+                   MAX_ISADMA, BUS_DMA_NOWAIT|BUS_DMA_ALLOCNOW)) {
+                       printf("%s: can't create map for drq %d\n",
+                              sc->sc_dev.dv_xname, sc->sc_recdrq);
+                       return;
                }
        }
 



Home | Main Index | Thread Index | Old Index