Changeset View
Changeset View
Standalone View
Standalone View
stand/powerpc/ofw/elf_freebsd.c
Show First 20 Lines • Show All 78 Lines • ▼ Show 20 Lines | if ((fmp = file_findmetadata(fp, MODINFOMD_ELFHDR)) == NULL) { | ||||
return(EFTYPE); | return(EFTYPE); | ||||
} | } | ||||
e = (Elf_Ehdr *)&fmp->md_data; | e = (Elf_Ehdr *)&fmp->md_data; | ||||
entry = e->e_entry; | entry = e->e_entry; | ||||
if ((error = md_load(fp->f_args, &mdp, &dtbp)) != 0) | if ((error = md_load(fp->f_args, &mdp, &dtbp)) != 0) | ||||
return (error); | return (error); | ||||
printf("Kernel entry at 0x%lx ...\n", e->e_entry); | printf("Kernel entry at 0x%x ...\n", entry); | ||||
dev_cleanup(); | dev_cleanup(); | ||||
if (dtbp != 0) { | if (dtbp != 0) { | ||||
OF_quiesce(); | OF_quiesce(); | ||||
((int (*)(u_long, u_long, u_long, void *, u_long))entry)(dtbp, | ((int (*)(u_long, u_long, u_long, void *, u_long))entry)(dtbp, | ||||
0, 0, (void *)mdp, 0xfb5d104d); | 0, 0, (void *)mdp, 0xfb5d104d); | ||||
} else { | } else { | ||||
OF_chain((void *)reloc, end - (char *)reloc, (void *)entry, | OF_chain((void *)reloc, end - (char *)reloc, (void *)entry, | ||||
Show All 11 Lines |