ASoC: Intel: bytcr_rt5640: fallback mechanism if MCLK is not enabled
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Fri, 16 Dec 2016 16:55:49 +0000 (10:55 -0600)
committerMark Brown <broonie@kernel.org>
Mon, 19 Dec 2016 13:30:16 +0000 (13:30 +0000)
commit4a8b3a682be9addff7dbd16371fa8c34103b5c31
treec9cf42719006f29676e87475a74720ef16c1b090
parenta5de5b74a50113564a1e0850e2da96c37c35e55d
ASoC: Intel: bytcr_rt5640: fallback mechanism if MCLK is not enabled

Commit df1a2776a795 ("ASoC: Intel: bytcr_rt5640: add MCLK support")
was merged but the corresponding clock framework patches have not,
after being bumped from audio to clock to x86 domains. The missing
clock-related patches result in a regression starting with 4.9 with
the audio card not being created.

Rather than reverting this commit and all following updates already
queued up for 4.10, handle run-time dependency on MCLK and fall back
to the previous bit-clock mode. This provides the same functionality
as in 4.8 for Baytrail devices. On Baytrail-CR most devices remain
silent with this fallback but additional patches are needed anyway.
As suggested by Mark Brown, the fallback is only allowed with -ENOENT,
all other run-time errors, including -EPROBE_DEFER, will stop the probe
with no sound card registered.

This patch should be applied to -stable as well as ASoC 4.10 fixes

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bytcr_rt5640.c