diff --git a/src/efi/mod.rs b/src/efi/mod.rs index 1d725cfe..32f8de5a 100644 --- a/src/efi/mod.rs +++ b/src/efi/mod.rs @@ -1181,6 +1181,19 @@ pub fn efi_exec( let wrapped_fs = file::FileSystemWrapper::new(fs, efi_part_id); + // allocate descriptor for RTC on aarch64 + #[cfg(target_arch = "aarch64")] + if Status::SUCCESS + != ALLOCATOR.borrow_mut().add_initial_allocation( + efi::MEMORY_MAPPED_IO, + 1, + crate::arch::aarch64::layout::map::mmio::PL031_START as u64, + r_efi::efi::MEMORY_RUNTIME, + ) + { + log!("Failed to allocate memory map descriptor for RTC PL031\n"); + } + let image = new_image_handle( crate::efi::EFI_BOOT_PATH, 0 as Handle,