From patchwork Mon Oct 19 20:59:26 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Lezcano X-Patchwork-Id: 55259 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-lb0-f200.google.com (mail-lb0-f200.google.com [209.85.217.200]) by patches.linaro.org (Postfix) with ESMTPS id 7191422F11 for ; Mon, 19 Oct 2015 21:01:13 +0000 (UTC) Received: by lbbor1 with SMTP id or1sf31823732lbb.2 for ; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:delivered-to:from:to:cc:subject :date:message-id:in-reply-to:references:sender:precedence:list-id :x-original-sender:x-original-authentication-results:mailing-list :list-post:list-help:list-archive:list-unsubscribe; bh=Pq8dHKfOj+GPRmMbV03fOjlbaI0QfPTPO9YoZacTuA0=; b=GGFgMfFJ56/K5hWJaPJe7sJc4kI0vDnmAII8qXtIZ/XufzCTHFQUAaD/c7qOUejqke KegtKqjzAGU3t8saB6e2IkCEqvXb2/B+ihzSr72ho3KC1j0HBFIEEYqwoF2aeFcsndrV 258xPTmtm3S98NdzR4zaKMh5g664JJb8Xc4fAl6W2Ki/gGr7NYUNvk/9s9PrlCQncxat cP541L8ND+9fMY4NEoh0K2T1i4pSEkMfirQoyGDuzC4v8pnXlLM4HoUQ7xfy8fyUf52p lKxjJPaw93hFSScyWVY8C6th2wkXr2yA9f9ZMJQ3HKfVsMyGKZAu1hZ6l9T6TA3w5OKS BN2A== X-Gm-Message-State: ALoCoQmLXpP3W2lKR93N0sgp4WABMgQIkrayyKZTjrWhhTPRzgX5wiS6Lf7FRIaIZtkqtBTjg6iD X-Received: by 10.180.210.71 with SMTP id ms7mr13856wic.4.1445288472372; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.25.78.81 with SMTP id c78ls583908lfb.45.gmail; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) X-Received: by 10.112.137.169 with SMTP id qj9mr16085637lbb.34.1445288472180; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) Received: from mail-lb0-f178.google.com (mail-lb0-f178.google.com. [209.85.217.178]) by mx.google.com with ESMTPS id al9si24284516lbc.51.2015.10.19.14.01.12 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 19 Oct 2015 14:01:12 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.217.178 as permitted sender) client-ip=209.85.217.178; Received: by lbcao8 with SMTP id ao8so156391369lbc.3 for ; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) X-Received: by 10.25.77.133 with SMTP id a127mr10447318lfb.19.1445288472031; Mon, 19 Oct 2015 14:01:12 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.59.35 with SMTP id w3csp1697262lbq; Mon, 19 Oct 2015 14:01:11 -0700 (PDT) X-Received: by 10.69.26.101 with SMTP id ix5mr36938760pbd.144.1445288471021; Mon, 19 Oct 2015 14:01:11 -0700 (PDT) Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id cq1si1264178pad.80.2015.10.19.14.01.10; Mon, 19 Oct 2015 14:01:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932270AbbJSVBI (ORCPT + 28 others); Mon, 19 Oct 2015 17:01:08 -0400 Received: from mail-wi0-f175.google.com ([209.85.212.175]:37835 "EHLO mail-wi0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754069AbbJSVAD (ORCPT ); Mon, 19 Oct 2015 17:00:03 -0400 Received: by wicfv8 with SMTP id fv8so369466wic.0 for ; Mon, 19 Oct 2015 14:00:02 -0700 (PDT) X-Received: by 10.180.75.36 with SMTP id z4mr72889wiv.68.1445288402636; Mon, 19 Oct 2015 14:00:02 -0700 (PDT) Received: from mai.telefonica.net (185.Red-213-96-199.staticIP.rima-tde.net. [213.96.199.185]) by smtp.gmail.com with ESMTPSA id xt1sm42296501wjb.32.2015.10.19.14.00.01 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 19 Oct 2015 14:00:02 -0700 (PDT) From: Daniel Lezcano To: tglx@linutronix.de Cc: linux-kernel@vger.kernel.org, mingo@kernel.org, Lucas Stach Subject: [PATCH 7/9] clocksource/drivers/imx: Allow timer irq affinity change Date: Mon, 19 Oct 2015 22:59:26 +0200 Message-Id: <1445288368-6440-7-git-send-email-daniel.lezcano@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1445288368-6440-1-git-send-email-daniel.lezcano@linaro.org> References: <56255943.6060807@linaro.org> <1445288368-6440-1-git-send-email-daniel.lezcano@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: list List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: daniel.lezcano@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.217.178 as permitted sender) smtp.mailfrom=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , From: Lucas Stach Allow the timer core to change the smp affinity of the broadcast timer irq by setting CLOCK_EVT_FEAT_DYNIRQ flag. For this to work the timer core needs to be told about the used irq. This reduces interrupt pressure and wakeups on CPU0 as well as vastly reducing the number of timer broadcast IPIs. Signed-off-by: Lucas Stach Signed-off-by: Daniel Lezcano --- drivers/clocksource/timer-imx-gpt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/clocksource/timer-imx-gpt.c b/drivers/clocksource/timer-imx-gpt.c index 839aba9..99ec967 100644 --- a/drivers/clocksource/timer-imx-gpt.c +++ b/drivers/clocksource/timer-imx-gpt.c @@ -305,13 +305,14 @@ static int __init mxc_clockevent_init(struct imx_timer *imxtm) struct irqaction *act = &imxtm->act; ced->name = "mxc_timer1"; - ced->features = CLOCK_EVT_FEAT_ONESHOT; + ced->features = CLOCK_EVT_FEAT_ONESHOT | CLOCK_EVT_FEAT_DYNIRQ; ced->set_state_shutdown = mxc_shutdown; ced->set_state_oneshot = mxc_set_oneshot; ced->tick_resume = mxc_shutdown; ced->set_next_event = imxtm->gpt->set_next_event; ced->rating = 200; ced->cpumask = cpumask_of(0); + ced->irq = imxtm->irq; clockevents_config_and_register(ced, clk_get_rate(imxtm->clk_per), 0xff, 0xfffffffe);