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

Rene Herman rene.herman at keyaccess.nl
Sat May 31 00:11:37 CEST 2008

On 30-05-08 23:43, Bjorn Helgaas wrote:

> On Friday 30 May 2008 03:15:57 pm Rene Herman wrote:

>> It gets uglier. ALSA ISA drivers (for cards that exist both as legacy 
>> and as ISAPnP at least) keep a merged legacy/isapnp model; PnP is used 
>> mostly for initializing global variables that the same old legacy probe 
>> routines then reference. This means that beyond that global resource 
>> init step the specific struct device is no longer available. Without 
>> restructuring too many things really only fixable through other hacks 
>> again such as a global dma_dev[] array or some such.
>>  From the viewpoint of PnP itself setting the dma_mask for a pnp_card (a 
>> pnp_dev collection) makes isolated sense so if no objections, I'll 
>> submit the attached after all. From the ALSA side we'd then pass the 
>> card dev (which we'd also do for isa_dev) and keep in mind that we might 
>> want to get more specific if over time structure permits it.
>> struct snd_pcm already has its own struct device * which would be the 
>> right one here but it's setting that which gets ugly...
> Looks good to me.  It does sound like a lot of work and possibly
> more risk than it's worth to fix up some of this stuff.

Fairly invasive at least. The good thing though is that with the recent 
pnp_manual_config_dev() removal the PnP drivers have no actual need/use 
for this global variable model anymore and now I have a great excuse for 
rewriting them. That can happen one at a time though...

> I do still wonder whether any non-x86 architectures need similar
> fixes in dma_alloc_coherent(), i.e., check for dev==NULL and fall
> back to a 24-bit DMA mask.

Hrmmpf. Good question. In sound/isa, we've had a but of alpha spottyness 
over time but nothing which would seem to be related.

> Acked-by: Bjorn Helgaas <bjorn.helgaas at hp.com>

Thanks. I'll assume Andrew picks it up from the CC...


More information about the Alsa-devel mailing list