LKML Archive on
help / color / mirror / Atom feed
From: Rob Herring <>
To: Johan Hovold <>
Cc: Greg Kroah-Hartman <>,
	Sebastian Reichel <>,
	Tony Lindgren <>,
	"H. Nikolaus Schaller" <>,
	Andreas Kemnade <>,
	Mark Rutland <>,
	Arnd Bergmann <>, Pavel Machek <>,
	"" <>,
	"open list:SERIAL DRIVERS" <>,
Subject: Re: [PATCH RESEND] serdev: add controller runtime PM support
Date: Wed, 30 May 2018 08:20:27 -0500	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>

On Wed, May 30, 2018 at 5:50 AM, Johan Hovold <> wrote:
> Add support for controller runtime power management to serdev core. This
> is needed to allow slave drivers to manage the runtime PM state of the
> underlying serial controller when its driver, in turn, implements more
> aggressive runtime power management (e.g. using autosuspend).
> For some applications, for example, where loss off initial data after a
> remote-wakeup event is acceptable or where rx is not used at all,
> aggressive serial controller runtime PM may be used without further
> involvement of the slave driver. But when this is not the case, the
> slave driver must be able to indicate when incoming data is expected in
> order to avoid data loss.
> To facilitate the common case, where the serial controller power state
> is active whenever the port is open (which is the case with just about
> every serial driver), and where data loss is not acceptable and cannot
> even be prevented by explicit controller runtime power management, an
> RPM reference is taken in serdev open and put again at close. This
> reference can later be balanced by any serdev driver which wants and/or
> can handle aggressive controller runtime PM.
> Note that the .ignore_children flag is set for the serdev controller to
> allow the underlying hardware to idle when no I/O is expected, regardless
> of the slave device RPM state.
> Acked-by: Tony Lindgren <>
> Reviewed-by: Sebastian Reichel <>
> Signed-off-by: Johan Hovold <>
> ---
> Hi Rob and Greg,
> This is a resend of the serdev controller runtime PM patch, which you
> haven't commented on yet (possibly due to the following extensive
> discussions on how to generalise the aggressive OMAP serial runtime PM
> implementation).
> This patch works with what we have today, regardless of how we end up
> configuring the serial controller (active) runtime PM behaviour
> (currently done through sysfs for OMAP), which is a separate issue.
> No changes in this resend, besides me adding Tony's and Sebastian's ack
> and reviewed-by tags and dropping the second patch which only served as
> an example of how to use this in a serdev driver.

Acked-by: Rob Herring <>


      reply	other threads:[~2018-05-30 13:20 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-30 10:50 Johan Hovold
2018-05-30 13:20 ` Rob Herring [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
    --subject='Re: [PATCH RESEND] serdev: add controller runtime PM support' \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).