Re: [PATCH 0/2] clk: Implement a clock request API
From: Maxime Ripard <hidden>
Date: 2021-05-24 12:48:20
Also in:
dri-devel, lkml
Attachments
- signature.asc [application/pgp-signature] 228 bytes
From: Maxime Ripard <hidden>
Date: 2021-05-24 12:48:20
Also in:
dri-devel, lkml
Hi Stephen, Mike, On Mon, May 03, 2021 at 10:32:21AM +0200, Maxime Ripard wrote:
Hi Stephen, On Fri, Apr 30, 2021 at 01:59:39PM -0700, Stephen Boyd wrote:quoted
Quoting Maxime Ripard (2021-04-13 03:13:18)quoted
Hi, This is a follow-up of the discussion here: https://lore.kernel.org/linux-clk/20210319150355.xzw7ikwdaga2dwhv@gilmour/ (local) 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?
Is that rationale good enough, or did you expect something else? Maxime