Re: [PATCH v2 2/2] spi: amlogic-spifc-a1: add support for max_speed_hz

From: Martin Kurbanov
Date: Mon Jul 24 2023 - 11:15:28 EST




On 20.07.2023 18:46, Mark Brown wrote:
> On Thu, Jul 20, 2023 at 06:41:11PM +0300, Martin Kurbanov wrote:
>> On 11.07.2023 10:25, Jerome Brunet wrote:
>
>>>> + ret = clk_set_rate(spifc->clk, freq);
>>>> + if (ret)
>>>> + return ret;
>
>>>> + spifc->curr_speed_hz = freq;
>
>>> There is no guarantee that clk_set_rate() has set the rate you have
>>> requested, at least not precisely. You should call clk_get_rate() here.
>
>> Are you referring to a situation where there is a change in the rate due
>> to a request from another client, such as a sibling driver with the same
>> parent clock?
>
> The clock may simply not be able to generate exactly the rate you
> requested, the rate will be rounded to some value that the clock can
> actually generate.

Yes, I understand the situation. However, I am comparing it with the
requested frequency rather than the actual one that has been set.
Therefore, I asked Jerome for clarification regarding whether the
frequency can be changed by another client (driver). Maybe, it's better
to remove this condition at all? CCF has a cached rate value and doesn't
run 'set' operation if it's not needed.

--
Best Regards,
Martin Kurbanov