Mateusz Jończyk d2a632a8a1 rtc: mc146818-lib: reduce RTC_UIP polling period
Waiting 1ms every time is not necessary, for example on some AMD boxes
the RTC_UIP bit is documented as being high for around 270 microseconds
in some cases [1], which agreed with experiments on an SB710
southbridge. So 100us seems optimal.

This in preparation for mach_get_cmos_time() refactoring.
The functions mc146818_get_time() and mach_get_cmos_time() in
arch/x86/kernel/rtc.c perform the same function and the code is
duplicated. mach_get_cmos_time() is busy waiting for the RTC_UIP
bit to clear, so make mc146818_get_time() more similar to it by reducing
the polling period.

[1] AMD SB700/710/750 Register Reference Guide, page 307,
https://developer.amd.com/wordpress/media/2012/10/43009_sb7xx_rrg_pub_1.00.pdf

        "SB700 A12: The UIP high pulse is 270 μS Typical when SS on SRC
        clock is OFF and 100μ min when SRC SS is ON." [sic]

Signed-off-by: Mateusz Jończyk <mat.jonczyk@o2.pl>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: x86@kernel.org
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Link: https://lore.kernel.org/r/20220225215011.861477-2-mat.jonczyk@o2.pl
2022-06-24 21:23:50 +02:00
..
2022-03-23 19:58:41 +01:00
2022-05-17 23:11:44 +02:00
2021-08-10 23:21:46 +02:00
2022-05-17 23:11:44 +02:00
2021-12-02 23:23:38 +01:00
2021-09-25 23:22:28 +02:00
2022-03-23 19:58:38 +01:00
2019-11-08 16:14:09 +01:00
2021-04-29 23:03:26 +02:00
2021-05-25 00:41:25 +02:00
2021-10-01 23:28:28 +02:00
2021-01-16 23:19:26 +01:00
2022-06-01 23:19:17 +02:00
2022-04-19 16:27:05 +02:00
2021-10-18 17:20:50 +02:00
2022-05-25 01:24:21 +02:00
2021-10-23 23:57:23 +02:00
2021-09-25 23:26:37 +02:00
2022-06-01 14:48:13 -07:00
2020-12-03 23:43:23 +01:00