From dd853a397350c0eecf3b47871c18b9a33a759cde Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 3 Dec 2010 09:56:48 +0000 Subject: 2010-12-03 Sebastian Huber * include/lcd.h, misc/lcd.c: New files. * misc/io.c, include/io.h: Documentation, bug fixes, more configurations. * include/lpc24xx.h: Added DAC and I2S. * Makefile.am, bsp_specs, preinstall.am, startup/bspstarthooks.c, startup/linkcmds.lpc2362, startup/linkcmds.lpc23xx_tli800, startup/linkcmds.lpc24xx_ea, startup/linkcmds.lpc24xx_ncs_ram, startup/linkcmds.lpc24xx_ncs_rom_ext, startup/linkcmds.lpc24xx_ncs_rom_int: Update due to linker command file changes. --- .../lib/libbsp/arm/lpc24xx/startup/bspstarthooks.c | 35 +++++++++++++--------- .../libbsp/arm/lpc24xx/startup/linkcmds.lpc2362 | 12 ++++---- .../arm/lpc24xx/startup/linkcmds.lpc23xx_tli800 | 16 +++++----- .../libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea | 8 ++--- .../arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram | 8 ++--- .../lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext | 2 +- .../lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int | 12 ++++---- 7 files changed, 50 insertions(+), 43 deletions(-) (limited to 'c/src/lib/libbsp/arm/lpc24xx/startup') diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/bspstarthooks.c b/c/src/lib/libbsp/arm/lpc24xx/startup/bspstarthooks.c index d5332e6e82..6a3e967732 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/bspstarthooks.c +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/bspstarthooks.c @@ -31,7 +31,7 @@ #endif #ifdef LPC24XX_EMC_MICRON - static void BSP_START_SECTION lpc24xx_ram_test_32(void) + static void BSP_START_TEXT_SECTION lpc24xx_ram_test_32(void) { #ifdef LPC24XX_EMC_TEST int *begin = (int *) 0xa0000000; @@ -55,7 +55,7 @@ #endif } - static void BSP_START_SECTION lpc24xx_cpu_delay( + static void BSP_START_TEXT_SECTION lpc24xx_cpu_delay( unsigned ticks ) { @@ -73,7 +73,7 @@ /** * @brief EMC initialization hook 0. */ -static void BSP_START_SECTION lpc24xx_init_emc_0(void) +static void BSP_START_TEXT_SECTION lpc24xx_init_emc_0(void) { #ifdef LPC24XX_EMC_NUMONYX /* @@ -137,7 +137,7 @@ static void BSP_START_SECTION lpc24xx_init_emc_0(void) /** * @brief EMC initialization hook 1. */ -static void BSP_START_SECTION lpc24xx_init_emc_1(void) +static void BSP_START_TEXT_SECTION lpc24xx_init_emc_1(void) { #ifdef LPC24XX_EMC_INIT /* Use normal memory map */ @@ -242,7 +242,7 @@ static void BSP_START_SECTION lpc24xx_init_emc_1(void) #endif } -static void BSP_START_SECTION lpc24xx_pll_config( +static void BSP_START_TEXT_SECTION lpc24xx_pll_config( uint32_t val ) { @@ -265,7 +265,7 @@ static void BSP_START_SECTION lpc24xx_pll_config( * @param cclksel Selects the divide value for creating the CPU clock (CCLK) * from the PLL output. */ -static void BSP_START_SECTION lpc24xx_set_pll( +static void BSP_START_TEXT_SECTION lpc24xx_set_pll( unsigned clksrc, unsigned nsel, unsigned msel, @@ -321,7 +321,7 @@ static void BSP_START_SECTION lpc24xx_set_pll( lpc24xx_pll_config(PLLCON_PLLE | PLLCON_PLLC); } -static void BSP_START_SECTION lpc24xx_init_pll(void) +static void BSP_START_TEXT_SECTION lpc24xx_init_pll(void) { /* Enable main oscillator */ if ((SCS & 0x40) == 0) { @@ -341,7 +341,7 @@ static void BSP_START_SECTION lpc24xx_init_pll(void) #endif } -static void BSP_START_SECTION lpc24xx_clear_bss(void) +static void BSP_START_TEXT_SECTION lpc24xx_clear_bss(void) { const int *end = (const int *) bsp_section_bss_end; int *out = (int *) bsp_section_bss_begin; @@ -353,7 +353,7 @@ static void BSP_START_SECTION lpc24xx_clear_bss(void) } } -void BSP_START_SECTION bsp_start_hook_0(void) +void BSP_START_TEXT_SECTION bsp_start_hook_0(void) { /* Initialize PLL */ lpc24xx_init_pll(); @@ -362,7 +362,7 @@ void BSP_START_SECTION bsp_start_hook_0(void) lpc24xx_init_emc_0(); } -void BSP_START_SECTION bsp_start_hook_1(void) +void BSP_START_TEXT_SECTION bsp_start_hook_1(void) { /* Re-map interrupt vectors to internal RAM */ MEMMAP = SET_MEMMAP_MAP(MEMMAP, 2); @@ -442,11 +442,18 @@ void BSP_START_SECTION bsp_start_hook_1(void) (size_t) bsp_section_data_size ); - /* Copy .fast section */ + /* Copy .fast_text section */ bsp_start_memcpy( - (int *) bsp_section_fast_begin, - (const int *) bsp_section_fast_load_begin, - (size_t) bsp_section_fast_size + (int *) bsp_section_fast_text_begin, + (const int *) bsp_section_fast_text_load_begin, + (size_t) bsp_section_fast_text_size + ); + + /* Copy .fast_data section */ + bsp_start_memcpy( + (int *) bsp_section_fast_data_begin, + (const int *) bsp_section_fast_data_load_begin, + (size_t) bsp_section_fast_data_size ); /* Clear .bss section */ diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2362 b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2362 index c323f799e5..eff54e9f74 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2362 +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2362 @@ -35,11 +35,11 @@ */ MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 32k - RAM_USB (AIW) : ORIGIN = 0x7fd00000, LENGTH = 8k - RAM_ETH (AIW) : ORIGIN = 0x7fe00000, LENGTH = 16k - ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 128k - NIRVANA : ORIGIN = 0, LENGTH = 0 + RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 32k + RAM_USB (AIW) : ORIGIN = 0x7fd00000, LENGTH = 8k + RAM_ETH (AIW) : ORIGIN = 0x7fe00000, LENGTH = 16k + ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 128k + NIRVANA : ORIGIN = 0, LENGTH = 0 } REGION_ALIAS ("REGION_START", ROM_INT); @@ -64,4 +64,4 @@ lpc24xx_region_heap_1_begin = ORIGIN (RAM_USB); lpc24xx_region_heap_1_size = LENGTH (RAM_USB); lpc24xx_region_heap_1_end = lpc24xx_region_heap_1_begin + lpc24xx_region_heap_1_size; -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc23xx_tli800 b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc23xx_tli800 index d0d97d3d2a..f0cc1a6321 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc23xx_tli800 +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc23xx_tli800 @@ -37,13 +37,13 @@ */ MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 32k - RAM_USB (AIW) : ORIGIN = 0x7fd00000, LENGTH = 8k - RAM_ETH (AIW) : ORIGIN = 0x7fe00000, LENGTH = 16k - ROM_BOOT (RX) : ORIGIN = 0x00000000, LENGTH = 4k - ROM_CFG (RX) : ORIGIN = 0x00001000, LENGTH = 4k - ROM_INT (RX) : ORIGIN = 0x00002000, LENGTH = 120k - NIRVANA : ORIGIN = 0, LENGTH = 0 + RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 32k + RAM_USB (AIW) : ORIGIN = 0x7fd00000, LENGTH = 8k + RAM_ETH (AIW) : ORIGIN = 0x7fe00000, LENGTH = 16k + ROM_BOOT (RX) : ORIGIN = 0x00000000, LENGTH = 4k + ROM_CFG (RX) : ORIGIN = 0x00001000, LENGTH = 4k + ROM_INT (RX) : ORIGIN = 0x00002000, LENGTH = 120k + NIRVANA : ORIGIN = 0, LENGTH = 0 } REGION_ALIAS ("REGION_START", ROM_BOOT); @@ -68,4 +68,4 @@ lpc24xx_region_heap_1_begin = ORIGIN (RAM_USB); lpc24xx_region_heap_1_size = LENGTH (RAM_USB); lpc24xx_region_heap_1_end = lpc24xx_region_heap_1_begin + lpc24xx_region_heap_1_size; -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea index afad88d747..6b3be532cf 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea @@ -34,9 +34,9 @@ */ MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k - RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 32M - NIRVANA : ORIGIN = 0, LENGTH = 0 + 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); @@ -53,4 +53,4 @@ REGION_ALIAS ("REGION_BSS", RAM_EXT); REGION_ALIAS ("REGION_WORK", RAM_EXT); REGION_ALIAS ("REGION_STACK", RAM_INT); -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 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 index c3f908b907..714642768a 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram @@ -34,9 +34,9 @@ */ MEMORY { - RAM_INT (AIW) : ORIGIN = 0x40000000, LENGTH = 64k - RAM_EXT (AIW) : ORIGIN = 0xa0000000, LENGTH = 8M - NIRVANA : ORIGIN = 0, LENGTH = 0 + 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); @@ -53,4 +53,4 @@ REGION_ALIAS ("REGION_BSS", RAM_EXT); REGION_ALIAS ("REGION_WORK", RAM_EXT); REGION_ALIAS ("REGION_STACK", RAM_INT); -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 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 index d35d8cd10d..5a66b6a579 100644 --- 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 @@ -57,4 +57,4 @@ REGION_ALIAS ("REGION_BSS", RAM_EXT); REGION_ALIAS ("REGION_WORK", RAM_EXT); REGION_ALIAS ("REGION_STACK", RAM_INT); -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 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 index 044131ba30..efe50f8f0e 100644 --- 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 @@ -36,11 +36,11 @@ 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 + 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); @@ -57,4 +57,4 @@ REGION_ALIAS ("REGION_BSS", RAM_EXT); REGION_ALIAS ("REGION_WORK", RAM_EXT); REGION_ALIAS ("REGION_STACK", RAM_INT); -INCLUDE linkcmds.base +INCLUDE linkcmds.armv4 -- cgit v1.2.3