2008-01-19 Robert Millan <rmh@aybabtu.com>

PowerPC changes provided by Pavel Roskin.

        * kern/powerpc/ieee1275/cmain.c (cmain): Don't take any arguments.
        * kern/powerpc/ieee1275/crt0.S: Store r5 in grub_ieee1275_entry_fn,
        don't rely on cmain() doing it.
        * kern/i386/ieee1275/startup.S (_start): Store %eax in
        grub_ieee1275_entry_fn, don't rely on cmain() doing it.
This commit is contained in:
robertmh 2008-01-19 11:41:00 +00:00
parent 1210e168fe
commit 5f5a7c1518
4 changed files with 19 additions and 7 deletions

View File

@ -1,3 +1,13 @@
2008-01-19 Robert Millan <rmh@aybabtu.com>
PowerPC changes provided by Pavel Roskin.
* kern/powerpc/ieee1275/cmain.c (cmain): Don't take any arguments.
* kern/powerpc/ieee1275/crt0.S: Store r5 in grub_ieee1275_entry_fn,
don't rely on cmain() doing it.
* kern/i386/ieee1275/startup.S (_start): Store %eax in
grub_ieee1275_entry_fn, don't rely on cmain() doing it.
2008-01-16 Robert Millan <rmh@aybabtu.com>
* include/grub/i386/linuxbios/memory.h

View File

@ -34,5 +34,5 @@
start:
_start:
movl %eax, %ecx
movl %eax, EXT_C(grub_ieee1275_entry_fn)
jmp EXT_C(cmain)

View File

@ -1,7 +1,7 @@
/* cmain.c - Startup code for the PowerPC. */
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2003,2004,2005,2006,2007 Free Software Foundation, Inc.
* Copyright (C) 2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -102,12 +102,10 @@ grub_ieee1275_find_options (void)
}
}
void cmain (uint32_t r3, uint32_t r4, uint32_t r5);
void cmain (void);
void
cmain (UNUSED uint32_t r3, UNUSED uint32_t r4, uint32_t r5)
cmain (void)
{
grub_ieee1275_entry_fn = (int (*)(void *)) r5;
grub_ieee1275_finddevice ("/chosen", &grub_ieee1275_chosen);
grub_ieee1275_find_options ();

View File

@ -1,7 +1,7 @@
/* crt0.S - Startup code for the PowerPC. */
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2003,2004,2005,2007 Free Software Foundation, Inc.
* Copyright (C) 2003,2004,2005,2007,2008 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -38,5 +38,9 @@ _start:
2: stwu 2, 4(6) /* We know r2 is already 0 from above. */
bdnz 2b
/* Store r5 in grub_ieee1275_entry_fn. */
lis 9, grub_ieee1275_entry_fn@ha
stw 5, grub_ieee1275_entry_fn@l(9)
bl cmain
1: b 1b