I applied a wrong patch for 'opl3 - simplify exclusive access lock'.
Fixed now.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
        void *private_data;
        void (*private_free)(struct snd_opl3 *);
 
+       struct snd_hwdep *hwdep;
        spinlock_t reg_lock;
        struct snd_card *card;          /* The card that this belongs to */
        unsigned char fm_mode;          /* OPL mode, see SNDRV_DM_FM_MODE_XXX */
 
        hw->ops.write = snd_opl3_write;
        hw->ops.release = snd_opl3_release;
 
+       opl3->hwdep = hw;
        opl3->seq_dev_num = seq_device;
 #if defined(CONFIG_SND_SEQUENCER) || (defined(MODULE) && defined(CONFIG_SND_SEQUENCER_MODULE))
        if (snd_seq_device_new(card, seq_device, SNDRV_SEQ_DEV_ID_OPL3,
 
 void snd_opl3_synth_cleanup(struct snd_opl3 * opl3)
 {
        unsigned long flags;
+       struct snd_hwdep *hwdep;
 
        /* Stop system timer */
        spin_lock_irqsave(&opl3->sys_timer_lock, flags);