Date: Sat, 09 Mar 1996 23:52:29 -0800 From: "Jordan K. Hubbard" <jkh@time.cdrom.com> To: Sujal Patel <smpatel@wam.umd.edu> Cc: "Jordan K. Hubbard" <jkh@freefall.freebsd.org>, CVS-committers@freefall.freebsd.org, multimedia@freebsd.org Subject: Re: cvs commit: src/sys/i386/isa isa.c Message-ID: <12332.826444349@time.cdrom.com> In-Reply-To: Your message of "Sun, 10 Mar 1996 01:31:13 EST." <Pine.BSF.3.91.960310011430.321A-100000@xi.dorm.umd.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
> Of course, not printing out the error messages doesn't solve the problem :-) Yes, I know. I just wanted to shut things up until we could figure out how to deal with the problem another way. It's been happening for many weeks now. [The rest of the letter is included for the benefit of freebsd-multimedia since I don't think that everyone involved is on the cvs-committers list - thanks!] Jordan > We need to fix the sound code. What do you guys think of fixing it this way: > > Break isa_dmastart() into a two routines: > > int isa_acquire_dma() Registers the channel as busy > Returns 0 on success. > > void isa_dmastart() Does the rest of what the current > isa_dmastart() does. > > This will allow the sound device (and others??) to register it's DMA > channel usage on open() and then use isa_dmastart() when the driver is > sending data to the sound card. This will also give us the correct > behavior of denying access to /dev/dsp1 when /dev/dsp is open (on > non-duplexed cards). > > The error messages that we recv. now will be cleared up because it'll > only check the channel's busy status on open() [in the sound driver]. > > Also, I think we should remove the isa_dmadone_nobounce() function. > Since the sound driver maintains it's own DMA buffer, the arguments will > never be checked because (dma_bounced[chan] == 0) [ if something goes > wrong with that, then we deserve a panic :-) ]. This was originally > designed as a kludge anyway. > > None of this will affect any of the other drivers that use these > routines, and this will fix a lot of bogus stuff in the sound drivers DMA > handling. I'd be happy to implement this and update all of the > appropriate ISA drivers, if someone could bless this (maybe Bruce, it > looks like he wrote the original code for this?) > > > Sujal >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?12332.826444349>