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

VDR User user.vdr at gmail.com
Tue Jun 1 09:15:13 CEST 2010


On Mon, May 31, 2010 at 10:39 PM, Jaroslav Kysela <perex at perex.cz> wrote:
> Thanks. Here is next correction:
>
> diff --git a/sound/pci/hda/hda_intel.c b/sound/pci/hda/hda_intel.c
> index 170610e..b6ba210 100644
> --- a/sound/pci/hda/hda_intel.c
> +++ b/sound/pci/hda/hda_intel.c
> @@ -1910,11 +1910,11 @@ 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;
> -       azx_dev->start_wallclk = wallclk;
> +       azx_dev->start_wallclk += wallclk;
>        return 1; /* OK, it's fine */
>  }
>

Great news!  With the previous patch and the one quoted above, sound
is now working without setting xrun_debug.  Now that the bug has been
fixed, what exactly was going wrong in the first place?

Thanks for your help Jaroslav!
-Derek


More information about the Alsa-devel mailing list