summaryrefslogtreecommitdiff
path: root/lib/efi_loader
diff options
context:
space:
mode:
authorHeinrich Schuchardt <xypron.glpk@gmx.de>2019-05-31 22:56:02 +0200
committerHeinrich Schuchardt <xypron.glpk@gmx.de>2019-06-01 04:53:13 +0200
commit5ec48e38eefa5fbc2cab0c34b2b48df67c0fa23e (patch)
treea61bf0860c0ab52f36892c9a3ebc2bc36905e0be /lib/efi_loader
parent38b9a79c6366a0e4c98b0a6f33f268fc0d3ba4ce (diff)
efi_loader: Kconfig entries for GetTime(), SetTime()
The GetTime() and the SetTime() runtime services are not obligatory. So let's make them customizable. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'lib/efi_loader')
-rw-r--r--lib/efi_loader/Kconfig16
-rw-r--r--lib/efi_loader/efi_runtime.c6
2 files changed, 19 insertions, 3 deletions
diff --git a/lib/efi_loader/Kconfig b/lib/efi_loader/Kconfig
index fc04ea39d0..cd5436c576 100644
--- a/lib/efi_loader/Kconfig
+++ b/lib/efi_loader/Kconfig
@@ -18,6 +18,22 @@ config EFI_LOADER
if EFI_LOADER
+config EFI_GET_TIME
+ bool "GetTime() runtime service"
+ depends on DM_RTC
+ default y
+ help
+ Provide the GetTime() runtime service at boottime. This service
+ can be used by an EFI application to read the real time clock.
+
+config EFI_SET_TIME
+ bool "SetTime() runtime service"
+ depends on EFI_GET_TIME
+ default n
+ help
+ Provide the SetTime() runtime service at boottime. This service
+ can be used by an EFI application to adjust the real time clock.
+
config EFI_DEVICE_PATH_TO_TEXT
bool "Device path to text protocol"
default y
diff --git a/lib/efi_loader/efi_runtime.c b/lib/efi_loader/efi_runtime.c
index 98ab4de03d..9c50955c9b 100644
--- a/lib/efi_loader/efi_runtime.c
+++ b/lib/efi_loader/efi_runtime.c
@@ -167,7 +167,7 @@ static efi_status_t EFIAPI efi_get_time_boottime(
struct efi_time *time,
struct efi_time_cap *capabilities)
{
-#ifdef CONFIG_DM_RTC
+#ifdef CONFIG_EFI_GET_TIME
efi_status_t ret = EFI_SUCCESS;
struct rtc_time tm;
struct udevice *dev;
@@ -214,7 +214,7 @@ out:
#endif
}
-#ifdef CONFIG_DM_RTC
+#ifdef CONFIG_EFI_SET_TIME
/**
* efi_validate_time() - checks if timestamp is valid
@@ -252,7 +252,7 @@ static int efi_validate_time(struct efi_time *time)
*/
static efi_status_t EFIAPI efi_set_time_boottime(struct efi_time *time)
{
-#ifdef CONFIG_DM_RTC
+#ifdef CONFIG_EFI_SET_TIME
efi_status_t ret = EFI_SUCCESS;
struct rtc_time tm;
struct udevice *dev;