diff options
author | Mark Brown <broonie@kernel.org> | 2021-02-17 18:52:26 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2021-02-17 18:52:26 +0000 |
commit | 0969db0d8d15caee41cd817154670c38d9ed7f61 (patch) | |
tree | 8ff546a65226e934d2b975ead545bb8bae54affc /sound/soc/codecs/cros_ec_codec.c | |
parent | 3b9b1490e098f4847a215d2be6a66fbb891bfc7a (diff) | |
parent | 7d25f7ca110e3e1433d3e6b53f4937fdabe42aa7 (diff) | |
download | linux-0969db0d8d15caee41cd817154670c38d9ed7f61.tar.bz2 |
Merge remote-tracking branch 'asoc/for-5.12' into asoc-linus
Diffstat (limited to 'sound/soc/codecs/cros_ec_codec.c')
-rw-r--r-- | sound/soc/codecs/cros_ec_codec.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sound/soc/codecs/cros_ec_codec.c b/sound/soc/codecs/cros_ec_codec.c index f33a2a9654e7..c4772f82485a 100644 --- a/sound/soc/codecs/cros_ec_codec.c +++ b/sound/soc/codecs/cros_ec_codec.c @@ -1011,6 +1011,18 @@ static int cros_ec_codec_platform_probe(struct platform_device *pdev) } priv->ec_capabilities = r.capabilities; + /* Reset EC codec i2s rx. */ + p.cmd = EC_CODEC_I2S_RX_RESET; + ret = send_ec_host_command(priv->ec_device, EC_CMD_EC_CODEC_I2S_RX, + (uint8_t *)&p, sizeof(p), NULL, 0); + if (ret == -ENOPROTOOPT) { + dev_info(dev, + "Missing reset command. Please update EC firmware.\n"); + } else if (ret) { + dev_err(dev, "failed to EC_CODEC_I2S_RESET: %d\n", ret); + return ret; + } + platform_set_drvdata(pdev, priv); ret = devm_snd_soc_register_component(dev, &i2s_rx_component_driver, |