diff options
author | Jarkko Nikula <jarkko.nikula@nokia.com> | 2008-04-14 09:28:19 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-04-24 06:00:35 -0400 |
commit | f57ab97e767d293132a29a43ca3ecb0f73f1d5bb (patch) | |
tree | fde604bee9e49195e8bfa99410e3070cd3d8255d /sound | |
parent | 87b57fe2d3fb1ce33671b944db9a4cbe0cd065ea (diff) |
[ALSA] ASoC: Add support for 19.2 MHz MCLK in TLV320AIC3X
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/tlv320aic3x.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/codecs/tlv320aic3x.c b/sound/soc/codecs/tlv320aic3x.c index e6a730b0dd29..630684f4a0bc 100644 --- a/sound/soc/codecs/tlv320aic3x.c +++ b/sound/soc/codecs/tlv320aic3x.c | |||
@@ -661,42 +661,52 @@ struct aic3x_rate_divs { | |||
661 | static const struct aic3x_rate_divs aic3x_divs[] = { | 661 | static const struct aic3x_rate_divs aic3x_divs[] = { |
662 | /* 8k */ | 662 | /* 8k */ |
663 | {12000000, 8000, 48000, 0xa, 16, 3840}, | 663 | {12000000, 8000, 48000, 0xa, 16, 3840}, |
664 | {19200000, 8000, 48000, 0xa, 10, 2400}, | ||
664 | {22579200, 8000, 48000, 0xa, 8, 7075}, | 665 | {22579200, 8000, 48000, 0xa, 8, 7075}, |
665 | {33868800, 8000, 48000, 0xa, 5, 8049}, | 666 | {33868800, 8000, 48000, 0xa, 5, 8049}, |
666 | /* 11.025k */ | 667 | /* 11.025k */ |
667 | {12000000, 11025, 44100, 0x6, 15, 528}, | 668 | {12000000, 11025, 44100, 0x6, 15, 528}, |
669 | {19200000, 11025, 44100, 0x6, 9, 4080}, | ||
668 | {22579200, 11025, 44100, 0x6, 8, 0}, | 670 | {22579200, 11025, 44100, 0x6, 8, 0}, |
669 | {33868800, 11025, 44100, 0x6, 5, 3333}, | 671 | {33868800, 11025, 44100, 0x6, 5, 3333}, |
670 | /* 16k */ | 672 | /* 16k */ |
671 | {12000000, 16000, 48000, 0x4, 16, 3840}, | 673 | {12000000, 16000, 48000, 0x4, 16, 3840}, |
674 | {19200000, 16000, 48000, 0x4, 10, 2400}, | ||
672 | {22579200, 16000, 48000, 0x4, 8, 7075}, | 675 | {22579200, 16000, 48000, 0x4, 8, 7075}, |
673 | {33868800, 16000, 48000, 0x4, 5, 8049}, | 676 | {33868800, 16000, 48000, 0x4, 5, 8049}, |
674 | /* 22.05k */ | 677 | /* 22.05k */ |
675 | {12000000, 22050, 44100, 0x2, 15, 528}, | 678 | {12000000, 22050, 44100, 0x2, 15, 528}, |
679 | {19200000, 22050, 44100, 0x2, 9, 4080}, | ||
676 | {22579200, 22050, 44100, 0x2, 8, 0}, | 680 | {22579200, 22050, 44100, 0x2, 8, 0}, |
677 | {33868800, 22050, 44100, 0x2, 5, 3333}, | 681 | {33868800, 22050, 44100, 0x2, 5, 3333}, |
678 | /* 32k */ | 682 | /* 32k */ |
679 | {12000000, 32000, 48000, 0x1, 16, 3840}, | 683 | {12000000, 32000, 48000, 0x1, 16, 3840}, |
684 | {19200000, 32000, 48000, 0x1, 10, 2400}, | ||
680 | {22579200, 32000, 48000, 0x1, 8, 7075}, | 685 | {22579200, 32000, 48000, 0x1, 8, 7075}, |
681 | {33868800, 32000, 48000, 0x1, 5, 8049}, | 686 | {33868800, 32000, 48000, 0x1, 5, 8049}, |
682 | /* 44.1k */ | 687 | /* 44.1k */ |
683 | {12000000, 44100, 44100, 0x0, 15, 528}, | 688 | {12000000, 44100, 44100, 0x0, 15, 528}, |
689 | {19200000, 44100, 44100, 0x0, 9, 4080}, | ||
684 | {22579200, 44100, 44100, 0x0, 8, 0}, | 690 | {22579200, 44100, 44100, 0x0, 8, 0}, |
685 | {33868800, 44100, 44100, 0x0, 5, 3333}, | 691 | {33868800, 44100, 44100, 0x0, 5, 3333}, |
686 | /* 48k */ | 692 | /* 48k */ |
687 | {12000000, 48000, 48000, 0x0, 16, 3840}, | 693 | {12000000, 48000, 48000, 0x0, 16, 3840}, |
694 | {19200000, 48000, 48000, 0x0, 10, 2400}, | ||
688 | {22579200, 48000, 48000, 0x0, 8, 7075}, | 695 | {22579200, 48000, 48000, 0x0, 8, 7075}, |
689 | {33868800, 48000, 48000, 0x0, 5, 8049}, | 696 | {33868800, 48000, 48000, 0x0, 5, 8049}, |
690 | /* 64k */ | 697 | /* 64k */ |
691 | {12000000, 64000, 96000, 0x1, 16, 3840}, | 698 | {12000000, 64000, 96000, 0x1, 16, 3840}, |
699 | {19200000, 64000, 96000, 0x1, 10, 2400}, | ||
692 | {22579200, 64000, 96000, 0x1, 8, 7075}, | 700 | {22579200, 64000, 96000, 0x1, 8, 7075}, |
693 | {33868800, 64000, 96000, 0x1, 5, 8049}, | 701 | {33868800, 64000, 96000, 0x1, 5, 8049}, |
694 | /* 88.2k */ | 702 | /* 88.2k */ |
695 | {12000000, 88200, 88200, 0x0, 15, 528}, | 703 | {12000000, 88200, 88200, 0x0, 15, 528}, |
704 | {19200000, 88200, 88200, 0x0, 9, 4080}, | ||
696 | {22579200, 88200, 88200, 0x0, 8, 0}, | 705 | {22579200, 88200, 88200, 0x0, 8, 0}, |
697 | {33868800, 88200, 88200, 0x0, 5, 3333}, | 706 | {33868800, 88200, 88200, 0x0, 5, 3333}, |
698 | /* 96k */ | 707 | /* 96k */ |
699 | {12000000, 96000, 96000, 0x0, 16, 3840}, | 708 | {12000000, 96000, 96000, 0x0, 16, 3840}, |
709 | {19200000, 96000, 96000, 0x0, 10, 2400}, | ||
700 | {22579200, 96000, 96000, 0x0, 8, 7075}, | 710 | {22579200, 96000, 96000, 0x0, 8, 7075}, |
701 | {33868800, 96000, 96000, 0x0, 5, 8049}, | 711 | {33868800, 96000, 96000, 0x0, 5, 8049}, |
702 | }; | 712 | }; |
@@ -818,6 +828,7 @@ static int aic3x_set_dai_sysclk(struct snd_soc_codec_dai *codec_dai, | |||
818 | 828 | ||
819 | switch (freq) { | 829 | switch (freq) { |
820 | case 12000000: | 830 | case 12000000: |
831 | case 19200000: | ||
821 | case 22579200: | 832 | case 22579200: |
822 | case 33868800: | 833 | case 33868800: |
823 | aic3x->sysclk = freq; | 834 | aic3x->sysclk = freq; |