diff options
author | Rongjun Ying | 2014-03-05 02:34:34 -0600 |
---|---|---|
committer | Mark Brown | 2014-03-06 01:59:19 -0600 |
commit | f516e368dcb5eb5fbe23246c09bf69573d67cd18 (patch) | |
tree | 94780f5f04dc098de366adf41506214ac659ec9e /Documentation/devicetree/bindings/sound/sirf-audio-codec.txt | |
parent | 38dbfb59d1175ef458d006556061adeaa8751b72 (diff) | |
download | ti-linux-kernel-f516e368dcb5eb5fbe23246c09bf69573d67cd18.tar.gz ti-linux-kernel-f516e368dcb5eb5fbe23246c09bf69573d67cd18.tar.xz ti-linux-kernel-f516e368dcb5eb5fbe23246c09bf69573d67cd18.zip |
ASoC: sirf: Add SiRF internal audio codec driver
SiRF internal audio codec is integrated in SiRF atlas6 and prima2 SoC.
Features include:
1. Stereo DAC and ADC with 16-bit resolution amd 48KHz sample rate
2. Support headphone and/or speaker output
3. Integrate headphone and speaker output amp
4. Support LINE and MIC input
5. Support single ended and differential input mode
Signed-off-by: Rongjun Ying <rongjun.ying@csr.com>
--v5:
1. Drop all inlines.
2. Reordering the Kconfig and Makefile
3. Remove the sirf_audio_codec_reg_bits struct, use the new controls instead it.
4. Add some SND_SOC_DAPM_OUT_DRV instead of HP and SPK enable driver
5. Add audio codec clock supply instead of adc event callback
6. Fixed playback and capture can't concurrent work bug.
--
.../devicetree/bindings/sound/sirf-audio-codec.txt | 17 +
sound/soc/codecs/Kconfig | 5 +
sound/soc/codecs/Makefile | 1 +
sound/soc/codecs/sirf-audio-codec.c | 533 ++++++++++++++++++++
sound/soc/codecs/sirf-audio-codec.h | 75 +++
5 files changed, 631 insertions(+), 0 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/sirf-audio-codec.txt
create mode 100644 sound/soc/codecs/sirf-audio-codec.c
create mode 100644 sound/soc/codecs/sirf-audio-codec.h
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'Documentation/devicetree/bindings/sound/sirf-audio-codec.txt')
-rw-r--r-- | Documentation/devicetree/bindings/sound/sirf-audio-codec.txt | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt new file mode 100644 index 000000000000..062f5ec36f9b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | SiRF internal audio CODEC | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : "sirf,atlas6-audio-codec" or "sirf,prima2-audio-codec" | ||
6 | |||
7 | - reg : the register address of the device. | ||
8 | |||
9 | - clocks: the clock of SiRF internal audio codec | ||
10 | |||
11 | Example: | ||
12 | |||
13 | audiocodec: audiocodec@b0040000 { | ||
14 | compatible = "sirf,atlas6-audio-codec"; | ||
15 | reg = <0xb0040000 0x10000>; | ||
16 | clocks = <&clks 27>; | ||
17 | }; | ||