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]
Message-Id: <20191112222012.157CC20674@mail.kernel.org>
Date:   Tue, 12 Nov 2019 14:20:11 -0800
From:   Stephen Boyd <sboyd@...nel.org>
To:     Sebastian Reichel <sebastian.reichel@...labora.com>
Cc:     Alexandre Belloni <alexandre.belloni@...tlin.com>,
        linux-clk@...r.kernel.org, linux-rtc@...r.kernel.org,
        Alessandro Zummo <a.zummo@...ertech.it>,
        Russell King <linux@...linux.org.uk>,
        Michael Turquette <mturquette@...libre.com>,
        linux-kernel@...r.kernel.org, kernel@...labora.com
Subject: Re: [RFCv1] rtc: m41t80: disable clock provider support

Quoting Sebastian Reichel (2019-11-12 07:15:26)
> Hi,
> 
> On Fri, Nov 08, 2019 at 10:53:33PM -0800, Stephen Boyd wrote:
> > Quoting Sebastian Reichel (2019-11-08 17:41:51)
> > > On Fri, Nov 08, 2019 at 04:24:48PM -0800, Stephen Boyd wrote:
> > > > 
> > > > Is this the chicken-egg scenario? I read this thread but I can't follow
> > > > along with what the problem is. Sorry.
> > > 
> > > Yes. The board has an I2C based RTC (m41t62), which provides a programmable 1
> > > Hz to 32 kHz square wave (SQW) output defaulting to 32 kHz. The board designers
> > > connected the RTC's SQW output to the i.MX6 CKIL clock input instead of adding
> > > another oscillator. The i.MX6 CCM acquires that clock in imx6q_clocks_init()
> > > (and assumes it is a fixed clock):
> > > 
> > > hws[IMX6QDL_CLK_CKIL] = imx6q_obtain_fixed_clk_hw(ccm_node, "ckil", 0);
> > 
> > Who uses the IMX6QDL_CLK_CKIL though? Grep on kernel sources shows me
> > nothing.
> 
> The manual specifies, that CKIL is synchronized with the main system
> clock. The resulting clock is used by all kind of IP cores inside
> the i.MX6, for example the SNVS RTC and watchdog. I couldn't find
> any registers to configure the CKIL pipeline and CKIL input is
> usually a fixed clock, so current implementation might be "broken"
> without anyone noticing. Checking a running i.MX6 system, that
> actually seems to be the case :(
> 
> $ cat /sys/kernel/debug/clk/ckil/clk_rate         
> 32768
> $ cat /sys/kernel/debug/clk/ckil/clk_enable_count 
> 0
> $ cat /sys/kernel/debug/clk/ckil/clk_prepare_count 
> 0
> $ cat /sys/kernel/debug/clk/ckil/clk_flags         
> CLK_IS_BASIC
> 
> I suppose an easy fix would be to mark that clock as critical and
> that would also keep the parent clocks enabled?

Yes. It sounds like some sort of low frequency timer clk. It probably
should always be left enabled with CLK_IS_CRITICAL then.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ