[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210503083221.qsdurp2f3bkwfa6d@gilmour>
Date: Mon, 3 May 2021 10:32:21 +0200
From: Maxime Ripard <maxime@...no.tech>
To: Stephen Boyd <sboyd@...nel.org>
Cc: Daniel Vetter <daniel.vetter@...el.com>,
David Airlie <airlied@...ux.ie>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Mike Turquette <mturquette@...libre.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
dri-devel@...ts.freedesktop.org, Eric Anholt <eric@...olt.net>,
Daniel Vetter <daniel@...ll.ch>, linux-kernel@...r.kernel.org,
Russell King <linux@...linux.org.uk>,
Dave Stevenson <dave.stevenson@...pberrypi.com>,
Phil Elwell <phil@...pberrypi.com>,
Tim Gover <tim.gover@...pberrypi.com>,
Dom Cobley <dom@...pberrypi.com>, linux-clk@...r.kernel.org
Subject: Re: [PATCH 0/2] clk: Implement a clock request API
Hi Stephen,
On Fri, Apr 30, 2021 at 01:59:39PM -0700, Stephen Boyd wrote:
> Quoting Maxime Ripard (2021-04-13 03:13:18)
> > Hi,
> >
> > This is a follow-up of the discussion here:
> > https://lore.kernel.org/linux-clk/20210319150355.xzw7ikwdaga2dwhv@gilmour/
> >
> > This implements a mechanism to raise and lower clock rates based on consumer
> > workloads, with an example of such an implementation for the RaspberryPi4 HDMI
> > controller.
> >
> > There's a couple of things worth discussing:
> >
> > - The name is in conflict with clk_request_rate, and even though it feels
> > like the right name to me, we should probably avoid any confusion
> >
> > - The code so far implements a policy of always going for the lowest rate
> > possible. While we don't have an use-case for something else, this should
> > maybe be made more flexible?
>
> I'm definitely confused how it is different from the
> clk_set_rate_exclusive() API and associated
> clk_rate_exclusive_get()/clk_rate_exclusive_put(). Can you explain
> further the differences in the cover letter here?
The exclusive API is meant to prevent the clock rate from changing,
allowing a single user to make sure that no other user will be able to
change it.
What we want here is instead to allow multiple users to be able to
express a set of minimum rates and then let the CCF figure out a rate
for that clock that matches those constraints (so basically what
clk_set_min_rate does), but then does allow for the clock to go back to
its initial rate once that constraint is not needed anymore.
So I guess it's more akin to clk_set_min_rate with rollback than the
exclusive API?
Maxime
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists