release 3.5-pre2
https://sourceforge.net/projects/elilo/files/elilo/elilo-3.5pre2/
This commit is contained in:
parent
cb533a5de5
commit
6a4d7e49dc
29 changed files with 523 additions and 1389 deletions
|
@ -39,7 +39,7 @@ extern loader_ops_t plain_loader, gzip_loader;
|
|||
* IA-64 specific boot paramters initialization routine
|
||||
*/
|
||||
INTN
|
||||
sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, UINTN *cookie)
|
||||
sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, memdesc_t *vmcode, UINTN *cookie)
|
||||
{
|
||||
UINTN cols, rows;
|
||||
SIMPLE_TEXT_OUTPUT_INTERFACE *conout;
|
||||
|
@ -64,7 +64,12 @@ sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd,
|
|||
bp->efi_memdesc_version = mdesc.desc_version;
|
||||
bp->command_line = (UINTN)cmdline;
|
||||
bp->initrd_start = (UINTN) initrd->start_addr;
|
||||
bp->initrd_size = initrd->pgcnt << EFI_PAGE_SHIFT;
|
||||
bp->initrd_size = initrd->size;
|
||||
DBG_PRT((L"Got initrd @ 0x%lx (%d bytes)", initrd->start_addr, initrd->size));
|
||||
|
||||
bp->vmcode_start = (UINTN) vmcode->start_addr;
|
||||
bp->vmcode_size = vmcode->size;
|
||||
DBG_PRT((L"Got vmcode @ 0x%lx (%d bytes)", vmcode->start_addr, vmcode->size));
|
||||
|
||||
/* fetch console parameters: */
|
||||
conout = systab->ConOut;
|
||||
|
@ -135,3 +140,20 @@ sysdeps_initrd_get_addr(kdesc_t *kd, memdesc_t *imem)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/* Flush data cache [addr; addr + len], and sync with icache. */
|
||||
void
|
||||
flush_dcache (CHAR8 *addr, UINT64 len)
|
||||
{
|
||||
/* Cache line length is at least 32. */
|
||||
UINT64 a = (UINT64)addr & ~0x1f;
|
||||
|
||||
VERB_PRT(3, Print(L"Flush 0x%lx-", a));
|
||||
|
||||
/* Flush data. */
|
||||
for (len = (len + 31) & ~0x1f; len > 0; len -= 0x20, a += 0x20)
|
||||
asm volatile ("fc %0" : : "r" (a));
|
||||
/* Sync and serialize. Maybe extra. */
|
||||
asm volatile (";; sync.i;; srlz.i;;");
|
||||
|
||||
VERB_PRT(3, Print(L"0x%lx\n", a));
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue