[alsa-devel] question about sound/oss/vidc.c

Takashi Iwai tiwai at suse.de
Wed Mar 17 08:25:52 CET 2010


[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


More information about the Alsa-devel mailing list