forked from Minki/linux
ASoC: codecs: Add DA9055 codec driver
This patch adds support for Dialog semiconductor's DA9055 audio codec. This has been tested on DA9055 EVB with Samsung SMDK6410 board. Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com> Signed-off-by: David Dajun Chen <david.chen@diasemi.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
da75c92487
commit
9911f7f756
33
include/sound/da9055.h
Normal file
33
include/sound/da9055.h
Normal file
@ -0,0 +1,33 @@
|
||||
/*
|
||||
* DA9055 ALSA Soc codec driver
|
||||
*
|
||||
* Copyright (c) 2012 Dialog Semiconductor
|
||||
*
|
||||
* Tested on (Samsung SMDK6410 board + DA9055 EVB) using I2S and I2C
|
||||
* Written by David Chen <david.chen@diasemi.com> and
|
||||
* Ashish Chavan <ashish.chavan@kpitcummins.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License as published by the
|
||||
* Free Software Foundation; either version 2 of the License, or (at your
|
||||
* option) any later version.
|
||||
*/
|
||||
|
||||
#ifndef __SOUND_DA9055_H__
|
||||
#define __SOUND_DA9055_H__
|
||||
|
||||
enum da9055_micbias_voltage {
|
||||
DA9055_MICBIAS_1_6V = 0,
|
||||
DA9055_MICBIAS_1_8V = 1,
|
||||
DA9055_MICBIAS_2_1V = 2,
|
||||
DA9055_MICBIAS_2_2V = 3,
|
||||
};
|
||||
|
||||
struct da9055_platform_data {
|
||||
/* Selects which of the two MicBias pins acts as the bias source */
|
||||
bool micbias_source;
|
||||
/* Selects the micbias voltage */
|
||||
enum da9055_micbias_voltage micbias;
|
||||
};
|
||||
|
||||
#endif
|
@ -37,6 +37,7 @@ config SND_SOC_ALL_CODECS
|
||||
select SND_SOC_CX20442
|
||||
select SND_SOC_DA7210 if I2C
|
||||
select SND_SOC_DA732X if I2C
|
||||
select SND_SOC_DA9055 if I2C
|
||||
select SND_SOC_DFBMCS320
|
||||
select SND_SOC_ISABELLE if I2C
|
||||
select SND_SOC_JZ4740_CODEC
|
||||
@ -239,6 +240,9 @@ config SND_SOC_DA7210
|
||||
config SND_SOC_DA732X
|
||||
tristate
|
||||
|
||||
config SND_SOC_DA9055
|
||||
tristate
|
||||
|
||||
config SND_SOC_DFBMCS320
|
||||
tristate
|
||||
|
||||
|
@ -24,6 +24,7 @@ snd-soc-cs4271-objs := cs4271.o
|
||||
snd-soc-cx20442-objs := cx20442.o
|
||||
snd-soc-da7210-objs := da7210.o
|
||||
snd-soc-da732x-objs := da732x.o
|
||||
snd-soc-da9055-objs := da9055.o
|
||||
snd-soc-dfbmcs320-objs := dfbmcs320.o
|
||||
snd-soc-dmic-objs := dmic.o
|
||||
snd-soc-isabelle-objs := isabelle.o
|
||||
@ -144,6 +145,7 @@ obj-$(CONFIG_SND_SOC_CS4271) += snd-soc-cs4271.o
|
||||
obj-$(CONFIG_SND_SOC_CX20442) += snd-soc-cx20442.o
|
||||
obj-$(CONFIG_SND_SOC_DA7210) += snd-soc-da7210.o
|
||||
obj-$(CONFIG_SND_SOC_DA732X) += snd-soc-da732x.o
|
||||
obj-$(CONFIG_SND_SOC_DA9055) += snd-soc-da9055.o
|
||||
obj-$(CONFIG_SND_SOC_DFBMCS320) += snd-soc-dfbmcs320.o
|
||||
obj-$(CONFIG_SND_SOC_DMIC) += snd-soc-dmic.o
|
||||
obj-$(CONFIG_SND_SOC_ISABELLE) += snd-soc-isabelle.o
|
||||
|
1510
sound/soc/codecs/da9055.c
Normal file
1510
sound/soc/codecs/da9055.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user