mirror of
https://gitlab.com/qemu-project/openbios.git
synced 2024-02-13 08:34:06 +08:00
ppc: if "\\:tbxi" (mac) fails, try "ppc\bootinfo.txt" (chrp).
This is needed to load the bootloader of OpenBSD. Signed-off-by: Laurent Vivier <Laurent@vivier.eu> git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@590 f158a5a8-5612-0410-a976-696ce0be7e32
This commit is contained in:
@@ -205,8 +205,12 @@ oldworld_boot( void )
|
||||
static void
|
||||
newworld_boot( void )
|
||||
{
|
||||
static const char * const chrp_path = "\\\\:tbxi" ;
|
||||
static const char * const chrp_path[] = { "\\\\:tbxi",
|
||||
"ppc\\bootinfo.txt",
|
||||
NULL
|
||||
};
|
||||
char *path = pop_fstr_copy(), *param;
|
||||
int i;
|
||||
|
||||
param = strchr(path, ' ');
|
||||
if (param) {
|
||||
@@ -237,7 +241,8 @@ newworld_boot( void )
|
||||
param = pop_fstr_copy();
|
||||
}
|
||||
try_path(path, NULL, param);
|
||||
try_path(path, chrp_path, param);
|
||||
for (i = 0; chrp_path[i]; i++)
|
||||
try_path(path, chrp_path[i], param);
|
||||
} else {
|
||||
uint16_t boot_device = fw_cfg_read_i16(FW_CFG_BOOT_DEVICE);
|
||||
switch (boot_device) {
|
||||
@@ -249,12 +254,14 @@ newworld_boot( void )
|
||||
path = strdup("cd:");
|
||||
break;
|
||||
}
|
||||
try_path(path, chrp_path, param);
|
||||
for (i = 0; chrp_path[i]; i++)
|
||||
try_path(path, chrp_path[i], param);
|
||||
}
|
||||
} else {
|
||||
NEWWORLD_DPRINTF("Entering boot, path %s\n", path);
|
||||
try_path(path, NULL, param);
|
||||
try_path(path, chrp_path, param);
|
||||
for (i = 0; chrp_path[i]; i++)
|
||||
try_path(path, chrp_path[i], param);
|
||||
}
|
||||
printk("*** Boot failure! No secondary bootloader specified ***\n");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user