Example gzboot config for the IQ80321.
This commit is contained in:
parent
b4e9977d83
commit
8345db18a3
|
@ -0,0 +1,17 @@
|
||||||
|
# $NetBSD: Makefile,v 1.1 2002/03/28 20:44:07 thorpej Exp $
|
||||||
|
|
||||||
|
S= ${.CURDIR}/../../../../..
|
||||||
|
|
||||||
|
PLATFORM= IQ80321
|
||||||
|
RELOC= 0xf0080000
|
||||||
|
MAXIMAGESIZE= 2097152 # 2M
|
||||||
|
LOADADDR= 0xa0200000
|
||||||
|
|
||||||
|
CPPFLAGS+= -DCONSPEED=115200
|
||||||
|
CPPFLAGS+= -DCONADDR=0xfe800000UL
|
||||||
|
|
||||||
|
LDSCRIPT= ${.CURDIR}/ldscript
|
||||||
|
|
||||||
|
SRCS+= ns16550.c i80321_mem.c
|
||||||
|
|
||||||
|
.include "${S}/arch/evbarm/stand/gzboot/Makefile.gzboot"
|
|
@ -0,0 +1,82 @@
|
||||||
|
/* $NetBSD: ldscript,v 1.1 2002/03/28 20:44:07 thorpej Exp $ */
|
||||||
|
|
||||||
|
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
|
||||||
|
"elf32-littlearm")
|
||||||
|
OUTPUT_ARCH(arm)
|
||||||
|
ENTRY(FLASH)
|
||||||
|
MEMORY
|
||||||
|
{
|
||||||
|
/* We will locate the .text section in flash, and will run directly
|
||||||
|
from there just long enough to relocate our .text and .data into
|
||||||
|
a small chunk of SDRAM starting at (SDRAM + 1M). */
|
||||||
|
flash : o = 0xf0080000, l = 6M
|
||||||
|
sdram : o = 0xa0100000, l = 1M /* kernel loads at 0xa0200000 */
|
||||||
|
}
|
||||||
|
SECTIONS
|
||||||
|
{
|
||||||
|
FLASH = 0xf0080000;
|
||||||
|
|
||||||
|
/* Read-only sections, merged into text segment: */
|
||||||
|
__text_store = FLASH;
|
||||||
|
.text :
|
||||||
|
AT (FLASH)
|
||||||
|
{
|
||||||
|
*(.text)
|
||||||
|
*(.text.*)
|
||||||
|
*(.stub)
|
||||||
|
*(.glue_7t) *(.glue_7)
|
||||||
|
*(.rodata) *(.rodata.*)
|
||||||
|
} > sdram =0
|
||||||
|
PROVIDE (__etext = .);
|
||||||
|
PROVIDE (_etext = .);
|
||||||
|
PROVIDE (etext = .);
|
||||||
|
__data_store = FLASH + SIZEOF(.text);
|
||||||
|
.data :
|
||||||
|
AT (FLASH + SIZEOF(.text))
|
||||||
|
{
|
||||||
|
__data_start = . ;
|
||||||
|
*(.data)
|
||||||
|
*(.data.*)
|
||||||
|
} > sdram
|
||||||
|
.sdata :
|
||||||
|
AT (FLASH + SIZEOF(.text) + SIZEOF(.data))
|
||||||
|
{
|
||||||
|
*(.sdata)
|
||||||
|
*(.sdata.*)
|
||||||
|
} > sdram
|
||||||
|
_edata = .;
|
||||||
|
PROVIDE (edata = .);
|
||||||
|
__bss_start = .;
|
||||||
|
__bss_start__ = .;
|
||||||
|
.sbss :
|
||||||
|
{
|
||||||
|
PROVIDE (__sbss_start = .);
|
||||||
|
PROVIDE (___sbss_start = .);
|
||||||
|
*(.dynsbss)
|
||||||
|
*(.sbss)
|
||||||
|
*(.sbss.*)
|
||||||
|
*(.scommon)
|
||||||
|
PROVIDE (__sbss_end = .);
|
||||||
|
PROVIDE (___sbss_end = .);
|
||||||
|
} > sdram
|
||||||
|
.bss :
|
||||||
|
{
|
||||||
|
*(.dynbss)
|
||||||
|
*(.bss)
|
||||||
|
*(.bss.*)
|
||||||
|
*(COMMON)
|
||||||
|
/* Align here to ensure that the .bss section occupies space up to
|
||||||
|
_end. Align after .bss to ensure correct alignment even if the
|
||||||
|
.bss section disappears because there are no input sections. */
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
} > sdram
|
||||||
|
. = ALIGN(32 / 8);
|
||||||
|
_end = .;
|
||||||
|
_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;
|
||||||
|
PROVIDE (end = .);
|
||||||
|
.image (FLASH + SIZEOF(.text) + SIZEOF(.data) + SIZEOF(.sdata)) :
|
||||||
|
AT (FLASH + SIZEOF(.text) + SIZEOF(.data) + SIZEOF(.sdata))
|
||||||
|
{
|
||||||
|
*(.image)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue