Deleted Added
full compact
channel.c (56253) channel.c (57973)
1/*
2 * Copyright (c) 1999 Cameron Grant <gandalf@vilnya.demon.co.uk>
3 * Portions Copyright by Luigi Rizzo - 1997-99
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

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

19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 * SUCH DAMAGE.
26 *
1/*
2 * Copyright (c) 1999 Cameron Grant <gandalf@vilnya.demon.co.uk>
3 * Portions Copyright by Luigi Rizzo - 1997-99
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

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

19 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 * SUCH DAMAGE.
26 *
27 * $FreeBSD: head/sys/dev/sound/pcm/channel.c 56253 2000-01-18 18:59:03Z cg $
27 * $FreeBSD: head/sys/dev/sound/pcm/channel.c 57973 2000-03-13 10:19:32Z phk $
28 */
29
30#include <dev/sound/pcm/sound.h>
31
32#define MIN_CHUNK_SIZE 256 /* for uiomove etc. */
33#define DMA_ALIGN_THRESHOLD 4
34#define DMA_ALIGN_MASK (~(DMA_ALIGN_THRESHOLD - 1))
35

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

835
836void
837buf_isadma(snd_dbuf *b, int go)
838{
839 if (ISA_DMA(b)) {
840 switch (go) {
841 case PCMTRIG_START:
842 DEB(printf("buf 0x%p ISA DMA started\n", b));
28 */
29
30#include <dev/sound/pcm/sound.h>
31
32#define MIN_CHUNK_SIZE 256 /* for uiomove etc. */
33#define DMA_ALIGN_THRESHOLD 4
34#define DMA_ALIGN_MASK (~(DMA_ALIGN_THRESHOLD - 1))
35

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

835
836void
837buf_isadma(snd_dbuf *b, int go)
838{
839 if (ISA_DMA(b)) {
840 switch (go) {
841 case PCMTRIG_START:
842 DEB(printf("buf 0x%p ISA DMA started\n", b));
843 isa_dmastart(b->dir | B_RAW, b->buf,
843 isa_dmastart(b->dir | ISADMA_RAW, b->buf,
844 b->bufsize, b->chan);
845 break;
846 case PCMTRIG_STOP:
847 case PCMTRIG_ABORT:
848 DEB(printf("buf 0x%p ISA DMA stopped\n", b));
849 isa_dmastop(b->chan);
844 b->bufsize, b->chan);
845 break;
846 case PCMTRIG_STOP:
847 case PCMTRIG_ABORT:
848 DEB(printf("buf 0x%p ISA DMA stopped\n", b));
849 isa_dmastop(b->chan);
850 isa_dmadone(b->dir | B_RAW, b->buf, b->bufsize,
850 isa_dmadone(b->dir | ISADMA_RAW, b->buf, b->bufsize,
851 b->chan);
852 break;
853 }
854 } else KASSERT(1, ("buf_isadma called on invalid channel"));
855}
856
857int
858buf_isadmaptr(snd_dbuf *b)

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

1045int
1046chn_setdir(pcm_channel *c, int dir)
1047{
1048 int r;
1049
1050 c->direction = dir;
1051 r = c->setdir(c->devinfo, c->direction);
1052 if (!r && ISA_DMA(&c->buffer))
851 b->chan);
852 break;
853 }
854 } else KASSERT(1, ("buf_isadma called on invalid channel"));
855}
856
857int
858buf_isadmaptr(snd_dbuf *b)

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

1045int
1046chn_setdir(pcm_channel *c, int dir)
1047{
1048 int r;
1049
1050 c->direction = dir;
1051 r = c->setdir(c->devinfo, c->direction);
1052 if (!r && ISA_DMA(&c->buffer))
1053 c->buffer.dir = (dir == PCMDIR_PLAY)? B_WRITE : B_READ;
1053 c->buffer.dir = (dir == PCMDIR_PLAY)? ISADMA_WRITE : ISADMA_READ;
1054 return r;
1055}
1056
1057int
1058chn_setvolume(pcm_channel *c, int left, int right)
1059{
1060 /* could add a feeder for volume changing if channel returns -1 */
1061 if (CANCHANGE(c)) {

--- 118 unchanged lines hidden ---
1054 return r;
1055}
1056
1057int
1058chn_setvolume(pcm_channel *c, int left, int right)
1059{
1060 /* could add a feeder for volume changing if channel returns -1 */
1061 if (CANCHANGE(c)) {

--- 118 unchanged lines hidden ---