]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - include/sound/cs4231.h
[ALSA] Fix bugs in mode change/recalibration for opl3sa2 driver
[mv-sheeva.git] / include / sound / cs4231.h
index ac6a5d8820888c1926c92c052c74add01c3f30a3..b195a73c5685285e1b0a7926c628b153368bc9b5 100644 (file)
 #define CS4231_HW_CS4239       0x0404  /* CS4239 - Crystal Clear (tm) stereo enhancement */
 /* compatible, but clones */
 #define CS4231_HW_INTERWAVE     0x1000 /* InterWave chip */
-#define CS4231_HW_OPL3SA2       0x1001 /* OPL3-SA2 chip */
+#define CS4231_HW_OPL3SA2       0x1101 /* OPL3-SA2 chip, similar to cs4231 */
 
 /* defines for codec.hwshare */
 #define CS4231_HWSHARE_IRQ     (1<<0)
@@ -248,8 +248,8 @@ struct snd_cs4231 {
        unsigned int c_dma_size;
 
        spinlock_t reg_lock;
-       struct semaphore mce_mutex;
-       struct semaphore open_mutex;
+       struct mutex mce_mutex;
+       struct mutex open_mutex;
 
        int (*rate_constraint) (struct snd_pcm_runtime *runtime);
        void (*set_playback_format) (struct snd_cs4231 *chip, struct snd_pcm_hw_params *hw_params, unsigned char pdfr);
@@ -273,7 +273,7 @@ unsigned char snd_cs4236_ext_in(struct snd_cs4231 *chip, unsigned char reg);
 void snd_cs4231_mce_up(struct snd_cs4231 *chip);
 void snd_cs4231_mce_down(struct snd_cs4231 *chip);
 
-irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id, struct pt_regs *regs);
+irqreturn_t snd_cs4231_interrupt(int irq, void *dev_id);
 
 const char *snd_cs4231_chip_id(struct snd_cs4231 *chip);