Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752631AbdGMPJY (ORCPT ); Thu, 13 Jul 2017 11:09:24 -0400 Received: from mail-it0-f67.google.com ([209.85.214.67]:35479 "EHLO mail-it0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752552AbdGMPJW (ORCPT ); Thu, 13 Jul 2017 11:09:22 -0400 MIME-Version: 1.0 In-Reply-To: <20170713073200.uh3oxqowei6vxvwy@hirez.programming.kicks-ass.net> References: <20170708000303.21863-1-dbasehore@chromium.org> <20170708000303.21863-2-dbasehore@chromium.org> <20170713073200.uh3oxqowei6vxvwy@hirez.programming.kicks-ass.net> From: "Rafael J. Wysocki" Date: Thu, 13 Jul 2017 17:09:20 +0200 X-Google-Sender-Auth: 0nqNHRxDEq8Mw3U6KATChfqYSgE Message-ID: Subject: Re: [PATCH v5 2/5] tick: Add freeze timer events To: Peter Zijlstra Cc: Derek Basehore , Linux Kernel Mailing List , Thomas Gleixner , Ingo Molnar , Rajneesh Bhardwaj , "the arch/x86 maintainers" , Platform Driver , "Rafael J . Wysocki" , Len Brown , Linux PM Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1033 Lines: 22 On Thu, Jul 13, 2017 at 9:32 AM, Peter Zijlstra wrote: > On Fri, Jul 07, 2017 at 05:03:00PM -0700, Derek Basehore wrote: >> Adds a new feature to tick to schedule wakeups on a CPU during freeze. >> This won't fully wake up the system (devices are not resumed), but >> allow simple platform functionality to be run during freeze with >> little power impact. >> >> This implementation allows an idle driver to setup a timer event with >> the clock event device when entering freeze by calling >> tick_set_freeze_event. Only one caller should exist for the function. >> >> tick_freeze_event_expired is used to check if the timer went off when >> the CPU wakes. >> >> The event is cleared by tick_clear_freeze_event. > > Why? What's wrong with using the RTC stuff? RTC should be able to wake > suspended systems, see RTCWAKE(8). The RTC interrupt is an SCI (on ACPI systems) and we don't handle it at this point, so we don't know what woke us up until we re-enable interrupt handlers and run the one for the SCI.