|
From: Kenn H. <ke...@us...> - 2004-09-28 08:49:02
|
Update of /cvsroot/linux-vax/kernel-2.5/arch/vax/boot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16807/arch/vax/boot Modified Files: head.S lib.c mmstart.S Added Files: boot_sections.h Log Message: All early boot code should live at the very start of the kernel image Index: head.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/arch/vax/boot/head.S,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- head.S 26 Sep 2004 22:44:18 -0000 1.13 +++ head.S 28 Sep 2004 08:48:52 -0000 1.14 @@ -14,7 +14,10 @@ #include <asm/pgtable.h> /* PTE definitions */ #include <asm/irq.h> /* interrupt stack definitions */ -.section .vaxboot +#include "boot_sections.h" + +__BOOT + .globl _stext _stext: .globl start Index: mmstart.S =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/arch/vax/boot/mmstart.S,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- mmstart.S 15 Jun 2003 22:33:56 -0000 1.4 +++ mmstart.S 28 Sep 2004 08:48:52 -0000 1.5 @@ -11,7 +11,10 @@ #include <asm/page.h> #include <asm/pgtable.h> -.section .vaxbootlib +#include "boot_sections.h" + +__BOOT + .globl VAX_start_mm .balign 0x200 VAX_start_mm: Index: lib.c =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.5/arch/vax/boot/lib.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- lib.c 26 Sep 2004 22:44:18 -0000 1.2 +++ lib.c 28 Sep 2004 08:48:52 -0000 1.3 @@ -3,23 +3,25 @@ #include <asm/mv.h> -void __init boot_putchar(unsigned int c) +#include "boot_sections.h" + +void __boot boot_putchar(unsigned int c) { mv->pre_vm_putchar(c); } -void __init boot_crlf(void) +void __boot boot_crlf(void) { boot_putchar('\n'); boot_putchar('\r'); } -void __init boot_printspace(void) +void __boot boot_printspace(void) { boot_putchar(' '); } -void __init boot_printstr(char *s) +void __boot boot_printstr(char *s) { while (*s) { boot_putchar(*s); @@ -27,7 +29,7 @@ } } -void __init boot_printchar(unsigned int c) +void __boot boot_printchar(unsigned int c) { if ((c >= 0x20) && (c <= 0x7e)) { boot_putchar(c); @@ -36,7 +38,7 @@ } } -void __init boot_printint(unsigned int x) +void __boot boot_printint(unsigned int x) { int i; int d; @@ -50,7 +52,7 @@ } } -void boot_memzero(unsigned char *addr, unsigned int size) +void __boot boot_memzero(unsigned char *addr, unsigned int size) { while (size) { *addr = 0; --- NEW FILE: boot_sections.h --- #define __boot __attribute__ ((__section__ (".boot.text"))) #define __boottdata __attribute__ ((__section__ (".boot.data"))) /* For assembly routines */ #define __BOOT .section ".boot.text","ax" #define __BOOTDATA .section ".boot.data","aw" |