lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 1 Mar 2021 09:29:32 +0100
From:   Rasmus Villemoes <linux@...musvillemoes.dk>
To:     Andy Shevchenko <andy.shevchenko@...il.com>
Cc:     Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Rob Herring <robh+dt@...nel.org>,
        "devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        Arnd Bergmann <arnd@...db.de>,
        "linux-clk@...r.kernel.org" <linux-clk@...r.kernel.org>
Subject: Re: [PATCH 2/2] drivers: misc: add ripple counter driver

On 28/02/2021 10.33, Andy Shevchenko wrote:
> On Sun, Feb 28, 2021 at 11:29 AM Andy Shevchenko
> <andy.shevchenko@...il.com> wrote:
>>
>> On Sun, Feb 28, 2021 at 11:07 AM Andy Shevchenko
>> <andy.shevchenko@...il.com> wrote:
>>> On Friday, February 26, 2021, Rasmus Villemoes <linux@...musvillemoes.dk> wrote:
>>>>
>>>> The only purpose of this driver is to serve as a consumer of the input
>>>> clock, to prevent it from being disabled by clk_disable_unused().
>>>
>>> We have a clock API to do the same (something like marking it used or so) why do you need a driver?
>>
>> Example:
>> https://elixir.bootlin.com/linux/latest/source/drivers/platform/x86/pmc_atom.c#L365
>>
>> If it's a DT based platform I think you can make it somehow work thru DT.
> 
> Okay, briefly looking at the state of affairs [1] seems like you need
> to hack it into clock provider.
> 
> [1]: https://elixir.bootlin.com/linux/latest/C/ident/CLK_IS_CRITICAL
> 

I did find CLK_IS_CRITICAL and CLK_IGNORE_UNUSED while trying to figure
out how to handle this. However, while CLK_IS_CRITICAL is in principle
settable via DT, the comment above of_clk_detect_critical() seems to
make it clear that adding a call of that from the RTC driver is a total
no-no.

CLK_IGNORE_UNUSED can't be set at all from DT, and wouldn't solve the
problem fully - while we can and do make sure the bootloader sets the
appropriate bit in the RTCs registers, it's more robust if we also
ensure the kernel explicitly enables the clock.

But if there is some way to do this within the clk framework/existing
bindings, I'm all ears - that's the reason I cc'ed the clk list.

Rasmus

Powered by blists - more mailing lists