[alsa-devel] /dev/snd/seq unavailable with opl3 (Re: [RFC] ymfpci - re-enable legacy audio after suspend resume)

Takashi Iwai tiwai at suse.de
Mon Mar 12 09:28:41 CET 2012


At Sun, 11 Mar 2012 07:37:30 +0800,
Raymond Yau wrote:
> 
> 2012/3/9 Takashi Iwai <tiwai at suse.de>:
> > At Fri, 9 Mar 2012 07:28:26 +0800,
> > Raymond Yau wrote:
> >>
> >> 2012/3/8, Takashi Iwai <tiwai at suse.de>:
> >> > At Thu, 8 Mar 2012 12:12:33 +0800,
> >> > Raymond Yau wrote:
> >> >>
> >> >> Since the Legacy Audio Control register is reset to default after
> >> >> suspend resume cycle
> >> >>
> >> >> need to enable the Legacy Audio Control Bit in order to use OPL3 FM Synth
> >> >>
> >> >> however it is still need to use sbiload  instrument loader to reload
> >> >> the instruments
> >> >
> >> > Isn't it better to save and restore these PCI registers like below?
> >> > It still doesn't solve the lost instrument problem, though.
> >> >
> >>
> >> I only use std.o3 and drums.o3
> >>
> >> It seem that the playback of midi using aplaymidi can resume playback
> >> after suspend with my ymf724f
> >>
> >> so it seem that there is no need to reload the instrument with your patch
> >>
> >> >
> >> > ---
> >> > diff --git a/include/sound/ymfpci.h b/include/sound/ymfpci.h
> >> > index 444cd6b..1e35b16 100644
> >> > --- a/include/sound/ymfpci.h
> >> > +++ b/include/sound/ymfpci.h
> >> > @@ -366,6 +366,8 @@ struct snd_ymfpci {
> >> >  #ifdef CONFIG_PM
> >> >     u32 *saved_regs;
> >> >     u32 saved_ydsxgr_mode;
> >> > +   u16 saved_saved_dsxg_legacy;
> >> > +   u16 saved_saved_dsxg_elegacy;
> >>
> >>
> >> Should be saved_dsxg_legacy and save_dsxg_elegacy.
> >
> > Err, of course.
> >
> >> How can this change back port to 2.6 kernel ?
> >
> > I guess the patch can be applied as is.  There have been no big changes
> > in that driver since ages.
> >
> >
> 
> This patch may be useless when oss is disabled in kernel 3.x
> 
> aplaymidi -l
> open /dev/snd/seq failed: No such file or directory
> 
> it only happen with snd-ymfpci  when there oss is disabled

This is a different problem.  Please don't mix up.

Is CONFIG_SND_OPL3_LIB_SEQ=y in your kernel config?


Takashi


More information about the Alsa-devel mailing list