On Sun, 24 Aug 2008 20:36:56 +0200 Rene Herman <rene.herman@xxxxxxxxxxxx> wrote: > On 24-08-08 18:08, Krzysztof Helt wrote: > > > From: Krzysztof Helt <krzysztof.h1@xxxxx> > > > > Use the wss_dout function which does not mess > > shadowed register values during chip probing. > > Otherwise, user ends up with stupid mixer settings > > after driver loading. > > > > Signed-off-by: Krzysztof Helt <krzysztof.h1@xxxxx> > > Acked-by: Rene Herman <rene.herman@xxxxxxxxx> > > Must say that I only now notice that we're doing that init loop there. I noticed it on at least three different cards. > I > believe it could be better to introduce an inline __snd_wss_out() with > just the two outb()s and use that from snd_wss_out() and here directly. > snd_wss_dout() is almost the same. The waiting loop should never trigger there and it is safer in case some write needs few micro-secs to finish. > And with respect to the mb() ... if anywhere, should't that be between > the two outb's really? > >From the Documentation/memory-barriers.txt " (*) inX(), outX(): ... They are guaranteed to be fully ordered with respect to each other. They are not guaranteed to be fully ordered with respect to other types of memory and I/O operation. ... " No barriers are needed in this case. Regards, Krzysztof ---------------------------------------------------------------------- Alergia na seks? >> http://link.interia.pl/f1eec _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel