From patchwork Wed Jan 29 18:00:45 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Pitre X-Patchwork-Id: 3553361 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 9EF5D9F2E9 for ; Wed, 29 Jan 2014 18:01:21 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 74C052018A for ; Wed, 29 Jan 2014 18:01:20 +0000 (UTC) Received: from casper.infradead.org (casper.infradead.org [85.118.1.10]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 277512017E for ; Wed, 29 Jan 2014 18:01:19 +0000 (UTC) Received: from merlin.infradead.org ([2001:4978:20e::2]) by casper.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1W8ZRq-0006yX-CV; Wed, 29 Jan 2014 18:01:14 +0000 Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1W8ZRo-0004Oa-29; Wed, 29 Jan 2014 18:01:12 +0000 Received: from mail-qc0-f173.google.com ([209.85.216.173]) by merlin.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1W8ZRl-0004N5-4a for linux-arm-kernel@lists.infradead.org; Wed, 29 Jan 2014 18:01:09 +0000 Received: by mail-qc0-f173.google.com with SMTP id i8so3258413qcq.18 for ; Wed, 29 Jan 2014 10:00:47 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version:content-type; bh=Y8w6DLL/QsfH9W2angeyuvO0bXilPjnyub+uutPwH7A=; b=lLcgCk+1VbT4VB6/gzlRGbENP4jbE3X3vY78ilozUhCynK2CNJuABbgtRrVmELcZOj QdEoAjpX3iQZqnc/ah+ocLNcS51a8JoQrTiTjaR4O+ZH6gxaGEUf7LmuXof1eZnyUKhi 2fQhTiyCUjtS8un+r/3wXXHMGj6vPP6euT6rJEZivWt7musFON63WmOWEyaffycURw2b bynGd/IZWhSqRAoAh1CVH+sf0Hrdd9HIUjD1zVQMeFW9FEc+pmMV1qso62NQguycyiaX zOUegvcZkatmxR3f00KgWmExoQCaBnpNY3Db9VmLToU8Z6Z0KSKl669mUF1TTfwfLMcv jF5A== X-Gm-Message-State: ALoCoQm4ugZzq6tss+ZATXsYt59+3XY+c3acr01vS+B+KCtasSoMSWeh+8G64h1Of/F6JPr1TbSN X-Received: by 10.140.89.241 with SMTP id v104mr13804750qgd.27.1391018447544; Wed, 29 Jan 2014 10:00:47 -0800 (PST) Received: from xanadu.home (modemcable177.143-130-66.mc.videotron.ca. [66.130.143.177]) by mx.google.com with ESMTPSA id z1sm8712315qaz.18.2014.01.29.10.00.46 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 29 Jan 2014 10:00:47 -0800 (PST) Date: Wed, 29 Jan 2014 13:00:45 -0500 (EST) From: Nicolas Pitre To: Catalin Marinas Subject: Re: [PATCH 2/9] ARM64: get rid of arch_cpu_idle_prepare() In-Reply-To: <20140127155755.GH32608@arm.com> Message-ID: References: <1390802904-28399-1-git-send-email-nicolas.pitre@linaro.org> <1390802904-28399-3-git-send-email-nicolas.pitre@linaro.org> <20140127154315.GG32608@arm.com> <20140127155755.GH32608@arm.com> User-Agent: Alpine 2.11 (LFD 23 2013-08-11) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20140129_130109_228983_BF801AAB X-CRM114-Status: GOOD ( 17.29 ) X-Spam-Score: -2.6 (--) Cc: "linaro-kernel@lists.linaro.org" , "linux-arm-kernel@lists.infradead.org" X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-4.7 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Mon, 27 Jan 2014, Catalin Marinas wrote: > On Mon, Jan 27, 2014 at 03:51:02PM +0000, Nicolas Pitre wrote: > > On Mon, 27 Jan 2014, Catalin Marinas wrote: > > > > > For arm64, we could simply remove any reference to FIQs. I'm not aware > > > of anyone using them. > > > > OK. What if I sumply remove arch_cpu_idle_prepare() and let you > > remove the rest? > > > > IMHO I'd simply remove local_fiq_{enable/disable}() from > > arm64/kernel/smp.c and leave the infrastructure in place in case someone > > needs it eventually. In which case I could include that into my patch > > as well. > > Sounds good. We can keep the local_fiq_*() functions but remove about 4 > calling sites (process.c and smp.c) until needed. OK here it is. Please feel free to merge this into your tree directly as it no longer has any dependency issues with other patches. ----- >8 From: Nicolas Pitre Subject: [PATCH] ARM64: FIQs are unused So any FIQ handling is superfluous at the moment. The functions to disable/enable FIQs is kept around if ever someone needs them in the future, but existing calling sites including arch_cpu_idle_prepare() may go for now. Signed-off-by: Nicolas Pitre diff --git a/arch/arm64/kernel/process.c b/arch/arm64/kernel/process.c index de17c89985..adeabe8c6b 100644 --- a/arch/arm64/kernel/process.c +++ b/arch/arm64/kernel/process.c @@ -84,11 +84,6 @@ EXPORT_SYMBOL_GPL(pm_power_off); void (*arm_pm_restart)(enum reboot_mode reboot_mode, const char *cmd); EXPORT_SYMBOL_GPL(arm_pm_restart); -void arch_cpu_idle_prepare(void) -{ - local_fiq_enable(); -} - /* * This is our default idle handler. */ @@ -135,7 +130,6 @@ void machine_restart(char *cmd) /* Disable interrupts first */ local_irq_disable(); - local_fiq_disable(); /* Now call the architecture specific reboot code. */ if (arm_pm_restart) diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c index a0c2ca602c..94576c02f5 100644 --- a/arch/arm64/kernel/smp.c +++ b/arch/arm64/kernel/smp.c @@ -159,7 +159,6 @@ asmlinkage void secondary_start_kernel(void) complete(&cpu_running); local_irq_enable(); - local_fiq_enable(); local_async_enable(); /* @@ -491,7 +490,6 @@ static void ipi_cpu_stop(unsigned int cpu) set_cpu_online(cpu, false); - local_fiq_disable(); local_irq_disable(); while (1)