ASoC: Push the codec runtime storage into the card structure
This is a further stage on the road to refactoring away the ASoC platform device. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
@@ -253,7 +253,7 @@ static int wm8731_hw_params(struct snd_pcm_substream *substream,
|
||||
{
|
||||
struct snd_soc_pcm_runtime *rtd = substream->private_data;
|
||||
struct snd_soc_device *socdev = rtd->socdev;
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
struct wm8731_priv *wm8731 = codec->private_data;
|
||||
u16 iface = wm8731_read_reg_cache(codec, WM8731_IFACE) & 0xfff3;
|
||||
int i = get_coeff(wm8731->sysclk, params_rate(params));
|
||||
@@ -283,7 +283,7 @@ static int wm8731_pcm_prepare(struct snd_pcm_substream *substream,
|
||||
{
|
||||
struct snd_soc_pcm_runtime *rtd = substream->private_data;
|
||||
struct snd_soc_device *socdev = rtd->socdev;
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
|
||||
/* set active */
|
||||
wm8731_write(codec, WM8731_ACTIVE, 0x0001);
|
||||
@@ -296,7 +296,7 @@ static void wm8731_shutdown(struct snd_pcm_substream *substream,
|
||||
{
|
||||
struct snd_soc_pcm_runtime *rtd = substream->private_data;
|
||||
struct snd_soc_device *socdev = rtd->socdev;
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
|
||||
/* deactivate */
|
||||
if (!codec->active) {
|
||||
@@ -458,7 +458,7 @@ EXPORT_SYMBOL_GPL(wm8731_dai);
|
||||
static int wm8731_suspend(struct platform_device *pdev, pm_message_t state)
|
||||
{
|
||||
struct snd_soc_device *socdev = platform_get_drvdata(pdev);
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
|
||||
wm8731_write(codec, WM8731_ACTIVE, 0x0);
|
||||
wm8731_set_bias_level(codec, SND_SOC_BIAS_OFF);
|
||||
@@ -468,7 +468,7 @@ static int wm8731_suspend(struct platform_device *pdev, pm_message_t state)
|
||||
static int wm8731_resume(struct platform_device *pdev)
|
||||
{
|
||||
struct snd_soc_device *socdev = platform_get_drvdata(pdev);
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
int i;
|
||||
u8 data[2];
|
||||
u16 *cache = codec->reg_cache;
|
||||
@@ -490,7 +490,7 @@ static int wm8731_resume(struct platform_device *pdev)
|
||||
*/
|
||||
static int wm8731_init(struct snd_soc_device *socdev)
|
||||
{
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
int reg, ret = 0;
|
||||
|
||||
codec->name = "WM8731";
|
||||
@@ -561,7 +561,7 @@ static int wm8731_i2c_probe(struct i2c_client *i2c,
|
||||
const struct i2c_device_id *id)
|
||||
{
|
||||
struct snd_soc_device *socdev = wm8731_socdev;
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
int ret;
|
||||
|
||||
i2c_set_clientdata(i2c, codec);
|
||||
@@ -642,7 +642,7 @@ err_driver:
|
||||
static int __devinit wm8731_spi_probe(struct spi_device *spi)
|
||||
{
|
||||
struct snd_soc_device *socdev = wm8731_socdev;
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
int ret;
|
||||
|
||||
codec->control_data = spi;
|
||||
@@ -716,7 +716,7 @@ static int wm8731_probe(struct platform_device *pdev)
|
||||
}
|
||||
|
||||
codec->private_data = wm8731;
|
||||
socdev->codec = codec;
|
||||
socdev->card->codec = codec;
|
||||
mutex_init(&codec->mutex);
|
||||
INIT_LIST_HEAD(&codec->dapm_widgets);
|
||||
INIT_LIST_HEAD(&codec->dapm_paths);
|
||||
@@ -750,7 +750,7 @@ static int wm8731_probe(struct platform_device *pdev)
|
||||
static int wm8731_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct snd_soc_device *socdev = platform_get_drvdata(pdev);
|
||||
struct snd_soc_codec *codec = socdev->codec;
|
||||
struct snd_soc_codec *codec = socdev->card->codec;
|
||||
|
||||
if (codec->control_data)
|
||||
wm8731_set_bias_level(codec, SND_SOC_BIAS_OFF);
|
||||
|
Reference in New Issue
Block a user