From: Stephen Boyd <sboyd@codeaurora.org> To: Mark Rutland <mark.rutland@arm.com> Cc: "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-arm-msm@vger.kernel.org" <linux-arm-msm@vger.kernel.org>, John Stultz <john.stultz@linaro.org>, Thomas Gleixner <tglx@linutronix.de> Subject: Re: [PATCHv3 01/10] clocksource: add generic dummy timer driver Date: Mon, 25 Mar 2013 09:49:18 -0700 [thread overview] Message-ID: <5150800E.2000905@codeaurora.org> (raw) In-Reply-To: <20130322180305.GB1436@e106331-lin.cambridge.arm.com> On 03/22/13 11:03, Mark Rutland wrote: > On Thu, Mar 21, 2013 at 06:13:17PM +0000, Stephen Boyd wrote: >> On 03/21/13 11:09, Mark Rutland wrote: >>> Hi Stephen, >>> >>> I've just been trying to test the dummy timer, and realised it's broken, as it >>> registers a cpu notifier from a device_initcall (after SMP's been brought up), >>> and doesn't ensure all active CPUs have been set up. Evidently no-one else has >>> attempted to test it thus far, and I'm not able to throughly test it at the >>> moment. >> Would it be sufficient to register as a pre-smp initcall? > I've looked a bit further into the problem, and I believe using early_initcall > will make it work as well as the current arm-specific dummy timers work with a > rating of 100 (this means the recent patch lowering the rating broke tc2 as > explained below). Yes, moving to early_initcall() should make the dummy timer equivalent to the code that is already in the arm directory. It sounds like there is a problem with mainline though? > > I've spent the last few hours trying to get the dummy_timer driver working on > tc2 with the sp804 as the broadcast source (with architected timer support > disabled). It turns out that having dummy timer's rating so low means that it > won't be selected as the tick device on cpu0 in preference to the sp804, and > thus won't push the sp804 out of that spot (allowing it to become the broadcast > source). This leads to boot stalling. I'm not following here. Why would we want to remove sp804 from the tick duty? > > Jumping the dummy_timer's rating up would fix this, but that doesn't seem > great. Registering the dummy before all other clocks would also fix this (I > tried calling dummy_timer_register from time_init), but I can't see a way to do > that while keeping the driver self-contained. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
WARNING: multiple messages have this Message-ID (diff)
From: sboyd@codeaurora.org (Stephen Boyd) To: linux-arm-kernel@lists.infradead.org Subject: [PATCHv3 01/10] clocksource: add generic dummy timer driver Date: Mon, 25 Mar 2013 09:49:18 -0700 [thread overview] Message-ID: <5150800E.2000905@codeaurora.org> (raw) In-Reply-To: <20130322180305.GB1436@e106331-lin.cambridge.arm.com> On 03/22/13 11:03, Mark Rutland wrote: > On Thu, Mar 21, 2013 at 06:13:17PM +0000, Stephen Boyd wrote: >> On 03/21/13 11:09, Mark Rutland wrote: >>> Hi Stephen, >>> >>> I've just been trying to test the dummy timer, and realised it's broken, as it >>> registers a cpu notifier from a device_initcall (after SMP's been brought up), >>> and doesn't ensure all active CPUs have been set up. Evidently no-one else has >>> attempted to test it thus far, and I'm not able to throughly test it at the >>> moment. >> Would it be sufficient to register as a pre-smp initcall? > I've looked a bit further into the problem, and I believe using early_initcall > will make it work as well as the current arm-specific dummy timers work with a > rating of 100 (this means the recent patch lowering the rating broke tc2 as > explained below). Yes, moving to early_initcall() should make the dummy timer equivalent to the code that is already in the arm directory. It sounds like there is a problem with mainline though? > > I've spent the last few hours trying to get the dummy_timer driver working on > tc2 with the sp804 as the broadcast source (with architected timer support > disabled). It turns out that having dummy timer's rating so low means that it > won't be selected as the tick device on cpu0 in preference to the sp804, and > thus won't push the sp804 out of that spot (allowing it to become the broadcast > source). This leads to boot stalling. I'm not following here. Why would we want to remove sp804 from the tick duty? > > Jumping the dummy_timer's rating up would fix this, but that doesn't seem > great. Registering the dummy before all other clocks would also fix this (I > tried calling dummy_timer_register from time_init), but I can't see a way to do > that while keeping the driver self-contained. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
next prev parent reply other threads:[~2013-03-25 16:49 UTC|newest] Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-03-13 18:17 [PATCHv3 00/10] Remove ARM local timer API Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 01/10] clocksource: add generic dummy timer driver Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-21 18:09 ` Mark Rutland 2013-03-21 18:09 ` Mark Rutland 2013-03-21 18:09 ` Mark Rutland 2013-03-21 18:13 ` Stephen Boyd 2013-03-21 18:13 ` Stephen Boyd 2013-03-21 18:13 ` Stephen Boyd 2013-03-22 18:03 ` Mark Rutland 2013-03-22 18:03 ` Mark Rutland 2013-03-22 18:03 ` Mark Rutland 2013-03-25 16:49 ` Stephen Boyd [this message] 2013-03-25 16:49 ` Stephen Boyd 2013-03-25 16:49 ` Stephen Boyd 2013-03-25 18:00 ` Mark Rutland 2013-03-25 18:00 ` Mark Rutland 2013-03-25 18:00 ` Mark Rutland 2013-03-25 20:47 ` Thomas Gleixner 2013-03-25 20:47 ` Thomas Gleixner 2013-03-25 20:47 ` Thomas Gleixner 2013-03-26 15:26 ` Mark Rutland 2013-03-26 15:26 ` Mark Rutland 2013-03-26 15:26 ` Mark Rutland 2013-03-26 2:14 ` Stephen Boyd 2013-03-26 2:14 ` Stephen Boyd 2013-03-26 2:14 ` Stephen Boyd 2013-03-26 11:28 ` Mark Rutland 2013-03-26 11:28 ` Mark Rutland 2013-03-26 11:28 ` Mark Rutland 2013-04-05 1:46 ` Stephen Boyd 2013-04-05 1:46 ` Stephen Boyd 2013-04-05 1:46 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 02/10] ARM: smp: Remove duplicate dummy timer implementation Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 03/10] ARM: smp_twd: Divorce smp_twd from local timer API Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-28 15:22 ` Mark Rutland 2013-03-28 15:22 ` Mark Rutland 2013-03-28 15:22 ` Mark Rutland 2013-03-28 20:09 ` Stephen Boyd 2013-03-28 20:09 ` Stephen Boyd 2013-03-28 20:09 ` Stephen Boyd 2013-04-02 8:41 ` Mark Rutland 2013-04-02 8:41 ` Mark Rutland 2013-04-02 8:41 ` Mark Rutland 2013-03-13 18:17 ` [PATCHv3 04/10] ARM: OMAP2+: Divorce " Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 05/10] ARM: EXYNOS4: Divorce mct " Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 06/10] ARM: PRIMA2: Divorce timer-marco " Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 07/10] ARM: msm: Divorce msm_timer " Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-13 18:17 ` [PATCHv3 08/10] clocksource: time-armada-370-xp: Fix sparse warning Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-20 17:06 ` Gregory CLEMENT 2013-03-20 17:06 ` Gregory CLEMENT 2013-03-13 18:17 ` [PATCHv3 09/10] clocksource: time-armada-370-xp: Divorce from local timer API Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd 2013-03-20 17:09 ` Gregory CLEMENT 2013-03-20 17:09 ` Gregory CLEMENT 2013-03-20 17:20 ` Stephen Boyd 2013-03-20 17:20 ` Stephen Boyd 2013-03-20 17:26 ` Gregory CLEMENT 2013-03-20 17:26 ` Gregory CLEMENT 2013-03-20 17:44 ` Gregory CLEMENT 2013-03-20 17:44 ` Gregory CLEMENT 2013-03-20 18:00 ` Stephen Boyd 2013-03-20 18:00 ` Stephen Boyd 2013-03-20 17:21 ` Gregory CLEMENT 2013-03-20 17:21 ` Gregory CLEMENT 2013-03-13 18:17 ` [PATCHv3 10/10] ARM: smp: Remove " Stephen Boyd 2013-03-13 18:17 ` Stephen Boyd
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=5150800E.2000905@codeaurora.org \ --to=sboyd@codeaurora.org \ --cc=john.stultz@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mark.rutland@arm.com \ --cc=tglx@linutronix.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.