patch-2.4.22 linux-2.4.22/arch/ppc/boot/chrp/main.c
Next file: linux-2.4.22/arch/ppc/boot/common/Makefile
Previous file: linux-2.4.22/arch/ppc/boot/Makefile
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
2003-08-25 04:44:40.000000000 -0700
- Orig file:
linux-2.4.21/arch/ppc/boot/chrp/main.c
- Orig date:
2003-06-13 07:51:31.000000000 -0700
diff -urN linux-2.4.21/arch/ppc/boot/chrp/main.c linux-2.4.22/arch/ppc/boot/chrp/main.c
@@ -43,6 +43,8 @@
static char scratch[SCRATCH_SIZE]; /* 1MB of scratch space for gunzip */
+typedef void (*kernel_start_t)(int, int, void *, unsigned int, unsigned int);
+
void
chrpboot(int a1, int a2, void *prom)
{
@@ -50,7 +52,7 @@
void *dst;
unsigned char *im;
unsigned int initrd_size, initrd_start;
-
+
printf("chrpboot starting: loaded at 0x%p\n\r", &_start);
initrd_size = (char *)(&__ramdisk_end) - (char *)(&__ramdisk_begin);
@@ -89,11 +91,11 @@
flush_cache(dst, len);
make_bi_recs(((unsigned long) dst + len), "chrpboot", _MACH_chrp,
(PROG_START + PROG_SIZE));
-
+
sa = (unsigned long)PROG_START;
printf("start address = 0x%x\n\r", sa);
- (*(void (*)())sa)(a1, a2, prom, initrd_start, initrd_size);
+ (*(kernel_start_t)sa)(a1, a2, prom, initrd_start, initrd_size);
printf("returned?\n\r");
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)