From patchwork Tue Feb 26 12:14:28 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Viresh Kumar X-Patchwork-Id: 2185441 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork1.kernel.org (Postfix) with ESMTP id E049E3FD4E for ; Tue, 26 Feb 2013 12:18:14 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1UAJQZ-0007Yj-3E; Tue, 26 Feb 2013 12:14:35 +0000 Received: from mail-oa0-f53.google.com ([209.85.219.53]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1UAJQW-0007Xx-9r for linux-arm-kernel@lists.infradead.org; Tue, 26 Feb 2013 12:14:32 +0000 Received: by mail-oa0-f53.google.com with SMTP id m1so4989486oag.12 for ; Tue, 26 Feb 2013 04:14:29 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:x-gm-message-state; bh=RhhQtY23tGMAthO2crQDJ7JJM+h+cEn6RTwGCtp6dZU=; b=HmNNYR3FDdUvKh4KmqY66TZxSuX412ZAVE8YMkyDs8JR7CPmsIUUl6TEtPamI/FBTt /JiM9CgYHBEd+pReTVT0oGezvf9m//D8WQ5TwWzOQ9hf57I0jmIjvRS8sAbZZNXao3tY jTZJhWP2B6GlHuyh2YMuZYKhl01TrmCAaRWAbggNN2t2Bg3mCxF6MnD8GlV+Cs67gqem b0L6FXbWFwj8yh7PE8kml/W+D9M9SKqM5gAQSLZQZUUSNCRig/ed4MmUuGKEPVRT0B6W Gh0jcwJWwci5omlqoBkb69Hop3qhZned34SSJ9URjsMreyTGc8pXhzpVg3qh7v/BQhkf 0/iQ== MIME-Version: 1.0 X-Received: by 10.60.22.34 with SMTP id a2mr1084848oef.97.1361880869020; Tue, 26 Feb 2013 04:14:29 -0800 (PST) Received: by 10.182.69.20 with HTTP; Tue, 26 Feb 2013 04:14:28 -0800 (PST) In-Reply-To: <512C9D20.8020309@linaro.org> References: <5123C299.3080005@linaro.org> <1361484083-5906-1-git-send-email-daniel.lezcano@linaro.org> <512C9D20.8020309@linaro.org> Date: Tue, 26 Feb 2013 17:44:28 +0530 Message-ID: Subject: Re: [PATCH 1/2] time : pass broadcast device parameter From: Viresh Kumar To: Daniel Lezcano X-Gm-Message-State: ALoCoQmM2h3hlj1y/SKP4Fduypnc+5bbjdIW6QRaretv8JxaqY3pbBd2Vp4979HOjwWjSqP8PMxi X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20130226_071432_379095_55B29461 X-CRM114-Status: GOOD ( 14.94 ) X-Spam-Score: -2.6 (--) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-2.6 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.219.53 listed in list.dnswl.org] -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: linaro-kernel@lists.linaro.org, linux-pm@vger.kernel.org, fweisbec@gmail.com, linux-kernel@vger.kernel.org, tglx@linutronix.de, linux-arm-kernel@lists.infradead.org X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org On 26 February 2013 17:01, Daniel Lezcano wrote: > Oh, by the way, could send me the patch to set the flag to the timer > device ? I will include it to the patchset. Sure. Find it attached too as gmail may break it. commit 14422c760bb5b2485867f3efb7842d296081ad86 Author: Viresh Kumar Date: Fri Feb 22 12:42:39 2013 +0530 ARM/timer-sp: Set dynamic irq affinity When a cpu goes to a deep idle state where its local timer is shutdown, it notifies the time frame work to use the broadcast timer instead. Unfortunately, the broadcast device could wake up any CPU, including an idle one which is not concerned by the wake up at all. This implies, in the worst case, an idle CPU will wake up to send an IPI to another idle cpu. This patch fixes this for ARM platforms using timer-sp, by setting CLOCK_EVT_FEAT_DYNIRQ feature. Signed-off-by: Viresh Kumar --- arch/arm/common/timer-sp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/arm/common/timer-sp.c b/arch/arm/common/timer-sp.c index 9d2d3ba..ae3c0f9 100644 --- a/arch/arm/common/timer-sp.c +++ b/arch/arm/common/timer-sp.c @@ -158,7 +158,8 @@ static int sp804_set_next_event(unsigned long next, } static struct clock_event_device sp804_clockevent = { - .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, + .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT | + CLOCK_EVT_FEAT_DYNIRQ, .set_mode = sp804_set_mode, .set_next_event = sp804_set_next_event, .rating = 300,