From: Rahul Tanwar <rahul.tanwar@linux.intel.com>
To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
hpa@zytor.com, tony.luck@intel.com, x86@kernel.org
Cc: andriy.shevchenko@intel.com, alan@linux.intel.com,
linux-kernel@vger.kernel.org, qi-ming.wu@intel.com,
chuanhua.lei@linux.intel.com, cheol.yong.kim@intel.com,
Rahul Tanwar <rahul.tanwar@linux.intel.com>
Subject: [PATCH v3 0/1] x86/init: Add option to skip using RTC
Date: Thu, 10 Oct 2019 17:28:55 +0800 [thread overview]
Message-ID: <cover.1570693058.git.rahul.tanwar@linux.intel.com> (raw)
Hi,
We have a new Atom Airmont core based product which does not support
RTC as persistent clock source.
Presently, platform ops get/set wallclock always use MC146818 RTC/CMOS
device to read & set time. This causes boot failure on our SOC with no
RTC. More specifically, it hangs in RTC driver's mach_get_cmos_time()
when it polls RTC_FRQ_SELECT register and loops until Update-In-Progress
(UIP) flag gets cleared i.e. below code snippet.
while ((CMOS_READ(RTC_FREQ_SELECT) & RTC_UIP))
cpu_relax();
After few rounds of review cycles/feedback, we concluded that we should
control it from Motorola MC146818 compatible RTC devicetree node.
Please see [1].
Make RTC read/write optional by detecting platforms which does not
support RTC/CMOS device through the corresponding DT node status
property. If status says disabled, then noop the get/set wallclock
ops.
For non DT enabled platforms or for DT enabled platforms which does
not define optional status property, proceed same as before.
Patch is baselined upon Linux 5.4-rc2 at below Git tree:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/core
[1] Documentation/devicetree/bindings/rtc/rtc-cmos.txt
v3:
* Rebase to latest 5.4-rc2 kernel.
* Fix a build warning reported by kbuild test robot.
v2:
* As per review feedback, do not hack RTC read/write functions directly.
Instead, override get/set wallclock ops during setup_arch init sequence.
v1:
* Detect platforms with no RTC in RTC read/write functions and skip RTC
read/write if not applicable.
Rahul Tanwar (1):
x86/init: Noop get/set wallclock when platform doesn't support RTC
arch/x86/kernel/x86_init.c | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
--
2.11.0
next reply other threads:[~2019-10-10 9:29 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-10 9:28 Rahul Tanwar [this message]
2019-10-10 9:28 ` [PATCH v3 1/1] x86/init: Noop get/set wallclock when platform doesn't support RTC Rahul Tanwar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1570693058.git.rahul.tanwar@linux.intel.com \
--to=rahul.tanwar@linux.intel.com \
--cc=alan@linux.intel.com \
--cc=andriy.shevchenko@intel.com \
--cc=bp@alien8.de \
--cc=cheol.yong.kim@intel.com \
--cc=chuanhua.lei@linux.intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=qi-ming.wu@intel.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.