sound patches for 2.1.82

Bob Tracy (rct@gherkin.sa.wlk.com)
Tue, 27 Jan 1998 10:41:14 -0600 (CST)


First, congratulations to all concerned for the cleanest development
release in a good many iterations. The following two patches fix a
few sound driver problems that have existed since 2.1.7X at least.
If you don't like the dmabuf.c patch, I didn't write it: you'll need
it if you want your PAS-16 to work. OTOH, I *will* take credit for
the minor patch to local.h.master to get the Yamaha OPL3-SA1 working.
Apply these to 2.1.82. Linus, Alan, et. al.: please add these to the
2.1.83 distribution. Thanks!

-- 
Bob Tracy               |  If you have any trouble sounding condescending,
Firewall Security Corp. |  find a Unix user to show you how it's done.
rct@frus.com            |  	-- Scott Adams: DNRC Newsletter 3.0

====--CUT HERE--==== --- linux/drivers/sound/dmabuf.c.orig Thu Jan 22 21:29:39 1998 +++ linux/drivers/sound/dmabuf.c Sat Jan 24 06:42:27 1998 @@ -117,35 +117,32 @@ static unsigned int default_set_bits(int dev, unsigned int bits) { mm_segment_t fs = get_fs(); - unsigned int r; set_fs(get_ds()); - r = audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_SETFMT, (caddr_t)&bits); + audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_SETFMT, (caddr_t)&bits); set_fs(fs); - return r; + return bits; } static int default_set_speed(int dev, int speed) { mm_segment_t fs = get_fs(); - int r; set_fs(get_ds()); - r = audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_SPEED, (caddr_t)&speed); + audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_SPEED, (caddr_t)&speed); set_fs(fs); - return r; + return speed; } static short default_set_channels(int dev, short channels) { int c = channels; mm_segment_t fs = get_fs(); - short r; set_fs(get_ds()); - r = audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_CHANNELS, (caddr_t)&c); + audio_devs[dev]->d->ioctl(dev, SNDCTL_DSP_CHANNELS, (caddr_t)&c); set_fs(fs); - return r; + return c; } static void check_driver(struct audio_driver *d) --- linux/drivers/sound/local.h.master.orig Wed Dec 24 13:21:08 1997 +++ linux/drivers/sound/local.h.master Wed Dec 24 13:23:53 1997 @@ -19,10 +19,12 @@ defined(CONFIG_GUSMAX) || defined(CONFIG_MSS) || \ defined(CONFIG_SSCAPE) || defined(CONFIG_TRIX) || \ defined(CONFIG_MAD16) || defined(CONFIG_CS4232) || \ + defined(CONFIG_OPL3SA1) || \ defined(CONFIG_PSS_MODULE) || defined(CONFIG_GUS16_MODULE) || \ defined(CONFIG_GUSMAX_MODULE) || defined(CONFIG_MSS_MODULE) || \ defined(CONFIG_SSCAPE_MODULE) || defined(CONFIG_TRIX_MODULE) || \ - defined(CONFIG_MAD16_MODULE) || defined(CONFIG_CS4232_MODULE) + defined(CONFIG_MAD16_MODULE) || defined(CONFIG_CS4232_MODULE) || \ + defined(CONFIG_OPL3SA1_MODULE) # define CONFIG_AD1848 #endif @@ -96,13 +98,13 @@ defined(CONFIG_MPU401) || defined(CONFIG_PSS) || \ defined(CONFIG_SSCAPE) || defined(CONFIG_TRIX) || \ defined(CONFIG_MAD16) || defined(CONFIG_CS4232) || \ - defined(CONFIG_MAUI) || \ + defined(CONFIG_MAUI) || defined(CONFIG_OPL3SA1) || \ defined(CONFIG_PAS_MODULE) || defined(CONFIG_SB_MODULE) || \ defined(CONFIG_ADLIB_MODULE) || defined(CONFIG_GUS_MODULE) || \ defined(CONFIG_MPU401_MODULE) || defined(CONFIG_PSS_MODULE) || \ defined(CONFIG_SSCAPE_MODULE) || defined(CONFIG_TRIX_MODULE) || \ defined(CONFIG_MAD16_MODULE) || defined(CONFIG_CS4232_MODULE) || \ - defined(CONFIG_MAUI_MODULE) + defined(CONFIG_MAUI_MODULE) || defined(CONFIG_OPL3SA1_MODULE) # define CONFIG_SEQUENCER #endif ====--TUC EREH--====