summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/cs35l45-i2c.c
diff options
context:
space:
mode:
authorVlad.Karpovich <vkarpovi@opensource.cirrus.com>2023-03-15 10:47:22 -0500
committerMark Brown <broonie@kernel.org>2023-03-21 12:46:42 +0000
commit6c07be8fe92c6b0c24ee1c599601dce3506b83c7 (patch)
treefcf50455ab68733a03d3c49201826bf7c1b8337b /sound/soc/codecs/cs35l45-i2c.c
parent74b14e2850a34740c121cf2758d4181063d4c77c (diff)
downloadlinux-6c07be8fe92c6b0c24ee1c599601dce3506b83c7.tar.gz
linux-6c07be8fe92c6b0c24ee1c599601dce3506b83c7.tar.bz2
linux-6c07be8fe92c6b0c24ee1c599601dce3506b83c7.zip
ASoC: cs35l45: Hibernation support
Adds support for a low-power Hibernation State. Add support for a low-power hibernation state for the DSP. In this state the DSP RAM contents are maintained, such that firmware does not need to be re-downloaded, but the rest of the chip's register state is lost. Entry to this state is achieved via the register interface (either by an external driver using the control port, or the programmable DSP). Exit from this state is triggered by activity on device GPIO pins, intended SPI transaction, or I2C transaction with intended slave address. Signed-off-by: Vlad Karpovich <vkarpovi@opensource.cirrus.com> Link: https://lore.kernel.org/r/167933511185.26.10641185496218226278@mailman-core.alsa-project.org Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/codecs/cs35l45-i2c.c')
-rw-r--r--sound/soc/codecs/cs35l45-i2c.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sound/soc/codecs/cs35l45-i2c.c b/sound/soc/codecs/cs35l45-i2c.c
index 33fa6d59e9a4..562f73df7afa 100644
--- a/sound/soc/codecs/cs35l45-i2c.c
+++ b/sound/soc/codecs/cs35l45-i2c.c
@@ -33,6 +33,8 @@ static int cs35l45_i2c_probe(struct i2c_client *client)
cs35l45->dev = dev;
cs35l45->irq = client->irq;
+ cs35l45->bus_type = CONTROL_BUS_I2C;
+ cs35l45->i2c_addr = client->addr;
return cs35l45_probe(cs35l45);
}