[PATCH] ARM: Do early I/O mapping if spinlock debugging is enabled (Re: [PATCH 3/4] ARM: OMAP3: Add support for 3430 SDP, v3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx> [090401 16:18]:
> Tony Lindgren <tony@xxxxxxxxxxx> writes:
> 
> > * Paul Walmsley <paul@xxxxxxxxx> [090401 12:04]:
> >> On Wed, 1 Apr 2009, Syed Mohammed, Khasim wrote:
> >> 
> >> > > -----Original Message-----
> >> > > From: linux-omap-owner@xxxxxxxxxxxxxxx [mailto:linux-omap-owner@xxxxxxxxxxxxxxx] On Behalf Of
> >> > > Gadiyar, Anand
> >> > > Sent: Wednesday, April 01, 2009 1:55 PM
> >> > > To: Russell King - ARM Linux
> >> > > Cc: Tony Lindgren; linux-arm-kernel@xxxxxxxxxxxxxxxxxxxxxx; linux-omap@xxxxxxxxxxxxxxx
> >> > > Subject: RE: [PATCH 3/4] ARM: OMAP3: Add support for 3430 SDP, v3
> >> > > 
> >> > > On Wed, Apr 01, 2009 at 12:18 AM, Russell King - ARM Linux wrote:
> >> > > > On Tue, Mar 31, 2009 at 05:12:18PM +0530, Gadiyar, Anand wrote:
> >> > > > > I could not run the 3430 SDP defconfig from mainline. The image hangs at
> >> > > > > "Starting kernel ...". Enabling CONFIG_DEBUG_LL does not help.
> >> > > >
> >> > > > Did you add the necessary patch to kernel/printk.c ?
> >> > > >
> >> > > 
> >> > > Silly me, I had not done this (despite having read this so many times on this list).
> >> > > 
> >> > > Here's what I get now after adding the patch.

<snip>

> > Not seeing this on overo at least.
> >
> 
> And my Beagle is booting fine with mainline and attached .config.

<snip>

Well turns out it's the same old bug again Juha tracked down earlier..

If CONFIG_DEBUG_SPINLOCK is set, and CONFIG_DEBUG_LL is not set, the IO
does not get mapped. Juha's earlier patch is attached.

Russell, got any better fixes in mind for this?

Tony
>From c699464bd92629fda1062223467588fcb0e97bca Mon Sep 17 00:00:00 2001
From: Juha Yrjola <juha.yrjola@xxxxxxxxxxxxx>
Date: Fri, 16 Jan 2009 16:00:50 +0200
Subject: [PATCH] ARM: Do early I/O mapping if spinlock debugging is enabled

At least on OMAP, sched_clock() requires the I/O maps to be initialized.
Spinlock debugging invokes sched_clock() very early.

Signed-off-by: Juha Yrjola <juha.yrjola@xxxxxxxxxxxxx>
Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
index 21e17dc..1bc918c 100644
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@ -282,7 +282,7 @@ __create_page_tables:
 	.endif
 	str	r6, [r0]
 
-#ifdef CONFIG_DEBUG_LL
+#if defined(CONFIG_DEBUG_LL) || defined(CONFIG_DEBUG_SPINLOCK)
 	ldr	r7, [r10, #PROCINFO_IO_MMUFLAGS] @ io_mmuflags
 	/*
 	 * Map in IO space for serial debugging.

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux