Skip to content

Commit

Permalink
ASoC: DaVinci: Add audio support fot DA850/OMAP-L138 EVM
Browse files Browse the repository at this point in the history
There is one instance of McASP on DA850/OMAP-L138 SoC. This is
connected to TLV320AIC3106 codec for audio playback and capture.
This patch adds audio support on this platform. Some of the
structure prefix names which are common for DA830/OMAP-L137 EVM and
DA850/OMAP-L138 EVM have been renamed to da8xx from da830.

Signed-off-by: Chaithrika U S <chaithrika@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
  • Loading branch information
Chaithrika U S authored and Mark Brown committed Aug 13, 2009
1 parent 517ee6c commit 30230f4
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 8 deletions.
13 changes: 11 additions & 2 deletions sound/soc/davinci/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,21 @@ config SND_DAVINCI_SOC_SFFSDR
Lyrtech SFFSDR board.

config SND_DA830_SOC_EVM
tristate "SoC Audio support for DA830/OMAPL137 EVM"
tristate "SoC Audio support for DA830/OMAP-L137 EVM"
depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA830_EVM
select SND_DAVINCI_SOC_MCASP
select SND_SOC_TLV320AIC3X

help
Say Y if you want to add support for SoC audio on TI
DA830/OMAPL137 EVM
DA830/OMAP-L137 EVM

config SND_DA850_SOC_EVM
tristate "SoC Audio support for DA850/OMAP-L138 EVM"
depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA850_EVM
select SND_DAVINCI_SOC_MCASP
select SND_SOC_TLV320AIC3X
help
Say Y if you want to add support for SoC audio on TI
DA850/OMAP-L138 EVM

1 change: 1 addition & 0 deletions sound/soc/davinci/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ snd-soc-sffsdr-objs := davinci-sffsdr.o
obj-$(CONFIG_SND_DAVINCI_SOC_EVM) += snd-soc-evm.o
obj-$(CONFIG_SND_DM6467_SOC_EVM) += snd-soc-evm.o
obj-$(CONFIG_SND_DA830_SOC_EVM) += snd-soc-evm.o
obj-$(CONFIG_SND_DA850_SOC_EVM) += snd-soc-evm.o
obj-$(CONFIG_SND_DAVINCI_SOC_SFFSDR) += snd-soc-sffsdr.o
29 changes: 23 additions & 6 deletions sound/soc/davinci/davinci-evm.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ static int evm_hw_params(struct snd_pcm_substream *substream,
else if (machine_is_davinci_evm())
sysclk = 12288000;

else if (machine_is_davinci_da830_evm())
else if (machine_is_davinci_da830_evm() ||
machine_is_davinci_da850_evm())
sysclk = 24576000;

else
Expand Down Expand Up @@ -165,7 +166,7 @@ static struct snd_soc_dai_link dm6467_evm_dai[] = {
.ops = &evm_ops,
},
};
static struct snd_soc_dai_link da830_evm_dai = {
static struct snd_soc_dai_link da8xx_evm_dai = {
.name = "TLV320AIC3X",
.stream_name = "AIC3X",
.cpu_dai = &davinci_mcasp_dai[DAVINCI_MCASP_I2S_DAI],
Expand All @@ -191,8 +192,15 @@ static struct snd_soc_card dm6467_snd_soc_card_evm = {
};

static struct snd_soc_card da830_snd_soc_card = {
.name = "DA830 EVM",
.dai_link = &da830_evm_dai,
.name = "DA830/OMAP-L137 EVM",
.dai_link = &da8xx_evm_dai,
.platform = &davinci_soc_platform,
.num_links = 1,
};

static struct snd_soc_card da850_snd_soc_card = {
.name = "DA850/OMAP-L138 EVM",
.dai_link = &da8xx_evm_dai,
.platform = &davinci_soc_platform,
.num_links = 1,
};
Expand All @@ -209,7 +217,7 @@ static struct aic3x_setup_data dm6467_evm_aic3x_setup = {
.i2c_address = 0x18,
};

static struct aic3x_setup_data da830_evm_aic3x_setup = {
static struct aic3x_setup_data da8xx_evm_aic3x_setup = {
.i2c_bus = 1,
.i2c_address = 0x18,
};
Expand All @@ -232,7 +240,13 @@ static struct snd_soc_device dm6467_evm_snd_devdata = {
static struct snd_soc_device da830_evm_snd_devdata = {
.card = &da830_snd_soc_card,
.codec_dev = &soc_codec_dev_aic3x,
.codec_data = &da830_evm_aic3x_setup,
.codec_data = &da8xx_evm_aic3x_setup,
};

static struct snd_soc_device da850_evm_snd_devdata = {
.card = &da850_snd_soc_card,
.codec_dev = &soc_codec_dev_aic3x,
.codec_data = &da8xx_evm_aic3x_setup,
};

static struct platform_device *evm_snd_device;
Expand All @@ -255,6 +269,9 @@ static int __init evm_init(void)
} else if (machine_is_davinci_da830_evm()) {
evm_snd_dev_data = &da830_evm_snd_devdata;
index = 1;
} else if (machine_is_davinci_da850_evm()) {
evm_snd_dev_data = &da850_evm_snd_devdata;
index = 0;
} else
return -EINVAL;

Expand Down

0 comments on commit 30230f4

Please sign in to comment.