Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F177257674
D18365.1794016262.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None
D18365.1794016262.diff
View Options
Index: stand/uboot/common/main.c
===================================================================
--- stand/uboot/common/main.c
+++ stand/uboot/common/main.c
@@ -497,6 +497,9 @@
do_interact:
setenv("LINES", "24", 1); /* optional */
setenv("prompt", "loader>", 1);
+#ifdef __powerpc__
+ setenv("usefdt", "1", 1);
+#endif
archsw.arch_loadaddr = uboot_loadaddr;
archsw.arch_getdev = uboot_getdev;
Index: stand/uboot/lib/elf_freebsd.c
===================================================================
--- stand/uboot/lib/elf_freebsd.c
+++ stand/uboot/lib/elf_freebsd.c
@@ -71,7 +71,7 @@
__elfN(uboot_exec)(struct preloaded_file *fp)
{
struct file_metadata *fmp;
- vm_offset_t mdp;
+ vm_offset_t mdp, dtbp;
Elf_Ehdr *e;
int error;
void (*entry)(void *);
@@ -81,7 +81,7 @@
e = (Elf_Ehdr *)&fmp->md_data;
- if ((error = md_load(fp->f_args, &mdp, NULL)) != 0)
+ if ((error = md_load(fp->f_args, &mdp, &dtbp)) != 0)
return (error);
entry = (void *)e->e_entry;
@@ -90,7 +90,12 @@
dev_cleanup();
printf("Kernel args: %s\n", fp->f_args);
+#ifdef __powerpc__
+ ((void (*)(u_long, u_long, u_long, void *, u_long))entry)(dtbp, 0, 0,
+ (void *)mdp, 0xfb5d104d);
+#else
(*entry)((void *)mdp);
+#endif
panic("exec returned");
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Nov 7, 1:51 AM (5 h, 29 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
41537898
Default Alt Text
D18365.1794016262.diff (1 KB)
Attached To
Mode
D18365: ubldr: Fix booting PowerPC kernels
Attached
Detach File
Event Timeline