Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b3b50b3f authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Add suspend and resume callbacks to Wolfson CODEC drivers

parent 831dc0f1
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -1671,6 +1671,21 @@ static int __devexit wm8350_codec_remove(struct platform_device *pdev)
	return 0;
}

#ifdef CONFIG_PM
static int wm8350_codec_suspend(struct platform_device *pdev, pm_message_t m)
{
	return snd_soc_suspend_device(&pdev->dev);
}

static int wm8350_codec_resume(struct platform_device *pdev)
{
	return snd_soc_resume_device(&pdev->dev);
}
#else
#define wm8350_codec_suspend NULL
#define wm8350_codec_resume NULL
#endif

static struct platform_driver wm8350_codec_driver = {
	.driver = {
		   .name = "wm8350-codec",
@@ -1678,6 +1693,8 @@ static struct platform_driver wm8350_codec_driver = {
		   },
	.probe = wm8350_codec_probe,
	.remove = __devexit_p(wm8350_codec_remove),
	.suspend = wm8350_codec_suspend,
	.resume = wm8350_codec_resume,
};

static __init int wm8350_init(void)
+17 −0
Original line number Diff line number Diff line
@@ -1553,6 +1553,21 @@ static int __exit wm8400_codec_remove(struct platform_device *dev)
	return 0;
}

#ifdef CONFIG_PM
static int wm8400_pdev_suspend(struct platform_device *pdev, pm_message_t msg)
{
	return snd_soc_suspend_device(&pdev->dev);
}

static int wm8400_pdev_resume(struct platform_device *pdev)
{
	return snd_soc_resume_device(&pdev->dev);
}
#else
#define wm8400_pdev_suspend NULL
#define wm8400_pdev_resume NULL
#endif

static struct platform_driver wm8400_codec_driver = {
	.driver = {
		.name = "wm8400-codec",
@@ -1560,6 +1575,8 @@ static struct platform_driver wm8400_codec_driver = {
	},
	.probe = wm8400_codec_probe,
	.remove	= __exit_p(wm8400_codec_remove),
	.suspend = wm8400_pdev_suspend,
	.resume = wm8400_pdev_resume,
};

static int __init wm8400_codec_init(void)
+17 −0
Original line number Diff line number Diff line
@@ -995,6 +995,21 @@ static int wm8580_i2c_remove(struct i2c_client *client)
	return 0;
}

#ifdef CONFIG_PM
static int wm8580_i2c_suspend(struct i2c_client *client, pm_message_t msg)
{
	return snd_soc_suspend_device(&client->dev);
}

static int wm8580_i2c_resume(struct i2c_client *client)
{
	return snd_soc_resume_device(&client->dev);
}
#else
#define wm8580_i2c_suspend NULL
#define wm8580_i2c_resume NULL
#endif

static const struct i2c_device_id wm8580_i2c_id[] = {
	{ "wm8580", 0 },
	{ }
@@ -1008,6 +1023,8 @@ static struct i2c_driver wm8580_i2c_driver = {
	},
	.probe =    wm8580_i2c_probe,
	.remove =   wm8580_i2c_remove,
	.suspend =  wm8580_i2c_suspend,
	.resume =   wm8580_i2c_resume,
	.id_table = wm8580_i2c_id,
};
#endif
+39 −0
Original line number Diff line number Diff line
@@ -460,6 +460,7 @@ struct snd_soc_dai wm8731_dai = {
};
EXPORT_SYMBOL_GPL(wm8731_dai);

#ifdef CONFIG_PM
static int wm8731_suspend(struct platform_device *pdev, pm_message_t state)
{
	struct snd_soc_device *socdev = platform_get_drvdata(pdev);
@@ -488,6 +489,10 @@ static int wm8731_resume(struct platform_device *pdev)
	wm8731_set_bias_level(codec, codec->suspend_bias_level);
	return 0;
}
#else
#define wm8731_suspend NULL
#define wm8731_resume NULL
#endif

static int wm8731_probe(struct platform_device *pdev)
{
@@ -680,6 +685,21 @@ static int __devexit wm8731_spi_remove(struct spi_device *spi)
	return 0;
}

#ifdef CONFIG_PM
static int wm8731_spi_suspend(struct spi_device *spi, pm_message_t msg)
{
	return snd_soc_suspend_device(&spi->dev);
}

static int wm8731_spi_resume(struct spi_device *spi)
{
	return snd_soc_resume_device(&spi->dev);
}
#else
#define wm8731_spi_suspend NULL
#define wm8731_spi_resume NULL
#endif

static struct spi_driver wm8731_spi_driver = {
	.driver = {
		.name	= "wm8731",
@@ -687,6 +707,8 @@ static struct spi_driver wm8731_spi_driver = {
		.owner	= THIS_MODULE,
	},
	.probe		= wm8731_spi_probe,
	.suspend	= wm8731_spi_suspend,
	.resume		= wm8731_spi_resume,
	.remove		= __devexit_p(wm8731_spi_remove),
};
#endif /* CONFIG_SPI_MASTER */
@@ -720,6 +742,21 @@ static __devexit int wm8731_i2c_remove(struct i2c_client *client)
	return 0;
}

#ifdef CONFIG_PM
static int wm8731_i2c_suspend(struct i2c_client *i2c, pm_message_t msg)
{
	return snd_soc_suspend_device(&i2c->dev);
}

static int wm8731_i2c_resume(struct i2c_client *i2c)
{
	return snd_soc_resume_device(&i2c->dev);
}
#else
#define wm8731_i2c_suspend NULL
#define wm8731_i2c_resume NULL
#endif

static const struct i2c_device_id wm8731_i2c_id[] = {
	{ "wm8731", 0 },
	{ }
@@ -733,6 +770,8 @@ static struct i2c_driver wm8731_i2c_driver = {
	},
	.probe =    wm8731_i2c_probe,
	.remove =   __devexit_p(wm8731_i2c_remove),
	.suspend =  wm8731_i2c_suspend,
	.resume =   wm8731_i2c_resume,
	.id_table = wm8731_i2c_id,
};
#endif
+35 −0
Original line number Diff line number Diff line
@@ -1766,6 +1766,21 @@ static int wm8753_i2c_remove(struct i2c_client *client)
        return 0;
}

#ifdef CONFIG_PM
static int wm8753_i2c_suspend(struct i2c_client *client, pm_message_t msg)
{
	return snd_soc_suspend_device(&client->dev);
}

static int wm8753_i2c_resume(struct i2c_client *client)
{
	return snd_soc_resume_device(&client->dev);
}
#else
#define wm8753_i2c_suspend NULL
#define wm8753_i2c_resume NULL
#endif

static const struct i2c_device_id wm8753_i2c_id[] = {
	{ "wm8753", 0 },
	{ }
@@ -1779,6 +1794,8 @@ static struct i2c_driver wm8753_i2c_driver = {
	},
	.probe =    wm8753_i2c_probe,
	.remove =   wm8753_i2c_remove,
	.suspend =  wm8753_i2c_suspend,
	.resume =   wm8753_i2c_resume,
	.id_table = wm8753_i2c_id,
};
#endif
@@ -1834,6 +1851,22 @@ static int __devexit wm8753_spi_remove(struct spi_device *spi)
	return 0;
}

#ifdef CONFIG_PM
static int wm8753_spi_suspend(struct spi_device *spi, pm_message_t msg)
{
	return snd_soc_suspend_device(&spi->dev);
}

static int wm8753_spi_resume(struct spi_device *spi)
{
	return snd_soc_resume_device(&spi->dev);
}

#else
#define wm8753_spi_suspend NULL
#define wm8753_spi_resume NULL
#endif

static struct spi_driver wm8753_spi_driver = {
	.driver = {
		.name	= "wm8753",
@@ -1842,6 +1875,8 @@ static struct spi_driver wm8753_spi_driver = {
	},
	.probe		= wm8753_spi_probe,
	.remove		= __devexit_p(wm8753_spi_remove),
	.suspend	= wm8753_spi_suspend,
	.resume		= wm8753_spi_resume,
};
#endif

Loading