[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git-commits-head
Subject:    ARM: OMAP4470: Fix OMAP4470 boot failure
From:       "Linux Kernel Mailing List" <linux-kernel () vger ! kernel ! org>
Date:       2012-06-30 23:28:41
Message-ID: 20120630232841.A27BB340424 () ra ! kernel ! org
[Download RAW message or body]

Gitweb:     http://git.kernel.org/linus/;a=commit;h=e90b833ee1aae64b6fca2455001323ffe29e1698
                
Commit:     e90b833ee1aae64b6fca2455001323ffe29e1698
Parent:     bb44c30e53053c653302b53c8671c3c5ca62e881
Author:     Jon Hunter <jon-hunter@ti.com>
AuthorDate: Mon Jun 25 12:38:23 2012 -0500
Committer:  Tony Lindgren <tony@atomide.com>
CommitDate: Wed Jun 27 08:09:59 2012 -0700

    ARM: OMAP4470: Fix OMAP4470 boot failure
    
    OMAP4470 currently fails to boot, printing various messages such as ...
    
    omap_hwmod: mpu: cannot clk_get main_clk dpll_mpu_m2_ck
    omap_hwmod: mpu: cannot _init_clocks
    ------------[ cut here ]------------
    WARNING: at arch/arm/mach-omap2/omap_hwmod.c:2062 _init+0x2a0/0x2e4()
    omap_hwmod: mpu: couldn't init clocks
    Modules linked in:
    [<c001c7fc>] (unwind_backtrace+0x0/0xf4) from [<c0043c64>] \
(warn_slowpath_common+0x4c/0x64)  [<c0043c64>] (warn_slowpath_common+0x4c/0x64) from \
[<c0043d10>] (warn_slowpath_fmt+0x30/0x40)  [<c0043d10>] \
(warn_slowpath_fmt+0x30/0x40) from [<c0674208>] (_init+0x2a0/0x2e4)  [<c0674208>] \
(_init+0x2a0/0x2e4) from [<c067428c>] (omap_hwmod_setup_one+0x40/0x60)  [<c067428c>] \
(omap_hwmod_setup_one+0x40/0x60) from [<c0674280>] (omap_hwmod_setup_one+0x34/0x60)  \
[<c0674280>] (omap_hwmod_setup_one+0x34/0x60) from [<c06726f4>] \
(omap_dm_timer_init_one+0x30/0x250)  [<c06726f4>] (omap_dm_timer_init_one+0x30/0x250) \
from [<c0672930>] (omap2_gp_clockevent_init+0x1c/0x108)  [<c0672930>] \
(omap2_gp_clockevent_init+0x1c/0x108) from [<c0672c60>] (omap4_timer_init+0x10/0x5c)  \
[<c0672c60>] (omap4_timer_init+0x10/0x5c) from [<c066c418>] (time_init+0x20/0x30)  \
[<c066c418>] (time_init+0x20/0x30) from [<c0668814>] (start_kernel+0x1b0/0x304)  \
                [<c0668814>] (start_kernel+0x1b0/0x304) from [<80008044>] \
                (0x80008044)
    ---[ end trace 1b75b31a2719ed1c ]---
    
    The problem is that currently none of the clocks are being registered for
    OMAP4470 devices and so on boot-up no clocks can be found and the kernel panics.
    
    This fix allows the kernel to boot without failure using a simple RAMDISK file
    system on OMAP4470 blaze board.
    
    Per feedback from Paul and Benoit the 4470 clock data is incomplete for new
    modules such as the 2D graphics block that has been added to the 4470.
    Therefore add a warning to indicate that the clock data is incomplete.
    
    Cc: Paul Walmsley <paul@pwsan.com>
    Cc: Benoit Cousson <b-cousson@ti.com>
    Signed-off-by: Jon Hunter <jon-hunter@ti.com>
    [tony@atomide.com: updated comments]
    Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/clock44xx_data.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap2/clock44xx_data.c \
b/arch/arm/mach-omap2/clock44xx_data.c index e2b701e..ba6f9a0 100644
--- a/arch/arm/mach-omap2/clock44xx_data.c
+++ b/arch/arm/mach-omap2/clock44xx_data.c
@@ -3417,9 +3417,12 @@ int __init omap4xxx_clk_init(void)
 	if (cpu_is_omap443x()) {
 		cpu_mask = RATE_IN_4430;
 		cpu_clkflg = CK_443X;
-	} else if (cpu_is_omap446x()) {
+	} else if (cpu_is_omap446x() || cpu_is_omap447x()) {
 		cpu_mask = RATE_IN_4460 | RATE_IN_4430;
 		cpu_clkflg = CK_446X | CK_443X;
+
+		if (cpu_is_omap447x())
+			pr_warn("WARNING: OMAP4470 clock data incomplete!\n");
 	} else {
 		return 0;
 	}
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic