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] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 2 Mar 2015 15:58:44 +0530
From:	Jassi Brar <jaswinder.singh@...aro.org>
To:	Lee Jones <lee.jones@...aro.org>
Cc:	Jassi Brar <jassisinghbrar@...il.com>,
	Devicetree List <devicetree@...r.kernel.org>,
	Mike Turquette <mturquette@...aro.org>, kernel@...inux.com,
	Stephen Boyd <sboyd@...eaurora.org>,
	lkml <linux-kernel@...r.kernel.org>,
	"linux-arm-kernel@...ts.infradead.org" 
	<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 3/4] clk: Provide always-on clock support

On 2 March 2015 at 15:48, Lee Jones <lee.jones@...aro.org> wrote:
> On Mon, 02 Mar 2015, Jassi Brar wrote:
>
>> On Mon, Mar 2, 2015 at 2:06 PM, Lee Jones <lee.jones@...aro.org> wrote:
>> > On Sat, 28 Feb 2015, Jassi Brar wrote:
>> >
>> >> On 28 February 2015 at 02:44, Lee Jones <lee.jones@...aro.org> wrote:
>> >> > Lots of platforms contain clocks which if turned off would prove fatal.
>> >> > The only way to recover from these catastrophic failures is to restart
>> >> > the board(s).  Now, when a clock is registered with the framework it is
>> >> > compared against a list of provided always-on clock names which must be
>> >> > kept ungated.  If it matches, we enable the existing CLK_IGNORE_UNUSED
>> >> > flag, which will prevent the common clk framework from attempting to
>> >> > gate it during the clk_disable_unused() procedure.
>> >> >
>> >> If a clock is critical on a certain board, it could be got+enabled
>> >> during early boot so there is always a user.
>> >
>> > I tried this.  There was push-back from the DT maintainers.
>> >
>> >   http://lists.infradead.org/pipermail/linux-arm-kernel/2015-February/324417.html
>> >
>> Thanks, I wasn't aware of the history.
>>
>> >> To be able to do that from DT, maybe add a new, say, CLK_ALWAYS_ON
>> >> flag could be made to initialize the clock with one phantom user
>> >> already. Or just reuse the CLK_IGNORE_UNUSED?
>> >
>> > How is that different to what this set is doing?
>> >
>> The phantom user - that's there but none can see it.
>>
>> How about?
>>
>> +       of_property_for_each_string(np, "clock-always-on", prop, clkname) {
>> +               clk = __clk_lookup(clkname);
>> +               if (!clk)
>> +                       continue;
>> +
>> +               clk->core->enable_count = 1;
>> +               clk->core->prepare_count = 1;
>> +       }
>
> This is only fractionally different from the current implementation.
>
> I believe the current way it slightly nicer, as we don't have to fake
> the user count.
>
Well... the user is indeed there, isn't it? It's just not known to
Linux. So 'fake' isn't most applicable here.
Otherwise you might have to stub out some existing and future
functions for CLK_IGNORE_UNUSED. And how do we explain to userspace
which would see power drawn but no user of the clock?

Anways, I am OK either way.

Cheers!
Jassi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ