At Wed, 16 Jul 2008 10:11:27 -0500, Timur Tabi wrote:
Takashi Iwai wrote:
In a simple case, you don't need hw_constraint functions. Just override the corresponding fields of runtime->hw in open callback.
For example, pci/via82xx.c sets the current rate value to runtime->hw.rate_min/max if there is another stream.
Are you talking about this code:
} else { /* a fixed rate */ runtime->hw.rates = SNDRV_PCM_RATE_KNOT; runtime->hw.rate_max = runtime->hw.rate_min = ratep->rate; }
Last I heard, ASoC doesn't work with SNDRV_PCM_RATE_KNOT. But I think I can still use this method. I'll just need to use a real SNDRV_PCM_RATE_xxx value.
KNOT is set there just because it can be any rate (and easy to handle). If the rate is a normal one, e.g. 48kHz, then you can set the appropriate bitflag in hw.rates.
Takashi