Changes in boot/arch/arm64/src/main.c [95b7d4df:28a5ebd] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
boot/arch/arm64/src/main.c
r95b7d4df r28a5ebd 116 116 { 117 117 efi_status_t status; 118 uint64_t current_el; 118 119 uint64_t memmap = 0; 119 120 sysarg_t memmap_size; … … 142 143 printf(" %p|%p: UEFI system table\n", efi_system_table_in, 143 144 efi_system_table_in); 145 146 /* Validate the exception level. */ 147 current_el = CurrentEL_read(); 148 if (current_el != CURRENT_EL_EL1) { 149 printf("Error: Unexpected CurrentEL value %0#18" PRIx64 ".\n", 150 current_el); 151 status = EFI_UNSUPPORTED; 152 goto fail; 153 } 144 154 145 155 /* Obtain memory map. */ … … 177 187 178 188 /* 179 * Check that everything is aligned on a 4 KiB boundary and the kernel can189 * Check that everything is aligned on a 4kB boundary and the kernel can 180 190 * be placed by the decompression code at a correct address. 181 191 */ … … 189 199 * Dynamically check the memory base. The condition should be always 190 200 * true because UEFI guarantees each physical/virtual address in the 191 * memory map is aligned on a 4 KiB boundary.201 * memory map is aligned on a 4kB boundary. 192 202 */ 193 203 if (!IS_ALIGNED(memory_base, PAGE_SIZE)) { 194 204 printf("Error: Start of usable RAM (%p) is not aligned on a " 195 "4 KiB boundary.\n", (void *) memory_base);205 "4kB boundary.\n", (void *) memory_base); 196 206 status = EFI_UNSUPPORTED; 197 207 goto fail; … … 233 243 234 244 extract_payload(&bootinfo->taskmap, kernel_dest, ram_end, 235 (uintptr_t) kernel_dest, smc_coherence);245 (uintptr_t) kernel_dest, ensure_visibility); 236 246 237 247 /* Get final memory map. */ … … 291 301 bootinfo->memmap.cnt = cnt; 292 302 293 /* Flush the data cache containing bootinfo. */294 dcache_flush(bootinfo, sizeof(*bootinfo));295 296 303 uintptr_t entry = check_kernel_translated((void *) decompress_base, 297 304 BOOT_OFFSET);
Note:
See TracChangeset
for help on using the changeset viewer.