[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191108175329.GH216543@piout.net>
Date: Fri, 8 Nov 2019 18:53:29 +0100
From: Alexandre Belloni <alexandre.belloni@...tlin.com>
To: Sebastian Reichel <sebastian.reichel@...labora.com>
Cc: 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>,
Stephen Boyd <sboyd@...nel.org>, linux-kernel@...r.kernel.org,
kernel@...labora.com
Subject: Re: [RFCv1] rtc: m41t80: disable clock provider support
On 08/11/2019 18:01:35+0100, Sebastian Reichel wrote:
> Congatec's QMX6 system on module (SoM) uses a m41t62 as RTC. The
> modules SQW clock output defaults to 32768 Hz. This behaviour is
> used to provide the i.MX6 CKIL clock. Once the RTC driver is probed,
> the clock is disabled and all i.MX6 functionality depending on
> the 32 KHz clock have undefined behaviour (e.g. the hardware watchdog
> run to fast or slow).
>
> The normal solution would be to properly describe the clock tree
> in DT, but from the kernel's perspective this is a chicken-and-egg
> problem: CKIL is required very early, but the clock is only provided
> after the I2C RTC has been probed.
>
> Technically everything is fine by not touching anything, so this
> works around the issue by disabling the clock handling from the
> RTC driver. I guess the proper solution would be to simply mark the
> clock as always-enabled, but this does not seem to be supported by
> the clock framework.
>
You need to have a consumer so this clock is not disabled by the CCF
after seeing nobody uses it. If you need it early, you can have a look
at rtc-sun6i.c but I would like that to not become a recurrent pattern,
especially for discrete RTCs.
--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Powered by blists - more mailing lists