Skip to content

Commit

Permalink
ASoC: cs42l43: Correct extraction of data pointer in suspend/resume
Browse files Browse the repository at this point in the history
The current code is pulling the wrong pointer causing it to disable the
wrong IRQ. Correct the code to pull the correct cs42l43 core data
pointer.

Fixes: 64353af ("ASoC: cs42l43: Add system suspend ops to disable IRQ")
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://msgid.link/r/20240326105434.852907-1-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
  • Loading branch information
Charles Keepax authored and Mark Brown committed Mar 26, 2024
1 parent 708181c commit 56ebbd1
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions sound/soc/codecs/cs42l43.c
Original file line number Diff line number Diff line change
Expand Up @@ -2364,7 +2364,8 @@ static int cs42l43_codec_runtime_resume(struct device *dev)

static int cs42l43_codec_suspend(struct device *dev)
{
struct cs42l43 *cs42l43 = dev_get_drvdata(dev);
struct cs42l43_codec *priv = dev_get_drvdata(dev);
struct cs42l43 *cs42l43 = priv->core;

disable_irq(cs42l43->irq);

Expand All @@ -2373,7 +2374,8 @@ static int cs42l43_codec_suspend(struct device *dev)

static int cs42l43_codec_suspend_noirq(struct device *dev)
{
struct cs42l43 *cs42l43 = dev_get_drvdata(dev);
struct cs42l43_codec *priv = dev_get_drvdata(dev);
struct cs42l43 *cs42l43 = priv->core;

enable_irq(cs42l43->irq);

Expand All @@ -2382,7 +2384,8 @@ static int cs42l43_codec_suspend_noirq(struct device *dev)

static int cs42l43_codec_resume(struct device *dev)
{
struct cs42l43 *cs42l43 = dev_get_drvdata(dev);
struct cs42l43_codec *priv = dev_get_drvdata(dev);
struct cs42l43 *cs42l43 = priv->core;

enable_irq(cs42l43->irq);

Expand All @@ -2391,7 +2394,8 @@ static int cs42l43_codec_resume(struct device *dev)

static int cs42l43_codec_resume_noirq(struct device *dev)
{
struct cs42l43 *cs42l43 = dev_get_drvdata(dev);
struct cs42l43_codec *priv = dev_get_drvdata(dev);
struct cs42l43 *cs42l43 = priv->core;

disable_irq(cs42l43->irq);

Expand Down

0 comments on commit 56ebbd1

Please sign in to comment.