diff options
author | Stephen Warren <swarren@nvidia.com> | 2011-07-26 13:51:24 -0600 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:43:21 -0800 |
commit | ccc7436874afc7b75a32247cfc76351ed24868a0 (patch) | |
tree | afb14a9786ac47af4eb90408409302db2245f4ff /sound/soc/tegra/tegra_wm8903.c | |
parent | 72dbf4392aea4ea7e22a94a48057a0134cbafbb5 (diff) |
ASoC: Tegra: Support Cardhu board in tegra_wm8903.c
Cardhu is a Tegra30 tablet reference design. In terms of audio, it is
extremely similar to Harmony/Ventana, except that the WM8903 codec is
attached to a different I2C bus ID, and different I2S port.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Rebase-Id: Re7572cfde2e359dfb8cf16a5eff38e271f25479d
Diffstat (limited to 'sound/soc/tegra/tegra_wm8903.c')
-rw-r--r-- | sound/soc/tegra/tegra_wm8903.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sound/soc/tegra/tegra_wm8903.c b/sound/soc/tegra/tegra_wm8903.c index f2c1a1041d1e..8c7ff4284437 100644 --- a/sound/soc/tegra/tegra_wm8903.c +++ b/sound/soc/tegra/tegra_wm8903.c @@ -317,7 +317,8 @@ static int tegra_wm8903_init(struct snd_soc_pcm_runtime *rtd) snd_soc_dapm_force_enable_pin(dapm, "Mic Bias"); /* FIXME: Calculate automatically based on DAPM routes? */ - if (!machine_is_harmony()) + if (!machine_is_harmony() && !machine_is_ventana() && + !machine_is_ventana()) snd_soc_dapm_nc_pin(dapm, "IN1L"); if (!machine_is_seaboard() && !machine_is_aebl()) snd_soc_dapm_nc_pin(dapm, "IN1R"); @@ -389,11 +390,17 @@ static __devinit int tegra_wm8903_driver_probe(struct platform_device *pdev) if (ret) goto err_free_machine; + if (machine_is_cardhu()) { + tegra_wm8903_dai.codec_name = "wm8903.4-001a", + tegra_wm8903_dai.cpu_dai_name = "tegra30-i2s.1"; + } + card->dev = &pdev->dev; platform_set_drvdata(pdev, card); snd_soc_card_set_drvdata(card, machine); - if (machine_is_harmony()) { + if (machine_is_harmony() || machine_is_ventana() || + machine_is_cardhu()) { card->dapm_routes = harmony_audio_map; card->num_dapm_routes = ARRAY_SIZE(harmony_audio_map); } else if (machine_is_seaboard()) { |