From 2c4d98748c365e26285bdc4620d42b43e0b09be8 Mon Sep 17 00:00:00 2001 From: Thomas Doerfler Date: Mon, 5 Oct 2009 10:33:31 +0000 Subject: renamed lpc24xx BSPs, reorganized linkcmds --- c/src/lib/libbsp/arm/lpc24xx/ChangeLog | 10 ++++ c/src/lib/libbsp/arm/lpc24xx/Makefile.am | 8 +-- c/src/lib/libbsp/arm/lpc24xx/README | 6 +-- c/src/lib/libbsp/arm/lpc24xx/configure.ac | 32 ++++++------ c/src/lib/libbsp/arm/lpc24xx/misc/io.c | 10 ++-- c/src/lib/libbsp/arm/lpc24xx/preinstall.am | 26 ++++++---- c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds | 35 +------------ .../libbsp/arm/lpc24xx/startup/linkcmds.lpc2478 | 55 -------------------- .../arm/lpc24xx/startup/linkcmds.lpc2478_ncs | 56 -------------------- .../arm/lpc24xx/startup/linkcmds.lpc2478_ncs_ram | 55 -------------------- .../libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea | 56 ++++++++++++++++++++ .../arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram | 56 ++++++++++++++++++++ .../lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext | 60 ++++++++++++++++++++++ .../lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int | 60 ++++++++++++++++++++++ 14 files changed, 289 insertions(+), 236 deletions(-) delete mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478 delete mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs delete mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs_ram create mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea create mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram create mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext create mode 100644 c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int (limited to 'c') diff --git a/c/src/lib/libbsp/arm/lpc24xx/ChangeLog b/c/src/lib/libbsp/arm/lpc24xx/ChangeLog index 26bb79511f..aa9d157acb 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/ChangeLog +++ b/c/src/lib/libbsp/arm/lpc24xx/ChangeLog @@ -1,3 +1,13 @@ +2009-10-04 Sebastian Huber + + * startup/linkcmds.lpc2478, startup/linkcmds.lpc2478_ncs, + startup/linkcmds.lpc2478_ncs_ram: Removed files. + * startup/linkcmds.lpc24xx_ea, startup/linkcmds.lpc24xx_ncs_ram, + startup/linkcmds.lpc24xx_ncs_rom_ext, + startup/linkcmds.lpc24xx_ncs_rom_int: New files. + * Makefile.am, README, configure.ac, preinstall.am, misc/io.c, + startup/linkcmds: Changes throughout. + 2009-09-21 Thomas Doerfler * startup/bspstarthooks.c, misc/dma-copy.c, misc/timer.c: Add diff --git a/c/src/lib/libbsp/arm/lpc24xx/Makefile.am b/c/src/lib/libbsp/arm/lpc24xx/Makefile.am index c2fbfff94c..6a864dfa1a 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/Makefile.am +++ b/c/src/lib/libbsp/arm/lpc24xx/Makefile.am @@ -56,9 +56,11 @@ libbspstart_a_SOURCES = ../shared/start/start.S project_lib_DATA = start.$(OBJEXT) dist_project_lib_DATA += ../shared/startup/linkcmds.base \ - startup/linkcmds.lpc2478 \ - startup/linkcmds.lpc2478_ncs \ - startup/linkcmds.lpc2478_ncs_ram + startup/linkcmds \ + startup/linkcmds.lpc24xx_ea \ + startup/linkcmds.lpc24xx_ncs_rom_int \ + startup/linkcmds.lpc24xx_ncs_rom_ext \ + startup/linkcmds.lpc24xx_ncs_ram ############################################################################### # LibBSP # diff --git a/c/src/lib/libbsp/arm/lpc24xx/README b/c/src/lib/libbsp/arm/lpc24xx/README index aec3a9c3be..9adfec7f59 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/README +++ b/c/src/lib/libbsp/arm/lpc24xx/README @@ -2,8 +2,6 @@ # $Id$ # -Note: A Binutils version with REGION_ALIAS feature is required to link the BSP. - Development Board: QVGA Base Board from Embedded Artists http://www.embeddedartists.com/products/uclinux/oem_lpc2478.php @@ -13,7 +11,7 @@ Drivers: o Console o Clock o RTC - o SSP (SPI mode): This driver is in active development. Use with care. + o SSP (SPI mode) o Network o I2C @@ -41,7 +39,7 @@ Howto setup QVGA Base Board? Application Board: NCS (Nurse Control Station) Board: NextGenNCS - Processor: NXP LPC2478 + Processor: NXP LPC2478 or LPC2470 SDRAM: 8MByte, 16 bit wide Ext. Flash: 1MByte, 16 bit wide Console: UART, 115200 Baud diff --git a/c/src/lib/libbsp/arm/lpc24xx/configure.ac b/c/src/lib/libbsp/arm/lpc24xx/configure.ac index 3288207c85..007054d6e8 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/configure.ac +++ b/c/src/lib/libbsp/arm/lpc24xx/configure.ac @@ -2,9 +2,7 @@ # # @file # -# @ingroup mpc55xx_config -# -# @brief Configure script of LibBSP for the LPC247X boards. +# @brief Configure script of LibBSP for the LPC24XX boards. # AC_PREREQ(2.59) @@ -35,16 +33,17 @@ RTEMS_BSPOPTS_HELP([LPC24XX_CCLK],[CPU clock in Hz]) RTEMS_BSPOPTS_SET([LPC24XX_UART_BAUD],[*],[115200U]) RTEMS_BSPOPTS_HELP([LPC24XX_UART_BAUD],[baud for UARTs]) -RTEMS_BSPOPTS_SET([LPC24XX_HAS_UBOOT],[lpc2478],[1]) -RTEMS_BSPOPTS_SET([LPC24XX_HAS_UBOOT],[lpc2478_ncs_ram],[1]) -RTEMS_BSPOPTS_HELP([LPC24XX_HAS_UBOOT],[enable U-Boot startup]) - -RTEMS_BSPOPTS_SET([LPC24XX_ETHERNET_RMII],[lpc2478_ncs],[1]) -RTEMS_BSPOPTS_SET([LPC24XX_ETHERNET_RMII],[lpc2478_ncs_ram],[1]) +RTEMS_BSPOPTS_SET([LPC24XX_ETHERNET_RMII],[lpc24xx_ncs_*],[1]) RTEMS_BSPOPTS_HELP([LPC24XX_ETHERNET_RMII],[enable RMII for Ethernet]) -RTEMS_BSPOPTS_SET([LPC24XX_EMC_MICRON],[lpc2478_ncs],[1]) -RTEMS_BSPOPTS_HELP([LPC24XX_EMC_MICRON],[use Micron configuration for EMC]) +RTEMS_BSPOPTS_SET([LPC24XX_EMC_MICRON],[lpc24xx_ncs_rom_*],[1]) +RTEMS_BSPOPTS_HELP([LPC24XX_EMC_MICRON],[enable Micron configuration for EMC]) + +RTEMS_BSPOPTS_SET([LPC24XX_EMC_NUMONYX],[lpc24xx_ncs_rom_*],[1]) +RTEMS_BSPOPTS_HELP([LPC24XX_EMC_NUMONYX],[enable Numonyx configuration for EMC]) + +RTEMS_BSPOPTS_SET([LPC24XX_EMC_TEST],[*],[]) +RTEMS_BSPOPTS_HELP([LPC24XX_EMC_TEST],[enable tests for EMC]) RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_CONSOLE],[*],[0]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_CONSOLE],[configuration for console (UART 0)]) @@ -52,21 +51,24 @@ RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_CONSOLE],[configuration for console (UART 0)] RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_UART_1],[*],[]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_UART_1],[configuration for UART 1]) -RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_UART_2],[*],[]) +RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_UART_2],[lpc24xx_ncs_*],[0]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_UART_2],[configuration for UART 2]) -RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_UART_3],[*],[]) +RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_UART_3],[lpc24xx_ncs_*],[0]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_UART_3],[configuration for UART 3]) -RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_I2C_0],[lpc2478_ncs_ram],[0]) +RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_I2C_0],[lpc24xx_ncs_*],[0]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_I2C_0],[configuration for I2C 0]) -RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_I2C_1],[*],[]) +RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_I2C_1],[lpc24xx_ncs_*],[1]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_I2C_1],[configuration for I2C 1]) RTEMS_BSPOPTS_SET([LPC24XX_CONFIG_I2C_2],[*],[]) RTEMS_BSPOPTS_HELP([LPC24XX_CONFIG_I2C_2],[configuration for I2C 2]) +RTEMS_BSPOPTS_SET([BSP_START_RESET_VECTOR],[lpc24xx_ncs_rom_ext],[0x80000040]) +RTEMS_BSPOPTS_HELP([BSP_START_RESET_VECTOR],[reset vector address for BSP start]) + RTEMS_BSP_CLEANUP_OPTIONS(0, 0) AC_CONFIG_FILES([Makefile]) diff --git a/c/src/lib/libbsp/arm/lpc24xx/misc/io.c b/c/src/lib/libbsp/arm/lpc24xx/misc/io.c index 85ea380bcc..2ca27fc509 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/misc/io.c +++ b/c/src/lib/libbsp/arm/lpc24xx/misc/io.c @@ -60,13 +60,13 @@ typedef void (*lpc24xx_io_iterate_routine)(unsigned /* pin */, unsigned /* funct static const lpc24xx_io_entry lpc24xx_io_config_table [] = { /* UART */ LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 0, 0, 0, 2, 0, 3, LPC24XX_IO_ALTERNATE_0), - LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 0, 0, 15, 0, 16, LPC24XX_IO_ALTERNATE_1), - LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 1, 2, 0, 2, 1, LPC24XX_IO_ALTERNATE_2), - LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 2, 3, 16, 3, 17, LPC24XX_IO_ALTERNATE_1), - LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 2, 0, 0, 10, 0, 11, LPC24XX_IO_ALTERNATE_1), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 0, 0, 15, 0, 16, LPC24XX_IO_ALTERNATE_0), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 1, 2, 0, 2, 1, LPC24XX_IO_ALTERNATE_1), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 1, 2, 3, 16, 3, 17, LPC24XX_IO_ALTERNATE_2), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 2, 0, 0, 10, 0, 11, LPC24XX_IO_ALTERNATE_0), LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 2, 1, 2, 8, 2, 9, LPC24XX_IO_ALTERNATE_1), LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 2, 2, 4, 22, 4, 23, LPC24XX_IO_ALTERNATE_1), - LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 3, 0, 0, 0, 0, 1, LPC24XX_IO_ALTERNATE_2), + LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 3, 0, 0, 0, 0, 1, LPC24XX_IO_ALTERNATE_1), LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 3, 1, 0, 25, 0, 26, LPC24XX_IO_ALTERNATE_2), LPC24XX_IO_ENTRY(LPC24XX_MODULE_UART, 3, 2, 4, 28, 4, 29, LPC24XX_IO_ALTERNATE_2), diff --git a/c/src/lib/libbsp/arm/lpc24xx/preinstall.am b/c/src/lib/libbsp/arm/lpc24xx/preinstall.am index d06abff813..f30dd34f48 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/preinstall.am +++ b/c/src/lib/libbsp/arm/lpc24xx/preinstall.am @@ -125,15 +125,23 @@ $(PROJECT_LIB)/linkcmds.base: ../shared/startup/linkcmds.base $(PROJECT_LIB)/$(d $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.base PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.base -$(PROJECT_LIB)/linkcmds.lpc2478: startup/linkcmds.lpc2478 $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc2478 -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc2478 +$(PROJECT_LIB)/linkcmds: startup/linkcmds $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds +PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds -$(PROJECT_LIB)/linkcmds.lpc2478_ncs: startup/linkcmds.lpc2478_ncs $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc2478_ncs -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc2478_ncs +$(PROJECT_LIB)/linkcmds.lpc24xx_ea: startup/linkcmds.lpc24xx_ea $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ea +PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ea -$(PROJECT_LIB)/linkcmds.lpc2478_ncs_ram: startup/linkcmds.lpc2478_ncs_ram $(PROJECT_LIB)/$(dirstamp) - $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc2478_ncs_ram -PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc2478_ncs_ram +$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int: startup/linkcmds.lpc24xx_ncs_rom_int $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int +PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int + +$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext: startup/linkcmds.lpc24xx_ncs_rom_ext $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext +PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext + +$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram: startup/linkcmds.lpc24xx_ncs_ram $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram +PREINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds index 165c9bca22..cab8310661 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds @@ -1,34 +1,3 @@ -/** - * @file - * - * LPC2478 (QVGA Base Board from Embedded Artists). - */ - -/* - * WARNING: This is likely not what you want. You need Binutils with the - * REGION_ALIAS feature and the version in the comment below. This is only to - * provide linkable tests. - */ - -MEMORY { - REGION_START (AIW) : ORIGIN = 0x100000, LENGTH = 0x100000 - REGION_VECTOR (AIW) : ORIGIN = 0x200000, LENGTH = 0x100000 - REGION_TEXT (AIW) : ORIGIN = 0x300000, LENGTH = 0x100000 - REGION_TEXT_LOAD (AIW) : ORIGIN = 0x400000, LENGTH = 0x100000 - REGION_RODATA (AIW) : ORIGIN = 0x500000, LENGTH = 0x100000 - REGION_RODATA_LOAD (AIW) : ORIGIN = 0x600000, LENGTH = 0x100000 - REGION_DATA (AIW) : ORIGIN = 0x700000, LENGTH = 0x100000 - REGION_DATA_LOAD (AIW) : ORIGIN = 0x800000, LENGTH = 0x100000 - REGION_FAST (AIW) : ORIGIN = 0x900000, LENGTH = 0x100000 - REGION_FAST_LOAD (AIW) : ORIGIN = 0xa00000, LENGTH = 0x100000 - REGION_BSS (AIW) : ORIGIN = 0xb00000, LENGTH = 0x100000 - REGION_WORK (AIW) : ORIGIN = 0xc00000, LENGTH = 0x100000 - REGION_STACK (AIW) : ORIGIN = 0xd00000, LENGTH = 0x100000 - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -/* - MEMORY { RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 32M @@ -44,11 +13,9 @@ REGION_ALIAS ("REGION_RODATA_LOAD", RAM_EXT); REGION_ALIAS ("REGION_DATA", RAM_EXT); REGION_ALIAS ("REGION_DATA_LOAD", RAM_EXT); REGION_ALIAS ("REGION_FAST", RAM_INT); -REGION_ALIAS ("REGION_FAST_LOAD", RAM_INT); +REGION_ALIAS ("REGION_FAST_LOAD", RAM_EXT); REGION_ALIAS ("REGION_BSS", RAM_EXT); REGION_ALIAS ("REGION_WORK", RAM_EXT); REGION_ALIAS ("REGION_STACK", RAM_INT); -*/ - INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478 b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478 deleted file mode 100644 index 568c29ecb5..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478 +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @file - * - * LPC2478 (QVGA Base Board from Embedded Artists). - */ - -/* - * WARNING: This is likely not what you want. You need Binutils with the - * REGION_ALIAS feature and the version in the comment below. This is only to - * provide linkable tests. - */ - -MEMORY { - REGION_START (AIW) : ORIGIN = 0x100000, LENGTH = 0x100000 - REGION_VECTOR (AIW) : ORIGIN = 0x200000, LENGTH = 0x100000 - REGION_TEXT (AIW) : ORIGIN = 0x300000, LENGTH = 0x100000 - REGION_TEXT_LOAD (AIW) : ORIGIN = 0x400000, LENGTH = 0x100000 - REGION_RODATA (AIW) : ORIGIN = 0x500000, LENGTH = 0x100000 - REGION_RODATA_LOAD (AIW) : ORIGIN = 0x600000, LENGTH = 0x100000 - REGION_DATA (AIW) : ORIGIN = 0x700000, LENGTH = 0x100000 - REGION_DATA_LOAD (AIW) : ORIGIN = 0x800000, LENGTH = 0x100000 - REGION_FAST (AIW) : ORIGIN = 0x900000, LENGTH = 0x100000 - REGION_FAST_LOAD (AIW) : ORIGIN = 0xa00000, LENGTH = 0x100000 - REGION_BSS (AIW) : ORIGIN = 0xb00000, LENGTH = 0x100000 - REGION_WORK (AIW) : ORIGIN = 0xc00000, LENGTH = 0x100000 - REGION_STACK (AIW) : ORIGIN = 0xd00000, LENGTH = 0x100000 - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -/* - -MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k - RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 32M - ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 512k - 8k - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -REGION_ALIAS ("REGION_START", RAM_EXT); -REGION_ALIAS ("REGION_VECTOR", RAM_INT); -REGION_ALIAS ("REGION_TEXT", RAM_EXT); -REGION_ALIAS ("REGION_TEXT_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_RODATA", RAM_EXT); -REGION_ALIAS ("REGION_RODATA_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_DATA", RAM_EXT); -REGION_ALIAS ("REGION_DATA_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_FAST", RAM_INT); -REGION_ALIAS ("REGION_FAST_LOAD", RAM_INT); -REGION_ALIAS ("REGION_BSS", RAM_EXT); -REGION_ALIAS ("REGION_WORK", RAM_EXT); -REGION_ALIAS ("REGION_STACK", RAM_INT); - -*/ - -INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs deleted file mode 100644 index 41b7a3c41f..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs +++ /dev/null @@ -1,56 +0,0 @@ -/** - * @file - * - * LPC2478 (NCS, bootloader configuration). - */ - -/* - * WARNING: This is likely not what you want. You need Binutils with the - * REGION_ALIAS feature and the version in the comment below. This is only to - * provide linkable tests. - */ - -MEMORY { - REGION_START (AIW) : ORIGIN = 0x100000, LENGTH = 0x100000 - REGION_VECTOR (AIW) : ORIGIN = 0x200000, LENGTH = 0x100000 - REGION_TEXT (AIW) : ORIGIN = 0x300000, LENGTH = 0x100000 - REGION_TEXT_LOAD (AIW) : ORIGIN = 0x400000, LENGTH = 0x100000 - REGION_RODATA (AIW) : ORIGIN = 0x500000, LENGTH = 0x100000 - REGION_RODATA_LOAD (AIW) : ORIGIN = 0x600000, LENGTH = 0x100000 - REGION_DATA (AIW) : ORIGIN = 0x700000, LENGTH = 0x100000 - REGION_DATA_LOAD (AIW) : ORIGIN = 0x800000, LENGTH = 0x100000 - REGION_FAST (AIW) : ORIGIN = 0x900000, LENGTH = 0x100000 - REGION_FAST_LOAD (AIW) : ORIGIN = 0xa00000, LENGTH = 0x100000 - REGION_BSS (AIW) : ORIGIN = 0xb00000, LENGTH = 0x100000 - REGION_WORK (AIW) : ORIGIN = 0xc00000, LENGTH = 0x100000 - REGION_STACK (AIW) : ORIGIN = 0xd00000, LENGTH = 0x100000 - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -/* - -MEMORY { - RAM_VEC (AIW) : ORIGIN = 0x40000000, LENGTH = 32k - RAM_INT (AIW) : ORIGIN = 0x40008000, LENGTH = 32k - RAM_EXT (AIW) : ORIGIN = 0xa0c00000, LENGTH = 4M - ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 512k - 8k - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -REGION_ALIAS ("REGION_START", ROM_INT); -REGION_ALIAS ("REGION_VECTOR", RAM_VEC); -REGION_ALIAS ("REGION_TEXT", ROM_INT); -REGION_ALIAS ("REGION_TEXT_LOAD", ROM_INT); -REGION_ALIAS ("REGION_RODATA", ROM_INT); -REGION_ALIAS ("REGION_RODATA_LOAD", ROM_INT); -REGION_ALIAS ("REGION_DATA", RAM_EXT); -REGION_ALIAS ("REGION_DATA_LOAD", ROM_INT); -REGION_ALIAS ("REGION_FAST", RAM_INT); -REGION_ALIAS ("REGION_FAST_LOAD", RAM_INT); -REGION_ALIAS ("REGION_BSS", RAM_EXT); -REGION_ALIAS ("REGION_WORK", RAM_EXT); -REGION_ALIAS ("REGION_STACK", RAM_INT); - -*/ - -INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs_ram b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs_ram deleted file mode 100644 index 31351b23d4..0000000000 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2478_ncs_ram +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @file - * - * LPC2478 (NCS, code and data in external RAM). - */ - -/* - * WARNING: This is likely not what you want. You need Binutils with the - * REGION_ALIAS feature and the version in the comment below. This is only to - * provide linkable tests. - */ - -MEMORY { - REGION_START (AIW) : ORIGIN = 0x100000, LENGTH = 0x100000 - REGION_VECTOR (AIW) : ORIGIN = 0x200000, LENGTH = 0x100000 - REGION_TEXT (AIW) : ORIGIN = 0x300000, LENGTH = 0x100000 - REGION_TEXT_LOAD (AIW) : ORIGIN = 0x400000, LENGTH = 0x100000 - REGION_RODATA (AIW) : ORIGIN = 0x500000, LENGTH = 0x100000 - REGION_RODATA_LOAD (AIW) : ORIGIN = 0x600000, LENGTH = 0x100000 - REGION_DATA (AIW) : ORIGIN = 0x700000, LENGTH = 0x100000 - REGION_DATA_LOAD (AIW) : ORIGIN = 0x800000, LENGTH = 0x100000 - REGION_FAST (AIW) : ORIGIN = 0x900000, LENGTH = 0x100000 - REGION_FAST_LOAD (AIW) : ORIGIN = 0xa00000, LENGTH = 0x100000 - REGION_BSS (AIW) : ORIGIN = 0xb00000, LENGTH = 0x100000 - REGION_WORK (AIW) : ORIGIN = 0xc00000, LENGTH = 0x100000 - REGION_STACK (AIW) : ORIGIN = 0xd00000, LENGTH = 0x100000 - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -/* - -MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k - RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 16M - ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 512k - 8k - NIRVANA : ORIGIN = 0, LENGTH = 0 -} - -REGION_ALIAS ("REGION_START", RAM_EXT); -REGION_ALIAS ("REGION_VECTOR", RAM_INT); -REGION_ALIAS ("REGION_TEXT", RAM_EXT); -REGION_ALIAS ("REGION_TEXT_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_RODATA", RAM_EXT); -REGION_ALIAS ("REGION_RODATA_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_DATA", RAM_EXT); -REGION_ALIAS ("REGION_DATA_LOAD", RAM_EXT); -REGION_ALIAS ("REGION_FAST", RAM_INT); -REGION_ALIAS ("REGION_FAST_LOAD", RAM_INT); -REGION_ALIAS ("REGION_BSS", RAM_EXT); -REGION_ALIAS ("REGION_WORK", RAM_EXT); -REGION_ALIAS ("REGION_STACK", RAM_INT); - -*/ - -INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea new file mode 100644 index 0000000000..ca6b52a4fe --- /dev/null +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea @@ -0,0 +1,56 @@ +/** + * @file + * + * @ingroup lpc24xx_linker_ea + * + * @brief Memory map. + */ + +/** + * @defgroup lpc24xx_linker_ea QVGA Base Board Memory Map + * + * @ingroup bsp_linker + * + * @brief QVGA Base Board from Embedded Artists (LPC2478) memory map. + * + * + * + * + * + *
Region NameRegion BeginRegion Size
RAM_INT0x4000000064k
RAM_EXT0xa000000032M
+ * + * + * + * + * + * + * + * + * + * + * + * + *
Section NameSection Runtime RegionSection Load Region
.startRAM_EXTRAM_EXT
.vectorRAM_INT
.textRAM_EXTRAM_EXT
.rodataRAM_EXTRAM_EXT
.dataRAM_EXTRAM_EXT
.fastRAM_INTRAM_EXT
.bssRAM_EXT
.workRAM_EXT
.stackRAM_INT
+ */ + +MEMORY { + RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k + RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 32M + NIRVANA : ORIGIN = 0, LENGTH = 0 +} + +REGION_ALIAS ("REGION_START", RAM_EXT); +REGION_ALIAS ("REGION_VECTOR", RAM_INT); +REGION_ALIAS ("REGION_TEXT", RAM_EXT); +REGION_ALIAS ("REGION_TEXT_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_RODATA", RAM_EXT); +REGION_ALIAS ("REGION_RODATA_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_DATA", RAM_EXT); +REGION_ALIAS ("REGION_DATA_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_FAST", RAM_INT); +REGION_ALIAS ("REGION_FAST_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_BSS", RAM_EXT); +REGION_ALIAS ("REGION_WORK", RAM_EXT); +REGION_ALIAS ("REGION_STACK", RAM_INT); + +INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram new file mode 100644 index 0000000000..5322c7a725 --- /dev/null +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram @@ -0,0 +1,56 @@ +/** + * @file + * + * @ingroup lpc24xx_linker_ncs_ram + * + * @brief Memory map. + */ + +/** + * @defgroup lpc24xx_linker_ncs_ram NCS Application Memory Map + * + * @ingroup bsp_linker + * + * @brief NCS application memory map. + * + * + * + * + * + *
Region NameRegion BeginRegion Size
RAM_INT0x4000000064k
RAM_EXT0xa00000008M
+ * + * + * + * + * + * + * + * + * + * + * + * + *
Section NameSection Runtime RegionSection Load Region
.startRAM_EXTRAM_EXT
.vectorRAM_INT
.textRAM_EXTRAM_EXT
.rodataRAM_EXTRAM_EXT
.dataRAM_EXTRAM_EXT
.fastRAM_INTRAM_EXT
.bssRAM_EXT
.workRAM_EXT
.stackRAM_INT
+ */ + +MEMORY { + RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k + RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 8M + NIRVANA : ORIGIN = 0, LENGTH = 0 +} + +REGION_ALIAS ("REGION_START", RAM_EXT); +REGION_ALIAS ("REGION_VECTOR", RAM_INT); +REGION_ALIAS ("REGION_TEXT", RAM_EXT); +REGION_ALIAS ("REGION_TEXT_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_RODATA", RAM_EXT); +REGION_ALIAS ("REGION_RODATA_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_DATA", RAM_EXT); +REGION_ALIAS ("REGION_DATA_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_FAST", RAM_INT); +REGION_ALIAS ("REGION_FAST_LOAD", RAM_EXT); +REGION_ALIAS ("REGION_BSS", RAM_EXT); +REGION_ALIAS ("REGION_WORK", RAM_EXT); +REGION_ALIAS ("REGION_STACK", RAM_INT); + +INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext new file mode 100644 index 0000000000..f4518090d4 --- /dev/null +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext @@ -0,0 +1,60 @@ +/** + * @file + * + * @ingroup lpc24xx_linker_ncs_rom_ext + * + * @brief Memory map. + */ + +/** + * @defgroup lpc24xx_linker_ncs_rom_ext NCS Bootloader (LPC2470) Memory Map + * + * @ingroup bsp_linker + * + * @brief NCS bootloader (LPC2470) memory map. + * + * + * + * + * + * + * + *
Region NameRegion BeginRegion Size
RAM_INT0x4000000064k
RAM_EXT0xa04000004M
ROM_BOOT0x8100000016k
ROM_EXT0x810100002M - 64k
+ * + * + * + * + * + * + * + * + * + * + * + * + *
Section NameSection Runtime RegionSection Load Region
.startROM_BOOTROM_BOOT
.vectorRAM_INT
.textRAM_EXTROM_EXT
.rodataRAM_EXTROM_EXT
.dataRAM_EXTROM_EXT
.fastRAM_INTROM_BOOT
.bssRAM_EXT
.workRAM_EXT
.stackRAM_INT
+ */ + +MEMORY { + RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k + RAM_EXT (AIW) : ORIGIN = 0xa0400000, LENGTH = 4M + ROM_BOOT (RX) : ORIGIN = 0x81000000, LENGTH = 16k + ROM_EXT (RX) : ORIGIN = 0x81010000, LENGTH = 2M - 64k + NIRVANA : ORIGIN = 0, LENGTH = 0 +} + +REGION_ALIAS ("REGION_START", ROM_BOOT); +REGION_ALIAS ("REGION_VECTOR", RAM_INT); +REGION_ALIAS ("REGION_TEXT", RAM_EXT); +REGION_ALIAS ("REGION_TEXT_LOAD", ROM_EXT); +REGION_ALIAS ("REGION_RODATA", RAM_EXT); +REGION_ALIAS ("REGION_RODATA_LOAD", ROM_EXT); +REGION_ALIAS ("REGION_DATA", RAM_EXT); +REGION_ALIAS ("REGION_DATA_LOAD", ROM_EXT); +REGION_ALIAS ("REGION_FAST", RAM_INT); +REGION_ALIAS ("REGION_FAST_LOAD", ROM_BOOT); +REGION_ALIAS ("REGION_BSS", RAM_EXT); +REGION_ALIAS ("REGION_WORK", RAM_EXT); +REGION_ALIAS ("REGION_STACK", RAM_INT); + +INCLUDE linkcmds.base diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int new file mode 100644 index 0000000000..a46145d333 --- /dev/null +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int @@ -0,0 +1,60 @@ +/** + * @file + * + * @ingroup lpc24xx_linker_ncs_rom_int + * + * @brief Memory map. + */ + +/** + * @defgroup lpc24xx_linker_ncs_rom_int NCS Bootloader (LPC2478) Memory Map + * + * @ingroup bsp_linker + * + * @brief NCS bootloader (LPC2478) memory map. + * + * + * + * + * + * + * + *
Region NameRegion BeginRegion Size
RAM_VEC0x4000000032k
RAM_INT0x4000800032k
RAM_EXT0xa04000004M
ROM_INT0x00000000512k - 8k
+ * + * + * + * + * + * + * + * + * + * + * + * + */ + + +MEMORY { + RAM_VEC (AIW) : ORIGIN = 0x40000000, LENGTH = 32k + RAM_INT (AIW) : ORIGIN = 0x40008000, LENGTH = 32k + RAM_EXT (AIW) : ORIGIN = 0xa0400000, LENGTH = 4M + ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 512k - 8k + NIRVANA : ORIGIN = 0, LENGTH = 0 +} + +REGION_ALIAS ("REGION_START", ROM_INT); +REGION_ALIAS ("REGION_VECTOR", RAM_VEC); +REGION_ALIAS ("REGION_TEXT", ROM_INT); +REGION_ALIAS ("REGION_TEXT_LOAD", ROM_INT); +REGION_ALIAS ("REGION_RODATA", ROM_INT); +REGION_ALIAS ("REGION_RODATA_LOAD", ROM_INT); +REGION_ALIAS ("REGION_DATA", RAM_EXT); +REGION_ALIAS ("REGION_DATA_LOAD", ROM_INT); +REGION_ALIAS ("REGION_FAST", RAM_INT); +REGION_ALIAS ("REGION_FAST_LOAD", ROM_INT); +REGION_ALIAS ("REGION_BSS", RAM_EXT); +REGION_ALIAS ("REGION_WORK", RAM_EXT); +REGION_ALIAS ("REGION_STACK", RAM_INT); + +INCLUDE linkcmds.base -- cgit v1.2.3
Section NameSection Runtime RegionSection Load Region
.startROM_INTROM_INT
.vectorRAM_VEC
.textROM_INTROM_INT
.rodataROM_INTROM_INT
.dataRAM_EXTROM_INT
.fastRAM_INTROM_INT
.bssRAM_EXT
.workRAM_EXT
.stackRAM_INT