The year 2038 problem in rtc_to_tm() is reusing code from Linux. The EFI runtime service GetTime() is used to read the time form the real time clock.
The RTC drivers are made usable even if U-Boot is built without CONFIG_CMD_DATE. The implementation of the GetTime() runtime service is corrected. v2: do not support non-driver-model drivers Heinrich Schuchardt (6): drivers: rtc: resolve year 2038 problem in rtc_to_tm rtc: remove CONFIG_CMD_DATE dependency efi_loader: remove unused efi_get_time_init() efi_loader: complete implementation of GetTime() efi_selftest: support printing leading zeroes efi_selftest: unit test for GetTime() cmd/bootefi.c | 3 - drivers/rtc/Makefile | 1 + drivers/rtc/at91sam9_rtt.c | 4 -- drivers/rtc/date.c | 43 --------------- drivers/rtc/davinci.c | 2 - drivers/rtc/ds1302.c | 4 -- drivers/rtc/ds1306.c | 4 -- drivers/rtc/ds1307.c | 4 -- drivers/rtc/ds1337.c | 4 -- drivers/rtc/ds1374.c | 3 - drivers/rtc/ds164x.c | 4 -- drivers/rtc/ds174x.c | 4 -- drivers/rtc/ds3231.c | 4 -- drivers/rtc/i2c_rtc_emul.c | 4 +- drivers/rtc/imxdi.c | 4 -- drivers/rtc/m41t11.c | 3 - drivers/rtc/m41t60.c | 3 - drivers/rtc/m41t62.c | 4 -- drivers/rtc/m48t35ax.c | 4 -- drivers/rtc/max6900.c | 4 -- drivers/rtc/mc146818.c | 3 - drivers/rtc/mcfrtc.c | 4 -- drivers/rtc/mk48t59.c | 4 -- drivers/rtc/pcf8563.c | 4 -- drivers/rtc/rs5c372.c | 3 - drivers/rtc/rtc-lib.c | 73 +++++++++++++++++++++++++ drivers/rtc/rx8025.c | 4 -- drivers/rtc/s3c24x0_rtc.c | 4 -- drivers/rtc/x1205.c | 4 -- include/efi_loader.h | 1 - include/rtc.h | 16 +++++- lib/efi_loader/efi_runtime.c | 58 ++++++++++++++------ lib/efi_selftest/Makefile | 1 + lib/efi_selftest/efi_selftest_console.c | 33 +++++++---- lib/efi_selftest/efi_selftest_rtc.c | 67 +++++++++++++++++++++++ 35 files changed, 221 insertions(+), 168 deletions(-) create mode 100644 drivers/rtc/rtc-lib.c create mode 100644 lib/efi_selftest/efi_selftest_rtc.c -- 2.18.0 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot