Skip to content

Commit

Permalink
arch/x86: Remove efi_set_rtc_mmss()
Browse files Browse the repository at this point in the history
efi_set_rtc_mmss() is never used to set RTC due to bugs found
on many EFI platforms. It is set directly by mach_set_rtc_mmss().
Hence, remove unused efi_set_rtc_mmss() function.

Signed-off-by: Daniel Kiper <daniel.kiper@oracle.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
  • Loading branch information
Daniel Kiper authored and Matt Fleming committed Jul 18, 2014
1 parent 9402973 commit f383d00
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 37 deletions.
36 changes: 0 additions & 36 deletions arch/x86/platform/efi/efi.c
Original file line number Diff line number Diff line change
Expand Up @@ -104,42 +104,6 @@ static efi_status_t __init phys_efi_set_virtual_address_map(
return status;
}

int efi_set_rtc_mmss(const struct timespec *now)
{
unsigned long nowtime = now->tv_sec;
efi_status_t status;
efi_time_t eft;
efi_time_cap_t cap;
struct rtc_time tm;

status = efi.get_time(&eft, &cap);
if (status != EFI_SUCCESS) {
pr_err("Oops: efitime: can't read time!\n");
return -1;
}

rtc_time_to_tm(nowtime, &tm);
if (!rtc_valid_tm(&tm)) {
eft.year = tm.tm_year + 1900;
eft.month = tm.tm_mon + 1;
eft.day = tm.tm_mday;
eft.minute = tm.tm_min;
eft.second = tm.tm_sec;
eft.nanosecond = 0;
} else {
pr_err("%s: Invalid EFI RTC value: write of %lx to EFI RTC failed\n",
__func__, nowtime);
return -1;
}

status = efi.set_time(&eft);
if (status != EFI_SUCCESS) {
pr_err("Oops: efitime: can't write time!\n");
return -1;
}
return 0;
}

void efi_get_time(struct timespec *now)
{
efi_status_t status;
Expand Down
1 change: 0 additions & 1 deletion include/linux/efi.h
Original file line number Diff line number Diff line change
Expand Up @@ -873,7 +873,6 @@ extern int __init efi_uart_console_only (void);
extern void efi_initialize_iomem_resources(struct resource *code_resource,
struct resource *data_resource, struct resource *bss_resource);
extern void efi_get_time(struct timespec *now);
extern int efi_set_rtc_mmss(const struct timespec *now);
extern void efi_reserve_boot_services(void);
extern int efi_get_fdt_params(struct efi_fdt_params *params, int verbose);
extern struct efi_memory_map memmap;
Expand Down

0 comments on commit f383d00

Please sign in to comment.