Re: [PATCH] ad1838/cs4231 -- fix MCE timeout upon initial load

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 9/10/07, Rene Herman <rene.herman@xxxxxxxxx> wrote:
> On 09/10/2007 11:40 PM, Krzysztof Helt wrote:
>
> > On Mon, 10 Sep 2007 20:29:21 +0200
> > Rene Herman <rene.herman@xxxxxxxxx> wrote:
> >> Thanks to Krysztof Helt for pinpointing this problem.
> >>
> >
> > Please change it to Krzysztof Helt
>
> Oh, very sorry.
>
> >> diff --git a/sound/isa/cs423x/cs4231_lib.c b/sound/isa/cs423x/cs4231_lib.c
> >> index 914d77b..9e8e0f1 100644
> >> --- a/sound/isa/cs423x/cs4231_lib.c
> >> +++ b/sound/isa/cs423x/cs4231_lib.c
> >> @@ -346,16 +346,14 @@ void snd_cs4231_mce_down(struct snd_cs4231 *chip)
> >>      }
> >>      snd_cs4231_busy_wait(chip);
> >>
> >> -    /* calibration process */
> >> -
> >
> > The snd_cs4231_busy_wait(chip) is not needed any more here.
>
> I believe it is. I glanced over the CS4232 datasheet (note how cs4232 uses
> snd-cs4332-lib) and it adds a point 4 (see page 53):
>
> * Wait until 80h NOT returned
>

I think it is not needed to way for it with this 1ms delay.

Anyway, do you care to change this long snd_cs4231_busy_wait(chip) to
the snd_cs4231_wait(chip) used in other functions to wait for ready
bit?

I suppose the comment and code:

 /* huh.. looks like this sequence is proper for CS4231A chip (GUS MAX) */
    for (timeout = 5; timeout > 0; timeout--)
        cs4231_inb(chip, CS4231P(REGSEL));


was needed to fix what we fixed (delay checking bits until they are
set). My aim is to completely eliminate snd_cs4231_busy_wait() and
replace it with just snd_cs4231_wait().

Regards,
Krzysztof
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux