|
|
Subscribe / Log in / New account

tick/broadcast: Allow per-cpu timers to be used instead of broadcast

From:  Will Deacon <will-AT-kernel.org>
To:  linux-arm-kernel-AT-lists.infradead.org
Subject:  [PATCH 0/5] tick/broadcast: Allow per-cpu timers to be used instead of broadcast
Date:  Thu, 20 May 2021 19:47:00 +0100
Message-ID:  <20210520184705.10845-1-will@kernel.org>
Cc:  linux-kernel-AT-vger.kernel.org, Will Deacon <will-AT-kernel.org>, Frederic Weisbecker <fweisbec-AT-gmail.com>, Thomas Gleixner <tglx-AT-linutronix.de>, Marc Zyngier <maz-AT-kernel.org>, Lorenzo Colitti <lorenzo-AT-google.com>, John Stultz <john.stultz-AT-linaro.org>, Stephen Boyd <sboyd-AT-kernel.org>, kernel-team-AT-android.com
Archive-link:  Article

Hi all,

This patch series adds support for hardware where the per-cpu tick timer
cannot wake up from deep idle states (i.e. CLOCK_EVT_FEAT_C3STOP is set)
yet there is a secondary per-cpu timer which is generally less preferable
(i.e. slow to access) yet capable of delivering the wakeup.

The meat and potatoes are in patches 3 and 4, but since I've not hacked
on this part of the kernel before I would appreciate feedback on any of
the changes I'm proposing.

Cheers,

Will

Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Lorenzo Colitti <lorenzo@google.com>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Stephen Boyd <sboyd@kernel.org>
Cc: kernel-team@android.com

--->8

Will Deacon (5):
  tick/broadcast: Drop unneeded CONFIG_GENERIC_CLOCKEVENTS_BROADCAST
    guard
  tick/broadcast: Split __tick_broadcast_oneshot_control() into a helper
  tick/broadcast: Prefer per-cpu oneshot wakeup timers to broadcast
  tick/broadcast: Program wakeup timer when entering idle if required
  timer_list: Print name of per-cpu wakeup device

 kernel/time/tick-broadcast.c | 135 ++++++++++++++++++++++++++++++-----
 kernel/time/tick-common.c    |   2 +-
 kernel/time/tick-internal.h  |   5 +-
 kernel/time/timer_list.c     |  11 ++-
 4 files changed, 133 insertions(+), 20 deletions(-)

-- 
2.31.1.818.g46aad6cb9e-goog



Copyright © 2021, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds