[alsa-devel] Problem with snd_hda_intel from 05-27-2010 snapshot

VDR User user.vdr at gmail.com
Mon May 31 22:17:53 CEST 2010


On Mon, May 31, 2010 at 11:30 AM, Jaroslav Kysela <perex at perex.cz> wrote:
> Thanks. Could you try this patch?
>
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index 170610e..ac3dbab 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -1910,7 +1910,7 @@ static int azx_position_ok(struct azx *chip, struct
> azx_dev *azx_dev)
>        if (WARN_ONCE(!azx_dev->period_bytes,
>                      "hda-intel: zero azx_dev->period_bytes"))
>                return -1; /* this shouldn't happen! */
> -       if (wallclk <= azx_dev->period_wallclk &&
> +       if (wallclk < (azx_dev->period_wallclk * 3) / 2 &&
>            pos % azx_dev->period_bytes > azx_dev->period_bytes / 2)
>                /* NG - it's below the first next period boundary */
>                return bdl_pos_adj[chip->dev_index] ? 0 : -1;
>
> -----

I've got a bit of a strange result.  With the above patch (and the
wallclk logging patch from your previous email), sound does not work.
However, it _does_ start working only if I `echo 29 >
/proc/asound/card1/pcm3p/xrun_debug`.  I tested these results with a
reboot in between each attempt just to make sure I'm working with a
clean boot.  I can't imagine what's causing this weird condition.  Any
ideas?

Best regards,
Derek


More information about the Alsa-devel mailing list