tlv320aic23.c (6627a653bceb3a54e55e5cdc478ec5b8d5c9cc44) | tlv320aic23.c (6335d05548eece40092000aa91b64a50310d69d5) |
---|---|
1/* 2 * ALSA SoC TLV320AIC23 codec driver 3 * 4 * Author: Arun KS, <arunks@mistralsolutions.com> 5 * Copyright: (C) 2008 Mistral Solutions Pvt Ltd., 6 * 7 * Based on sound/soc/codecs/wm8731.c by Richard Purdie 8 * --- 566 unchanged lines hidden (view full) --- 575 codec->bias_level = level; 576 return 0; 577} 578 579#define AIC23_RATES SNDRV_PCM_RATE_8000_96000 580#define AIC23_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ 581 SNDRV_PCM_FMTBIT_S24_3LE | SNDRV_PCM_FMTBIT_S32_LE) 582 | 1/* 2 * ALSA SoC TLV320AIC23 codec driver 3 * 4 * Author: Arun KS, <arunks@mistralsolutions.com> 5 * Copyright: (C) 2008 Mistral Solutions Pvt Ltd., 6 * 7 * Based on sound/soc/codecs/wm8731.c by Richard Purdie 8 * --- 566 unchanged lines hidden (view full) --- 575 codec->bias_level = level; 576 return 0; 577} 578 579#define AIC23_RATES SNDRV_PCM_RATE_8000_96000 580#define AIC23_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ 581 SNDRV_PCM_FMTBIT_S24_3LE | SNDRV_PCM_FMTBIT_S32_LE) 582 |
583static struct snd_soc_dai_ops tlv320aic23_dai_ops = { 584 .prepare = tlv320aic23_pcm_prepare, 585 .hw_params = tlv320aic23_hw_params, 586 .shutdown = tlv320aic23_shutdown, 587 .digital_mute = tlv320aic23_mute, 588 .set_fmt = tlv320aic23_set_dai_fmt, 589 .set_sysclk = tlv320aic23_set_dai_sysclk, 590}; 591 |
|
583struct snd_soc_dai tlv320aic23_dai = { 584 .name = "tlv320aic23", 585 .playback = { 586 .stream_name = "Playback", 587 .channels_min = 2, 588 .channels_max = 2, 589 .rates = AIC23_RATES, 590 .formats = AIC23_FORMATS,}, 591 .capture = { 592 .stream_name = "Capture", 593 .channels_min = 2, 594 .channels_max = 2, 595 .rates = AIC23_RATES, 596 .formats = AIC23_FORMATS,}, | 592struct snd_soc_dai tlv320aic23_dai = { 593 .name = "tlv320aic23", 594 .playback = { 595 .stream_name = "Playback", 596 .channels_min = 2, 597 .channels_max = 2, 598 .rates = AIC23_RATES, 599 .formats = AIC23_FORMATS,}, 600 .capture = { 601 .stream_name = "Capture", 602 .channels_min = 2, 603 .channels_max = 2, 604 .rates = AIC23_RATES, 605 .formats = AIC23_FORMATS,}, |
597 .ops = { 598 .prepare = tlv320aic23_pcm_prepare, 599 .hw_params = tlv320aic23_hw_params, 600 .shutdown = tlv320aic23_shutdown, 601 .digital_mute = tlv320aic23_mute, 602 .set_fmt = tlv320aic23_set_dai_fmt, 603 .set_sysclk = tlv320aic23_set_dai_sysclk, 604 } | 606 .ops = &tlv320aic23_dai_ops, |
605}; 606EXPORT_SYMBOL_GPL(tlv320aic23_dai); 607 608static int tlv320aic23_suspend(struct platform_device *pdev, 609 pm_message_t state) 610{ 611 struct snd_soc_device *socdev = platform_get_drvdata(pdev); 612 struct snd_soc_codec *codec = socdev->card->codec; --- 235 unchanged lines hidden --- | 607}; 608EXPORT_SYMBOL_GPL(tlv320aic23_dai); 609 610static int tlv320aic23_suspend(struct platform_device *pdev, 611 pm_message_t state) 612{ 613 struct snd_soc_device *socdev = platform_get_drvdata(pdev); 614 struct snd_soc_codec *codec = socdev->card->codec; --- 235 unchanged lines hidden --- |