[alsa-devel] 2.6.26-rc1 regression: ISA DMA broken (bisected)

Bjorn Helgaas bjorn.helgaas at hp.com
Wed May 14 01:18:39 CEST 2008


On Tuesday 13 May 2008 11:33:25 am Rene Herman wrote:
> On 13-05-08 19:01, Alan Cox wrote:
> > On Tue, 13 May 2008 10:59:32 -0600, Bjorn Helgaas <bjorn.helgaas at hp.com> wrote:
> >> On Friday 09 May 2008 12:06:55 am Takashi Iwai wrote:
> >>> Thanks for catching it.  Yeah, the patch looks buggy.  We had an
> >>> implicit assumption that dev = NULL for ISA devices that require 24bit
> >>> DMA.
> >> Naive question #1:  Why don't we have a struct device for these
> >> ISA devices?  PNP builds a struct device with DMA_24BIT_MASK
> >> for ISAPNP devices.
> > 
> > Because nobody has done the needed work to get all the old ISA drivers
> > converted. I guess isa_device would actually be a platform_device
> > wrapper ?
> 
> No, isa_device is its own thing, on its own isa_bus (*). It has a struct 
> device * readily available though...
> 
> (*) drivers/base/isa.c, and explanatory changelog at:
> 
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a5117ba7da37deb09df5eb802dace229b3fb1e9f

Thanks for the nice changelog.

isa_register_driver() currently doesn't set a DMA mask.  Should it?

I only see about 35 dma_alloc_coherent() calls that pass NULL.  I
guess even those would be a fair amount of work to change, and I
suppose there would be more that I missed.

Bjorn


More information about the Alsa-devel mailing list