]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
2008-01-19 Robert Millan <rmh@aybabtu.com>
authorrobertmh <robertmh@localhost>
Sat, 19 Jan 2008 11:41:00 +0000 (11:41 +0000)
committerrobertmh <robertmh@localhost>
Sat, 19 Jan 2008 11:41:00 +0000 (11:41 +0000)
        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.

ChangeLog
kern/i386/ieee1275/startup.S
kern/powerpc/ieee1275/cmain.c
kern/powerpc/ieee1275/crt0.S

index fcd21caebfed0c8e3c2d05ffd922c738736c81b6..120feca65fd7e5c448035e7cd5856e375936219a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -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
index 517dc003ae9339254a7b74492c1f4eb84520181b..015534eead6dc01cfdcd202519004aa607fffd4d 100644 (file)
@@ -34,5 +34,5 @@
 
 start:
 _start:
-       movl %eax, %ecx
+       movl %eax, EXT_C(grub_ieee1275_entry_fn)
        jmp EXT_C(cmain)
index f560a03e6927809ed8f79be6a2ce3a5fdc02be53..115a16f5f2dca0683e7ff2508b86234880d415d9 100644 (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 ();
index f295dea572a6c8552ddb265cb5e4df2828ad7e37..28130aa0c48d33b5b31b6609961862acb7d179f8 100644 (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