diff options
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arch/alpha/conf/ld.script | 19 | ||||
-rw-r--r-- | sys/arch/alpha/include/param.h | 4 |
2 files changed, 19 insertions, 4 deletions
diff --git a/sys/arch/alpha/conf/ld.script b/sys/arch/alpha/conf/ld.script index 0c66515d575..dfb20a2dd05 100644 --- a/sys/arch/alpha/conf/ld.script +++ b/sys/arch/alpha/conf/ld.script @@ -1,4 +1,4 @@ -/* $OpenBSD: ld.script,v 1.1 2009/09/24 19:51:32 miod Exp $ */ +/* $OpenBSD: ld.script,v 1.2 2009/10/02 17:57:20 miod Exp $ */ /* * Copyright (c) 2009 Miodrag Vallat. @@ -26,7 +26,22 @@ OUTPUT_ARCH(alpha) ENTRY(__start) SECTIONS { - . = 0xfffffc0000230000; + /* + * The start address needs to be a physical address allowing for + * enough room for the console firmware, and the boot loader. + * On most alpha machines, the console fits in no more than + * 2MB, to which we need to add 256KB of boot blocks and the + * initial kernel stack. + * However, some of the last alpha models (*5 D and E series, + * *7, and G series) have much larger console sizes. + * The largest console encountered so far is 0x51c000 bytes long + * (on DS25). + * + * If you change this value, make sure to update KERNBASE in + * <machine/param.h> as well. + */ + . = 0xfffffc0000580000; + .text : { *(.text .text.* .gnu.linkonce.t.*) } PROVIDE(etext = .); .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } diff --git a/sys/arch/alpha/include/param.h b/sys/arch/alpha/include/param.h index 721367e8939..ace9b16468c 100644 --- a/sys/arch/alpha/include/param.h +++ b/sys/arch/alpha/include/param.h @@ -1,4 +1,4 @@ -/* $OpenBSD: param.h,v 1.33 2007/09/15 10:10:37 martin Exp $ */ +/* $OpenBSD: param.h,v 1.34 2009/10/02 17:57:23 miod Exp $ */ /* $NetBSD: param.h,v 1.30 2000/06/09 16:03:04 thorpej Exp $ */ /* @@ -74,7 +74,7 @@ #define PAGE_SIZE (1 << PAGE_SHIFT) #define PAGE_MASK (PAGE_SIZE - 1) -#define KERNBASE 0xfffffc0000230000 /* start of kernel virtual */ +#define KERNBASE 0xfffffc0000580000 /* start of kernel virtual */ #define DEV_BSHIFT 9 /* log2(DEV_BSIZE) */ #define DEV_BSIZE (1 << DEV_BSHIFT) |