aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorAndrey A. Chernov <ache@FreeBSD.org>1994-04-23 04:16:53 +0000
committerAndrey A. Chernov <ache@FreeBSD.org>1994-04-23 04:16:53 +0000
commit2a9de2027efd1f96b140337747e93d9111c17a2e (patch)
tree2c6423c667ea4d42203e765863644b5bd6370021 /sys
parentf66fdd68037f55cc59d2bef64cda1f8bc2bd2052 (diff)
downloadsrc-2a9de2027efd1f96b140337747e93d9111c17a2e.tar.gz
src-2a9de2027efd1f96b140337747e93d9111c17a2e.zip
Additional changes for 2.5
Notes
Notes: svn path=/head/; revision=1404
Diffstat (limited to 'sys')
-rw-r--r--sys/i386/isa/sound/local.h8
-rw-r--r--sys/i386/isa/sound/soundcard.c32
2 files changed, 8 insertions, 32 deletions
diff --git a/sys/i386/isa/sound/local.h b/sys/i386/isa/sound/local.h
index fd44f85a405a..a44c9897ac9e 100644
--- a/sys/i386/isa/sound/local.h
+++ b/sys/i386/isa/sound/local.h
@@ -7,8 +7,8 @@
#define DSP_BUFFSIZE 65536
#define SELECTED_SOUND_OPTIONS 0xffffffff
-#define SOUND_VERSION_STRING "2.4"
-#define SOUND_CONFIG_DATE "Mon Mar 7 23:54:09 PST 1994"
-#define SOUND_CONFIG_BY "swallace"
-#define SOUND_CONFIG_HOST "freefall.cdrom.com"
+#define SOUND_VERSION_STRING "2.5"
+#define SOUND_CONFIG_DATE "Sat Apr 23 07:45:17 MSD 1994"
+#define SOUND_CONFIG_BY "ache"
+#define SOUND_CONFIG_HOST "dream.demos.su"
#define SOUND_CONFIG_DOMAIN ""
diff --git a/sys/i386/isa/sound/soundcard.c b/sys/i386/isa/sound/soundcard.c
index 60b4ff3b2823..d69e8e0a4065 100644
--- a/sys/i386/isa/sound/soundcard.c
+++ b/sys/i386/isa/sound/soundcard.c
@@ -69,7 +69,7 @@ static void sound_mem_init(void);
unsigned
long
-get_time()
+get_time(void)
{
extern struct timeval time;
struct timeval timecopy;
@@ -324,27 +324,14 @@ sound_mem_init (void)
{
dsp_init_mask |= (1 << dev);
-#if 1 /* 0 */
if (sound_dma_automode[dev])
- {
- sound_dma_automode[dev] = 0; /* Not possible with FreeBSD */
- }
-
- if (sound_buffcounts[dev] == 1)
- {
- sound_buffcounts[dev] = 2;
- sound_buffsizes[dev] /= 2;
- }
-
- if (sound_buffsizes[dev] > 65536) /* Larger is not possible (yet) */
- sound_buffsizes[dev] = 65536;
+ sound_buffcounts[dev] = 1;
if (sound_dsp_dmachan[dev] > 3 && sound_buffsizes[dev] > 65536)
dma_pagesize = 131072; /* 128k */
else
dma_pagesize = 65536;
-
/* More sanity checks */
if (sound_buffsizes[dev] > dma_pagesize)
@@ -352,24 +339,13 @@ sound_mem_init (void)
sound_buffsizes[dev] &= ~0xfff; /* Truncate to n*4k */
if (sound_buffsizes[dev] < 4096)
sound_buffsizes[dev] = 4096;
-#else
- dma_pagesize = 4096;
- sound_buffsizes[dev] = 4096;
- sound_buffcounts[dev] = 16; /* -> 64k */
-#endif
/* Now allocate the buffers */
for (snd_raw_count[dev] = 0; snd_raw_count[dev] < sound_buffcounts[dev]; snd_raw_count[dev]++)
{
- /*
- * The DMA buffer allocation algorithm hogs memory. We allocate
- * a memory area which is two times the requires size. This
- * guarantees that it contains at least one valid DMA buffer.
- *
- * This really needs some kind of finetuning.
- */
- char *tmpbuf = contigmalloc (sound_buffsizes[dev], M_DEVBUF, M_NOWAIT, 0xFFFFFFul, 0ul, 0xFFFFul);
+ char *tmpbuf = contigmalloc (sound_buffsizes[dev], M_DEVBUF, M_NOWAIT,
+ 0xFFFFFFul, 0ul, dma_pagesize <= 65536 ? 0xFFFFul : 0x1FFFFul);
if (tmpbuf == NULL)
{