diff -r 840a08bfad3d soc/soc-core.c --- a/soc/soc-core.c Sat Nov 25 22:02:47 2006 +0000 +++ b/soc/soc-core.c Sun Nov 26 07:18:41 2006 +0000 @@ -424,7 +424,7 @@ static int soc_hw_match_params(struct sn /* normalise cpu bfs div & codec const mult */ codec_bfs = soc_bfs_rate_to_div(codec_dai_mode->bfs, rate, mclk, rtd->codec_dai->dai_runtime.pcmfmt, chn); - if(codec_dai_mode->bfs & codec_bfs) { + if(cpu_dai_mode->bfs & codec_bfs) { rtd->cpu_dai->dai_runtime.bfs = codec_bfs; rtd->codec_dai->dai_runtime.bfs = codec_dai_mode->bfs; } else