17 Mar
2010
17 Mar
'10
8:25 a.m.
[Cc'ed to Russell, the driver author]
At Tue, 16 Mar 2010 23:02:54 +0100 (CET), Julia Lawall wrote:
In sound/oss/vidc.c, the function vidc_audio_trigger contains thefollowing code:
struct audio_operations *adev = audio_devs[dev]; if (enable_bits & PCM_ENABLE_OUTPUT) { if (!(adev->flags & DMA_ACTIVE)) { unsigned long flags; local_irq_save(flags); /* prevent recusion */ adev->flags |= DMA_ACTIVE; ... }
}
I wonder if the use of DMA_ACTIVE is correct? This constant is defined inthe file sound/oss/dev_table.h within the definition of the structure dma_buffparms. But here it is being used with the structure audio_operations. The definition of audio_operations also contains the definitions of some constants. Indeed, one of them, DMA_DUPLEX has the same value as DMA_ACTIVE.
I guess these should be adev->dma_out->flags instead.
thanks,
Takashi