summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans de Goede2018-03-04 15:36:00 +0100
committerMark Brown2018-03-07 15:17:52 +0100
commitc2f26938d2a456dcf429385617e58cfd510a64a8 (patch)
tree5ab7eca0b56049c8da95a974ca409d10aec6096e
parentASoC: Intel: bytcr_rt5651: Pass jack-src info via device-properties (diff)
downloadkernel-qcow2-linux-c2f26938d2a456dcf429385617e58cfd510a64a8.tar.gz
kernel-qcow2-linux-c2f26938d2a456dcf429385617e58cfd510a64a8.tar.xz
kernel-qcow2-linux-c2f26938d2a456dcf429385617e58cfd510a64a8.zip
ASoC: Intel: bytcr_rt5651: Actually honor the DMIC_EN quirk if specified
Before this commit it was possible to set the DMIC_EN quirk in the machine driver, but it would never be passed to the codec driver so it was a nop. This commit adds code to actually pass the quirk to the codec driver. Since the DMIC_EN quirk was ignored before, this commit removes it from the default quirk settings, to avoid this causing an unexpected functional change. If we really want the DMIC_EN behavior anywhere it should be specifically enabled by follow up commits. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/intel/boards/bytcr_rt5651.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sound/soc/intel/boards/bytcr_rt5651.c b/sound/soc/intel/boards/bytcr_rt5651.c
index 499e405e591b..a874bba3aec0 100644
--- a/sound/soc/intel/boards/bytcr_rt5651.c
+++ b/sound/soc/intel/boards/bytcr_rt5651.c
@@ -57,8 +57,8 @@ enum {
#define BYT_RT5651_MCLK_EN BIT(17)
#define BYT_RT5651_MCLK_25MHZ BIT(18)
-/* jack-detect-source + terminating empty entry */
-#define MAX_NO_PROPS 2
+/* jack-detect-source + dmic-en + terminating empty entry */
+#define MAX_NO_PROPS 3
struct byt_rt5651_private {
struct clk *mclk;
@@ -66,7 +66,6 @@ struct byt_rt5651_private {
};
static unsigned long byt_rt5651_quirk = BYT_RT5651_DMIC_MAP |
- BYT_RT5651_DMIC_EN |
BYT_RT5651_MCLK_EN;
static void log_quirks(struct device *dev)
@@ -327,6 +326,9 @@ static int byt_rt5651_add_codec_device_props(const char *i2c_dev_name)
props[cnt++] = PROPERTY_ENTRY_U32("realtek,jack-detect-source",
BYT_RT5651_JDSRC(byt_rt5651_quirk));
+ if (byt_rt5651_quirk & BYT_RT5651_DMIC_EN)
+ props[cnt++] = PROPERTY_ENTRY_BOOL("realtek,dmic-en");
+
ret = device_add_properties(i2c_dev, props);
put_device(i2c_dev);