From 0625688b466897845df130df7d66cb9ce8c369bb Mon Sep 17 00:00:00 2001 From: Marcel Ziswiler Date: Thu, 25 Sep 2014 23:38:25 +0200 Subject: apalis/colibri t30: fix audio hub lock-up This patch fixes a clock related audio hub driver lock-up observed when booting with mainline U-Boot which we are in the process of migrating to now. --- arch/arm/mach-tegra/board-apalis_t30.c | 4 ++++ arch/arm/mach-tegra/board-colibri_t30.c | 9 +++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-tegra/board-apalis_t30.c b/arch/arm/mach-tegra/board-apalis_t30.c index a3e1ad6b1ade..8b05b824b390 100644 --- a/arch/arm/mach-tegra/board-apalis_t30.c +++ b/arch/arm/mach-tegra/board-apalis_t30.c @@ -324,9 +324,12 @@ static void __init apalis_t30_mcp2515_can_init(void) /* Clocks */ static struct tegra_clk_init_table apalis_t30_clk_init_table[] __initdata = { /* name parent rate enabled */ + {"apbif", "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}, {"blink", "clk_32k", 32768, true}, /* required for vi_sensor ? */ {"csus", "clk_m", 0, true}, @@ -345,6 +348,7 @@ static struct tegra_clk_init_table apalis_t30_clk_init_table[] __initdata = { {"i2s1", "pll_a_out0", 0, false}, {"i2s2", "pll_a_out0", 0, false}, {"i2s3", "pll_a_out0", 0, false}, + {"i2s4", "pll_a_out0", 0, false}, {"pll_a", NULL, 564480000, true}, {"pll_m", NULL, 0, false}, {"pwm", "pll_p", 3187500, false}, diff --git a/arch/arm/mach-tegra/board-colibri_t30.c b/arch/arm/mach-tegra/board-colibri_t30.c index 8afffe4b48d6..f449ac0d057e 100644 --- a/arch/arm/mach-tegra/board-colibri_t30.c +++ b/arch/arm/mach-tegra/board-colibri_t30.c @@ -329,17 +329,20 @@ static struct platform_device colibri_can_device = { /* Clocks */ static struct tegra_clk_init_table colibri_t30_clk_init_table[] __initdata = { /* name parent rate enabled */ + {"apbif", "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}, {"blink", "clk_32k", 32768, true}, /* optional camera clock */ - { "clk_out_2", "extern2", 24000000, false}, + {"clk_out_2", "extern2", 24000000, false}, {"d_audio", "clk_m", 12000000, false}, {"dam0", "clk_m", 12000000, false}, {"dam1", "clk_m", 12000000, false}, {"dam2", "clk_m", 12000000, false}, - { "extern2", "clk_m", 24000000, false}, + {"extern2", "clk_m", 24000000, false}, {"hda", "pll_p", 108000000, false}, {"hda2codec_2x","pll_p", 48000000, false}, {"i2c1", "pll_p", 3200000, false}, @@ -351,10 +354,12 @@ static struct tegra_clk_init_table colibri_t30_clk_init_table[] __initdata = { {"i2s1", "pll_a_out0", 0, false}, {"i2s2", "pll_a_out0", 0, false}, {"i2s3", "pll_a_out0", 0, false}, + {"i2s4", "pll_a_out0", 0, false}, {"nor", "pll_p", 86500000, true}, {"pll_a", NULL, 564480000, true}, {"pll_m", NULL, 0, false}, {"pwm", "pll_p", 3187500, false}, + {"spdif_out", "pll_a_out0", 0, false}, {"vi", "pll_p", 0, false}, {NULL, NULL, 0, 0}, }; -- cgit v1.2.3