summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorLei Fan <leif@nvidia.com>2013-12-12 18:22:11 +0800
committerMartin Chi <mchi@nvidia.com>2013-12-31 08:00:12 -0800
commit0ae85d3392b042d0dfa449503e5d9b350de1cd20 (patch)
treec1af8b002cc3c19a7b837e1726c0d63d776a48fa /arch
parentae192d0c3ccc200d926bf9a2db1fb9cf15693caf (diff)
ARM: tegra:TN7C: Enable audio clock for voice call
Enable DAPs which is used by voice call for tegranote7c, Bug 1410909 Bug 1418728 Change-Id: I20e4df26ee0ac9e1d51f5e6790abdc20532805a5 Signed-off-by: Lei Fan <leif@nvidia.com> Reviewed-on: http://git-master/r/344768 Reviewed-by: Martin Chi <mchi@nvidia.com> Tested-by: Martin Chi <mchi@nvidia.com> Reviewed-on: http://git-master/r/350643 Reviewed-by: Automatic_Commit_Validation_User GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/board-tegranote7c.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-tegranote7c.c b/arch/arm/mach-tegra/board-tegranote7c.c
index 6ab338b4fd89..0fe3926fefef 100644
--- a/arch/arm/mach-tegra/board-tegranote7c.c
+++ b/arch/arm/mach-tegra/board-tegranote7c.c
@@ -152,7 +152,9 @@ static __initdata struct tegra_clk_init_table tegranote7c_clk_init_table[] = {
{ "hda", "pll_p", 108000000, false},
{ "hda2codec_2x", "pll_p", 48000000, false},
{ "pwm", "pll_p", 48000000, false},
+ { "i2s0", "pll_a_out0", 0, false},
{ "i2s1", "pll_a_out0", 0, false},
+ { "i2s2", "pll_a_out0", 0, false},
{ "i2s3", "pll_a_out0", 0, false},
{ "i2s4", "pll_a_out0", 0, false},
{ "spdif_out", "pll_a_out0", 0, false},
@@ -160,8 +162,11 @@ static __initdata struct tegra_clk_init_table tegranote7c_clk_init_table[] = {
{ "dam0", "clk_m", 12000000, false},
{ "dam1", "clk_m", 12000000, false},
{ "dam2", "clk_m", 12000000, false},
+ { "audio0", "i2s0_sync", 0, false},
{ "audio1", "i2s1_sync", 0, false},
+ { "audio2", "i2s2_sync", 0, false},
{ "audio3", "i2s3_sync", 0, false},
+ { "audio4", "i2s4_sync", 0, false},
/* Setting vi_sensor-clk to true for validation purpose, will imapact
* power, later set to be false.*/
{ "vi_sensor", "pll_p", 150000000, false},
@@ -370,10 +375,29 @@ static struct tegra_asoc_platform_data tegranote7c_audio_pdata = {
.is_i2s_master = 1,
.i2s_mode = TEGRA_DAIFMT_I2S,
},
+ .i2s_param[BASEBAND] = {
+ .audio_port_id = 0,
+ .is_i2s_master = 1,
+ .i2s_mode = TEGRA_DAIFMT_I2S,
+ .sample_size = 16,
+ .rate = 16000,
+ .channels = 2,
+ .bit_clk = 1024000,
+ },
.i2s_param[BT_SCO] = {
.audio_port_id = 3,
.is_i2s_master = 1,
.i2s_mode = TEGRA_DAIFMT_DSP_A,
+ .bit_clk = 512000,
+ },
+ .i2s_param[VOICE_CODEC] = {
+ .audio_port_id = 1,
+ .is_i2s_master = 1,
+ .i2s_mode = TEGRA_DAIFMT_I2S,
+ .sample_size = 16,
+ .rate = 48000,
+ .channels = 2,
+ .bit_clk = 1536000,
},
.edp_support = true,
.edp_states = {4760, 4760, 0},
@@ -402,7 +426,9 @@ static struct platform_device *tegranote7c_devices[] __initdata = {
&tegra_dam_device0,
&tegra_dam_device1,
&tegra_dam_device2,
+ &tegra_i2s_device0,
&tegra_i2s_device1,
+ &tegra_i2s_device2,
&tegra_i2s_device3,
&tegra_i2s_device4,
&tegra_spdif_device,