From patchwork Thu Sep 1 12:51:59 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Russell King - ARM Linux X-Patchwork-Id: 1119122 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p81E05NN024563 for ; Thu, 1 Sep 2011 14:00:05 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757523Ab1IAOAE (ORCPT ); Thu, 1 Sep 2011 10:00:04 -0400 Received: from caramon.arm.linux.org.uk ([78.32.30.218]:34119 "EHLO caramon.arm.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757420Ab1IAOAE (ORCPT ); Thu, 1 Sep 2011 10:00:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=arm.linux.org.uk; s=caramon; h=Date:Sender:Message-Id:Content-Type:MIME-Version:Cc:Subject:Cc:To:From:References:In-Reply-To; bh=1iWN1hMHHf9LfMATzUkB4YBzHaGT6AI6WBb2UlAQbxY=; b=lgca185oGpYTYVdzbADAcJAXcET8h9el/6H6YmhIv4mj0uQXxoOZKCELGYkcU0Sji1KgKx80v1Q3stC8ZhanaFOts1UW7t7hkRBpkHlHKEI776a6LaAUR47f9PFXS3BwemTkgYI484gq8qCP2NreYLQWNTK9OhTpkdVc1WFncGQ=; Received: from e0022681537dd.dyn.arm.linux.org.uk ([2002:4e20:1eda:1:222:68ff:fe15:37dd] helo=rmk-PC.arm.linux.org.uk) by caramon.arm.linux.org.uk with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Qz7o2-0004G0-7u; Thu, 01 Sep 2011 14:59:46 +0100 Received: from rmk by rmk-PC.arm.linux.org.uk with local (Exim 4.76) (envelope-from ) id 1Qz6kR-00078p-Vs; Thu, 01 Sep 2011 13:52:00 +0100 In-Reply-To: <20110901124752.GE29729@n2100.arm.linux.org.uk> References: <20110901124752.GE29729@n2100.arm.linux.org.uk> From: Russell King - ARM Linux To: Santosh Shilimkar Cc: linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org Subject: [PATCH 11/11] ARM: pm: add L2 cache cleaning for suspend Cc: linux-arm-kernel@lists.infradead.org, linux-omap@vger.kernel.org MIME-Version: 1.0 Content-Disposition: inline Message-Id: Date: Thu, 01 Sep 2011 13:51:59 +0100 Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Thu, 01 Sep 2011 14:00:26 +0000 (UTC) We need to ensure that state is pushed out from the L2 cache when suspending so that the resume paths can access their data before the MMU and caches have been re-initialized. Add the necessary calls to __cpu_suspend_save(). Signed-off-by: Russell King --- arch/arm/kernel/suspend.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/arch/arm/kernel/suspend.c b/arch/arm/kernel/suspend.c index c78a88f..4c95410 100644 --- a/arch/arm/kernel/suspend.c +++ b/arch/arm/kernel/suspend.c @@ -28,6 +28,9 @@ void __cpu_suspend_save(u32 *ptr, u32 ptrsz, u32 sp, u32 *save_ptr) cpu_do_suspend(ptr); flush_cache_all(); + outer_clean_range(*save_ptr, *save_ptr + ptrsz); + outer_clean_range(virt_to_phys(save_ptr), + virt_to_phys(save_ptr) + sizeof(*save_ptr)); } /*